คำถามติดแท็ก cd-command

cd เป็นเชลล์ในตัวเพื่อเปลี่ยนไดเรกทอรีทำงาน


6
รันคำสั่งเฉพาะในไดเรกทอรีที่กำหนดโดยไม่ต้อง cd'ing หรือไม่
มีวิธีดำเนินการคำสั่งในไดเรกทอรีอื่นโดยไม่ต้องไปcdหรือไม่ ฉันรู้ว่าฉันสามารถcdเข้าcdออกได้ง่าย ๆ แต่ฉันแค่สนใจในความเป็นไปได้ที่จะเดินตามขั้นตอนพิเศษ :)
42 linux  bash  cd-command 

2
ดำเนินการทุบตีสคริปต์ในการเข้าสู่ไดเรกทอรี
เป็นวิธีที่ดีที่สุดในการรันสคริปต์เมื่อเข้าสู่ไดเรกทอรีอะไร เมื่อฉันย้ายไปยังไดเรกทอรีใหม่ฉันต้องการทุบตีเพื่อเรียกใช้สคริปต์ projectSettings.bash เหมือนที่ RVM ทำ

4
เหตุใดคำสั่ง `cd` จึงไม่ทำงานผ่าน SSH
ฉันพยายามสำรองไฟล์บางไฟล์ผ่าน SSH แต่แทนที่จะเอาไฟล์tarที่ฉันต้องการฉันมีโฟลเดอร์บ้านของฉัน ฉันทำการทดสอบเพิ่มเติมและมันก็ลดลงไปถึงสิ่งนี้: ssh root@server /bin/sh -c "cd /boot && ls -l" ซึ่งไปยังไฟล์รายการแปลกใจของฉันในไม่ได้/root /bootแต่ถ้าฉันรัน/bin/shคำสั่งทั้งหมดจากเทอร์มินัลมันจะทำการcds และพิมพ์/bootไฟล์ เกิดอะไรขึ้นที่นี่
39 shell  ssh  cd-command 

3
gnome-terminal: ติดตามไดเรกทอรีในแท็บใหม่
ฉัน Arch $HOMEลินุกซ์และเมื่อฉันเปิดอาคารผู้โดยสารแห่งใหม่แท็บก็มักจะไป ฉันจะสร้างมันได้อย่างไรเมื่อฉันเปิดแท็บใหม่มันจะเปิดเชลล์ในไดเรกทอรีที่ฉันอยู่ก่อนหน้านี้

4
ฉันจะทราบได้อย่างไรว่าฉันอยู่ในตำแหน่ง symlink จากบรรทัดคำสั่ง
สมมติว่าฉันมีโฟลเดอร์: cd /home/cpm135/public_html และสร้างลิงก์สัญลักษณ์ ln -s /var/lib/class . ต่อมาฉันอยู่ในไดเรกทอรีนั้น: cd /home/cpm135/public_html/class pwdจะบอกฉันฉันอยู่ใน/home/cpm135/public_html/class มีวิธีใดบ้างที่จะรู้ว่าฉันเป็น "จริง ๆ " เข้าไป/var/lib/class? ขอบคุณ


6
เหตุใดฉันจึงไม่สามารถเปลี่ยนเส้นทางชื่อผลลัพธ์จากคำสั่งเดียวไปยัง“ cd” ได้
ฉันพยายามรับcdชื่อไดเรกทอรีที่เปลี่ยนเส้นทางจากคำสั่งอื่น วิธีการเหล่านี้ไม่ทำงาน: $ echo $HOME | cd $ echo $HOME | xargs cd วิธีนี้ใช้ได้ผล: $ cd $(echo $HOME) ทำไมชุดคำสั่งแรกไม่ทำงานและมีคำสั่งอื่นที่ล้มเหลวด้วยหรือไม่

4
คุณจะป้อนไดเรกทอรีที่ชื่อเป็นลบได้อย่างไร
ฉันดาวน์โหลดlessnไปยังเว็บเซิร์ฟเวอร์ของฉันและคลายซิปแล้ว -มันมีโฟลเดอร์ชื่อ ฉันคิดว่าฉันรู้วิธีจัดการกับสิ่งนั้น แต่ฉันไม่ทำ ฉันพยายามcd -- -แล้ว แต่นั่นก็ไม่ได้มีผลที่ต้องการ ดูเหมือนว่าการใช้เครื่องหมายคำพูดจะไม่ส่งผลกระทบใด ๆ ฉันใส่สแลชทั่วสถานที่ไม่มีประโยชน์ วิธีที่เหมาะสมในการเปลี่ยนเป็นโฟลเดอร์นี้คืออะไร?
26 bash  cd-command 

4
ทำไมฉันต้องใช้ cd“ $ @” แทน cd“ $ 1” เมื่อเขียน wrapper สำหรับ cd?
ที่อื่นฉันได้เห็นฟังก์ชั่น cd ดังนี้ cd() { builtin cd "$@" } ทำไมมันแนะนำให้ใช้$@แทน$1? ฉันสร้างไดเรกทอรีทดสอบ "r st" และเรียกว่าสคริปต์ที่มีฟังก์ชั่นนี้และทำงานได้ทั้งสองวิธี $ . cdtest.sh "r st" แต่ $ . cdtest.sh r stล้มเหลวไม่ว่าฉันจะใช้"$@"หรือ"$1"

3
เชลล์รู้จักบ้านได้อย่างไร?
แต่ละเปลือกมีตัวแปรสภาพแวดล้อม $ ชุดแรก (เช่น: /Users/lotolo) ถ้าฉันอยู่ภายใต้ csh ฉันสามารถunsetenv HOMEและยังถ้าฉันcdฉันจะอยู่ในบ้านของฉัน ฉันได้ทดสอบสิ่งนี้ด้วย bash ( unset HOME) และมันก็เป็นพฤติกรรมเดียวกัน แล้วเชลล์รู้ได้อย่างไรว่าบ้านของฉัน / other_user อยู่ที่ไหน? มันอ่านค่าเหล่านั้นที่ไหน? สิ่งนี้ไม่ซ้ำกันเนื่องจากคำถามของฉันไม่ใช่ฉันจะรู้ได้อย่างไร แต่เชลล์รู้HOMEได้อย่างไร และพฤติกรรมนี้ก็ขยายไปถึงผู้ใช้รายอื่นเช่นกัน
25 bash  cd-command  home  tcsh  csh 

4
เป็นไปได้ที่จะกำหนดคำสั่งในทุบตี?
ตัวอย่างเช่นฉันสามารถตั้งค่า: gb = cd /media/Dan/evolution ... ดังนั้นทุกครั้งที่ฉันสั่งงานgbด้วย bash ฉันสามารถcdไปยังไดเรคทอรีนั้นได้หรือไม่ ฉันพบบางสิ่งที่ออนไลน์: aliasคำสั่ง แต่ดูเหมือนว่ามันจะไม่สามารถทำงานดังกล่าวได้ เป็นไปได้ที่จะทำหรือไม่ อย่างไร?

6
ฉันจะเปิดเทอร์มินัลใหม่ในไดเรกทอรีเดียวกันของสิ่งที่ใช้ล่าสุดจาก keybind จัดการหน้าต่างได้อย่างไร
ฉันใช้ตัวจัดการหน้าต่างเรียงต่อกันและฉันเปลี่ยนจากgnome-terminalแท็บหลายแท็บเป็นหลายurxvtอินสแตนซ์ที่จัดการโดยตัวจัดการหน้าต่าง หนึ่งในคุณสมบัติที่ฉันพลาดคือความสามารถในการเปิดเทอร์มินัลใหม่ซึ่งเป็นค่าเริ่มต้นไปยังไดเรกทอรีการทำงานของอันสุดท้าย กล่าวโดยย่อ: ฉันต้องการวิธีในการเปิด urxvt ใหม่ (ทุบตี) ที่เป็นค่าเริ่มต้นที่ $ PWD ของรายการที่ใช้ล่าสุด ทางออกเดียวที่อยู่ในใจของฉันคือการบันทึกเส้นทางปัจจุบันในทุก ๆcdสิ่ง: echo $PWD > ~/.last_dir และกู้คืนพา ธ บนเทอร์มินัลใหม่ด้วยวิธีนี้: cd `cat ~/.last_dir` ฉันสามารถสั่งคำสั่งที่สองได้.bashrcแต่ฉันไม่รู้วิธีเรียกใช้คำสั่งแรกในทุกการเปลี่ยนแปลงของไดเรกทอรี :) ยินดีต้อนรับทางออกที่ง่ายกว่าที่ไม่เกี่ยวข้องscreenหรือtmuxการใช้งาน

1
เสร็จสมบูรณ์สำหรับอาร์กิวเมนต์แรกของ cd OLD NEW
ในzshการcdออกคำสั่งมีรูปแบบสองอาร์กิวเมนต์: การเปลี่ยนแปลงcd OLD NEW ${PWD/OLD/NEW}ด้วยระบบการทำให้สมบูรณ์สไตล์ใหม่ zsh สามารถทำให้เสร็จสมบูรณ์ได้NEW: อาร์กิวเมนต์ที่สองเสร็จสมบูรณ์ตามสิ่งที่OLDสามารถทดแทนได้เพื่อให้ได้ไดเรกทอรีที่มีอยู่ แต่อาร์กิวเมนต์แรกจะเสร็จสมบูรณ์ไปยังไดเรกทอรีที่มีอยู่เท่านั้น ฉันจะให้ zsh เสนอความสำเร็จที่เป็นค่าที่เป็นไปได้OLDนอกเหนือจากการทำไดเรกทอรีที่มีอยู่ให้สมบูรณ์ได้อย่างไร ตัวอย่างเช่นถ้าไดเรกทอรีปัจจุบัน/path/to/fooและยังมีไดเรกทอรี/also/to/fooและ/path/to/foo/primeแล้วcd pTabเสร็จไปp primeถ้าฉันตั้งใจจะวิ่งcd path alsoฉันก็อยากให้ zsh เสนอให้pathเหมือนกัน อย่างไร? การใช้ค่าที่พิมพ์ไว้แล้วของอาร์กิวเมนต์ที่สองเพื่อ จำกัด ความเป็นไปได้สำหรับอาร์กิวเมนต์แรกนั้นจะเป็นค่าบวก

4
ตรวจจับโดยอัตโนมัติเมื่อฉันพิมพ์“ vi” แต่หมายถึง“ cd”?
ประมาณ 5 ครั้งต่อวันฉันพิมพ์ "vi" เมื่อฉันหมายถึง "cd" และท้ายที่สุดเปิดไดเรกทอรีใน vi มันทำให้ฉันถั่ว ดูเหมือนว่าควรมีวิธีการตรวจสอบเมื่อฉันพิมพ์ใน "vi + directory" และเปลี่ยนเป็น "cd + directory" โดยอัตโนมัติ คิด?
21 bash  shell  alias  cd-command 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.