การใช้sh
เชลล์ (ไม่ใช่bash
) คำสั่งใดใน Linux / UNIX จะพิมพ์ไดเรกทอรีปัจจุบันของฉัน
$ *showmewhereiam*
/sys/kernel/debug
$
unix whereami
การใช้sh
เชลล์ (ไม่ใช่bash
) คำสั่งใดใน Linux / UNIX จะพิมพ์ไดเรกทอรีปัจจุบันของฉัน
$ *showmewhereiam*
/sys/kernel/debug
$
unix whereami
คำตอบ:
ลองpwd
ดู
$ pwd
/home/<username>
/dev
เป็นสิ่งที่เกี่ยวกับการพัฒนา (ซอร์สโค้ดหรืออะไรทำนองนั้น)
ในขณะที่คำตอบทั่วไปคือpwd
โปรดทราบว่าสิ่งนี้อาจให้ผลลัพธ์ที่แตกต่างกันขึ้นอยู่กับว่าคุณไปถึงไดเรกทอรีที่กำหนดหรือไม่และเส้นทางนั้นมีลิงก์สัญลักษณ์หรือไม่
ตัวอย่างเช่นถ้าคุณมีไดเรกทอรีที่เรียกว่าreal
และการเชื่อมโยงสัญลักษณ์ไปยังไดเรกทอรีที่เรียกว่าvirtual
และคุณcd
ไปยังvirtual
ไดเรกทอรีแล้วpwd
จะแสดงให้เห็นว่าชื่อไดเรกทอรีแม้ว่าไดเรกทอรีจริงที่คุณอยู่นั้นอยู่virtual
real
ในการแสดงไดเรกทอรีพื้นฐานจริงให้ใช้อย่างใดอย่างหนึ่งpwd -P
หรือreadlink -f
(สำหรับเส้นทางที่กำหนดเอง):
$ mkdir จริง $ ln -s เสมือนจริง $ cd virtual $ pwd / home / ชื่อผู้ใช้ / tmp / เสมือน $ pwd -P / home / ชื่อผู้ใช้ / tmp / จริง $ readlink -f / home / ชื่อผู้ใช้ / tmp / จริง
โปรดทราบว่าเชลล์มักจะแทนที่pwd
คำสั่งด้วยเวอร์ชันภายในของตัวเองดังนั้นในระบบของฉัน (RHEL6) ถึงแม้ว่าpwd(1)
หน้าคู่มือจะแนะนำว่ามัน--physical
จะทำงานได้ดีเหมือนกัน-P
เพราะฉันกำลังทำงานอยู่bash
มันไม่ได้:
$ pwd - ทางกายภาพ bash: pwd: -: ตัวเลือกที่ไม่ถูกต้อง pwd: การใช้งาน: pwd [-LP] $ / bin / pwd - ทางกายภาพ / home / ชื่อผู้ใช้ / tmp / จริง $ / usr / bin / env pwd - ทางกายภาพ / home / ชื่อผู้ใช้ / tmp / จริง
อย่างที่คนอื่นพูดpwd
มักจะทำงานได้ดีพอ อย่างไรก็ตามฉันต้องการเพิ่มแนวคิดที่ช่วยฉันออกไป
สำหรับเชลล์ทั่วไปที่ใช้กันทั่วไปในวันนี้คุณสามารถปรับแต่งลักษณะที่ปรากฏของพรอมต์คำสั่งได้ ฉันชอบที่จะปรับแต่งของฉันเพื่อให้มันแสดงให้ฉันเห็นทั้งชื่อของคอมพิวเตอร์ที่ฉันเปิดและสมุดงานของฉัน ด้วยวิธีนี้ฉันมักจะรู้ว่าฉันอยู่ที่ไหน (ส่วนชื่อคอมพิวเตอร์ช่วยให้ฉันรู้ว่าหน้าต่างเทอร์มินัลที่ฉันใช้ถูกใช้เพื่อ SSH ไปยังเซิร์ฟเวอร์ระยะไกล) ตัวอย่างเช่นเมื่อฉันเปิดหน้าต่างเทอร์มินัลใหม่บนแล็ปท็อปซึ่งฉันเรียกว่า Plastico ฉันเห็นสิ่งนี้:
Plastico ~> cd Desktop/
Plastico ~/Desktop> cd ~/Sites/raygunrobot.com
Plastico ~/Sites/raygunrobot.com> cd /usr
Plastico /usr>
~
คุณจะเห็นว่ามันย่อไดเรกทอรีบ้านของฉันเป็น ฉันพบว่าการทำเช่นนี้เพื่อการแจ้งเตือนเทอร์มินัลของฉันมีประโยชน์อย่างไม่น่าเชื่อ - ฉันมักจะรู้ได้ทันทีว่าฉันอยู่ที่ไหนมากยิ่งกว่าที่ฉันจะทำได้โดยดูที่หน้าต่าง Finder
ใน tcsh ฉันทำได้โดยเพิ่มset prompt = 'Plastico %~%# '
ไฟล์. tcshrc ในโฮมไดเร็กตอรี่ของฉัน ฉันทำมันด้วย ksh ด้วยโดยเพิ่มexport PS1="Plastico $PWD $ "
ไฟล์. profile ของฉัน แต่ในฐานะผู้ใช้ลีนุกซ์คุณอาจใช้ Bash ซึ่งฉันไม่มีประสบการณ์มากนัก (ฉันเป็นคนแบบนี้) แต่ดูเหมือนว่าฉันอาจจะทำได้โดยเพิ่มPS1="Plastico \w $ "
ลงในไฟล์. bashrc ของฉัน
แก้ไข:เพิ่งสังเกตเห็นสถานะ OP ที่คุณสนใจไม่ใช่แค่ทุบตี โอ้สบายดี หวังว่าทุกคนจะพบว่าสิ่งนี้มีประโยชน์
Plastico /var/www/vhosts/myveryexcellentwebsite.com/public_html/wp-content/themes/myveryexcellenttheme/js/vendor/excellentjs/ >
หรืออะไรทำนองนั้น
$ pwd
/your/current/directory
$
pwd
มาจากไดเรกทอรีพิมพ์ทำงาน
ชื่อ
pwd - ชื่อพิมพ์ของไดเรกทอรีปัจจุบัน / ทำงาน
สรุป
pwd [ตัวเลือก] ...
ลักษณะ
พิมพ์ชื่อไฟล์แบบเต็มของไดเรกทอรีการทำงานปัจจุบัน
-L , - เชิงตรรกะ
ใช้ PWD จากสภาพแวดล้อมแม้ว่าจะมี symlinks
-P , - ทางกายภาพ
หลีกเลี่ยงการเชื่อมโยงทั้งหมด
--ช่วยด้วย
แสดงความช่วยเหลือและออกจากนี้
--version
ข้อมูลเวอร์ชันเอาต์พุตและออก
หมายเหตุ: เชลล์ของคุณอาจมี pwd รุ่นของตัวเองซึ่งโดยปกติจะแทนที่เวอร์ชั่นที่อธิบายไว้ที่นี่ โปรดดูเอกสารประกอบเชลล์ของคุณสำหรับรายละเอียดเกี่ยวกับตัวเลือกที่รองรับ
( ... )