มีทางลัดใด ๆcd ..
หรือไม่?
cd ..
ยุ่งยากในการพิมพ์
cd ..
' มักจะมี "ฉันต้องcd
เข้าไปในไดเรกทอรีก่อนพูดคุยเกี่ยวกับไฟล์ที่นั่น" รูปแบบต่อต้านแทนที่จะระบุเส้นทางระบบแฟ้ม
มีทางลัดใด ๆcd ..
หรือไม่?
cd ..
ยุ่งยากในการพิมพ์
cd ..
' มักจะมี "ฉันต้องcd
เข้าไปในไดเรกทอรีก่อนพูดคุยเกี่ยวกับไฟล์ที่นั่น" รูปแบบต่อต้านแทนที่จะระบุเส้นทางระบบแฟ้ม
คำตอบ:
ไม่ใช่โดยค่าเริ่มต้น (อาจมีข้อยกเว้นบางประการนี้) ไม่มี แต่ถ้าคุณใช้alias
คำสั่งคุณสามารถสร้างทางลัดเช่นนี้:
alias ..="cd .."
นี้จะช่วยให้คุณสามารถใช้คำสั่งที่จะทำ..
cd ..
alias ...="cd ../.."
และอีกสอง alias ,=cd "$OLDPWD"
นอกจากนี้ผมสามารถแนะนำ
cd -
@maaartinus:
เปิดใช้งานautocd
ตัวเลือก มันจะช่วยให้คุณพิมพ์..
สำหรับcd ..
จริงและจะช่วยให้คุณใช้ไดเรกทอรีใด ๆ ที่เป็นชื่อคำสั่งและจะcd
ไป:
shopt -s autocd
สำหรับคนอยากรู้อยากเห็นมันมีอยู่สำหรับ zsh:
setopt auto_cd
zsh
(+ auto_cd
) FTW!
ฉันพบว่ามีประโยชน์นี้:
up() { local p= i=${1:-1}; while (( i-- )); do p+=../; done; cd "$p$2" && pwd; }
ตัวอย่างเช่นup 4
=cd ../../../..
เป็นโบนัส, ทำงานในลักษณะที่คล้ายกับ`up 4`/path/to/file
../../../../path/to/file
cd -
เช่นกัน ทำได้ดี! :)
หลังจากทำ
bind '"\eu":"cd ..\C-m"'
คุณสามารถโดยการกดcd ..
Alt-u
ฉันเคยใช้สิ่งนี้ในการประชัน chdir ;-)
หากคุณต้องการทั้งชุด chdir อย่างรวดเร็ว
ALT+u cd ..
ALT+n enter next dir for selection
ALT+p enter previous dir for selection
ALT+SPC choose selected dir
ALT+l list subdirectories and highlight selection
เพียงรวมสิ่งนี้ไว้ใน. bashrc ของคุณ
swiftcd-status() {
echo -n -e "\r\0033[1A\0033[J"
}
swiftcd-contents() {
find "$swiftcdpath" -maxdepth 1 -executable -type d
}
swiftcd-setdir ()
{
swiftcdpath=$PWD
swiftcddirnum=1
swiftcddircount=`swiftcd-contents|wc -l`;
swiftcd-status
}
swiftcd-pd ()
{
(( --swiftcddirnum <= 0 )) && swiftcddirnum=$swiftcddircount;
swiftcd-switch $swiftcddirnum
swiftcd-status
}
swiftcd-updir ()
{
cd ..;
swiftcd-setdir
}
swiftcd-list ()
{
local redOn="$(echo -e '\0033[31m\0033[1m')"
local redOff="$(echo -e '\0033[m')"
swiftcd-status
(( swiftcddircount > 1 )) && {
echo
echo $(swiftcd-contents|sed 's!^'"$swiftcdpath"'!!'|sed $swiftcddirnum' s/\(.*\)/'"$redOn"'\1'"$redOff"'/')
}
}
swiftcd-nd ()
{
(( ++swiftcddirnum > swiftcddircount )) && swiftcddirnum=1;
swiftcd-switch $swiftcddirnum
swiftcd-status
}
swiftcd-switch() {
(( $1 <= swiftcddircount && $1 > 0 )) && cd $(swiftcd-contents|sed -n $1' p')
}
bind '"\e ":"swiftcd-setdir\C-m"'
bind '"\ep":"swiftcd-pd\C-m"'
bind '"\eu":"swiftcd-updir\C-m"'
bind '"\en":"swiftcd-nd\C-m"'
bind '"\el":"swiftcd-list\C-m"'
swiftcd-setdir
ฉันใช้อันนี้เพราะฉันพิมพ์เร็วเกินไปและมักจะพลาด space bar:
alias cd..="cd .."
non-unix
/ Windows
/
cd..
ช่วยจริงๆ
cd..
ถูกต้อง :)
ลอง autojump: autojump บน github
สิ่งนี้จะไม่เพียงทำให้คำสั่ง cd สั้นลงใน 'j' แต่ยังย่ออักขระที่จำเป็นสำหรับการพิมพ์โฟลเดอร์ที่คุณต้องการข้ามไป
หากคุณใส่ซีดีลงในโฟลเดอร์ / home / foo / Projects / thenextfacebook คุณสามารถทำ 'j face' ได้แล้ว มันเรียนรู้โดยอัตโนมัติว่าโฟลเดอร์ใดเป็นโฟลเดอร์ที่สำคัญที่สุดสำหรับคุณและหลังจากใช้ไปเป็นเวลาหนึ่งเดือนแล้วฉันสามารถบอกได้ว่ามันถูกต้องมาก
ฉันใช้alias …='cd ..'
ใน.bashrc
ไฟล์ของฉัน กฎ Unicode;)
ไฟล์ bashrc ของฉันมี
alias ..="cd .. && ls -lG"
เช่นกัน
alias ,,="pushd .. && ls -lG"
ลองCd Deluxeสำหรับคำสั่ง cd ที่ได้รับการปรับปรุงอย่างมาก รองรับสิ่งต่าง ๆ เช่น "cd ... " และ "cd .... " เป็นต้นเพื่อนำทางขึ้นไปอย่างรวดเร็ว