คำแถลงปัญหา:วิธีที่ดีที่สุดในการทดสอบว่าmintty
bash
เซสชันCygwin คือ "Run as adminstrator" คืออะไร?
ทำไมโดยเฉพาะ ปกติฉันมีmintty
เทอร์มินัลหลายเครื่องเปิดเมื่อใช้ Windows ( mintty
ไม่มีแท็บ) สิ่งที่น่าอึดอัดที่สุดคือเมื่อฉันต้องการค้นหาหน้าต่างเทอร์มินัลที่ฉันเริ่มต้นด้วยการคลิกขวาที่ "Run as administrator" เมื่อเช่นฉันต้องการเรียกใช้ping
หรือขั้นตอนแบบครั้งเดียวอื่น ๆ ฉันต้องการระบุ "run as administrator" -ness ของเซสชันเทอร์มินัลด้วยภาพ (โดยการเปลี่ยนbash
ตัวแปร shell prompt PS1
ในไฟล์เริ่มต้นของฉัน~/.bashrc
)
วิธีแก้ปัญหาที่อาจเกิดขึ้นอย่างรวดเร็ว:
- ฉันสามารถเปรียบเทียบค่าของตัวแปรสภาพแวดล้อมบางอย่าง โดยการดูอย่างรวดเร็วของการ
env
ส่งออกมีความแตกต่างค่อนข้างมาก อย่างไรก็ตามเป็นการยากที่จะบอกว่าส่วนใดที่เชื่อถือได้มากที่สุดในแง่ของการพกพาไปยังเครื่อง Windows เครื่องอื่น (อาจใช้ Windows รุ่นอื่น) id
id -Gn
แสดงกลุ่มที่แตกต่างกันโดยเฉพาะหากเรียกใช้ในฐานะผู้ดูแลระบบ ในเครื่อง Windows 7 ของฉันฉันมีAdministrators
และroot
เพิ่มกลุ่มในรายการ อีกครั้งฉันไม่แน่ใจว่ามันพกพาได้หรือไม่- ฉันสามารถลองเขียนไฟล์ไปยังตำแหน่งที่อาจล้มเหลวในฐานะผู้ใช้ปกติ แต่ฉันไม่ต้องการที่จะเขียนไฟล์ใด ๆ ไปยังสถานที่แปลก ๆ ซึ่งสิ่งนี้อาจเกิดขึ้นได้ในบางสถานการณ์ที่อาจจะเป็นอันตราย (เช่นความล้มเหลวของสื่อเก็บข้อมูล) และสิ่งนี้ดูเหมือนว่าจะไม่ค่อยเหมาะสมกับรสนิยมของฉัน
- เรียกใช้โปรแกรม Windows บางตัวที่จะบ่งบอกสถานะการส่งคืนหรือเอาท์พุทหากคำสั่งนั้นรัน "เป็นผู้ดูแลระบบ" ส่วนที่ดีที่สุดควรมีจุดประสงค์คล้ายกับ
id(1)
คำสั่งUNIX (แต่มีอยู่ใน Windows - หรือ Cygwin แต่ไม่มีการแปลแนวคิดของระบบ Windows เป็นแนวคิดที่เลียนแบบ POSIX มากเกินไป)
ข้อเสนอแนะที่ดีกว่าหรือสง่างามมากขึ้น? บางที cygwin มีโปรแกรมอรรถประโยชน์คำสั่งสำหรับวัตถุประสงค์นี้โดยเฉพาะหรือไม่?
อัปเดต: 97% ซ้ำจาก/programming/4051883/batch-script-how-to-check-for-admin-rights/-ความแตกต่างเป็นเพียงการใช้bash
Windows แทน (IMHO แปลกและเก่า) cmd.exe
. กรุณาตรวจสอบคำตอบและข้อคิดเห็นที่นั่น
mintty
1. เรียกใช้ในฐานะผู้ดูแลระบบ 2. ใช้ไฟล์การตั้งค่าที่แตกต่างกัน การตั้งค่าและ 3. ใช้ไอคอนทางเลือก หากคุณอธิบายให้สาธารณชนทั่วไปทราบเกี่ยวกับวิธีการสร้างสิ่งนี้ฉันจะให้ upvote (เว้นแต่คุณจะตอบในคำตอบของคุณว่าไม่สามารถทำได้ภายในสคริปต์ :-)
Foo
กลุ่มผู้ใช้หากคุณต้องการ
sudo
สิ่งที่จำเป็นแม้ว่าคุณจะทำงานในฐานะผู้ใช้รูท