จะมีมุมมองที่ดีขึ้นได้อย่างไรเมื่อพิมพ์ไดเรกทอรีในเทอร์มินัล


8

ขณะนี้ฉันกำลังใช้ Mac และเรียนรู้การใช้เทอร์มินัล แต่คำถามนี้ใช้ได้กับระบบ Linux เช่นกัน

ฉันต้องการถามเมื่อพิมพ์เส้นทางในเทอร์มินัล / บรรทัดคำสั่งมีวิธีใดบ้างในเทอร์มินัลในการดูไดเรกทอรีที่ดีกว่า

ตัวอย่างเช่นฉันต้องการ cd ไปยังไดเรกทอรีเฉพาะ เมื่อฉันเริ่มพิมพ์ที่อยู่มีวิธีการโดยทั่วไป ls ในแต่ละไดเรกทอรีหรือไม่ หากตัวอย่างเช่นฉันต้องการคัดลอกไฟล์จากไดเรกทอรีหนึ่งไปยังอีกไดเรกทอรีหนึ่งและต้องการพิมพ์เส้นทางสัมบูรณ์ 2 ฉันต้องจำเส้นทาง 2 เส้นทางหรือไม่ ฉันรู้ว่าการกด Tab ช่วยเติมข้อความอัตโนมัติ แต่ถ้าฉันไม่รู้ตัวอักษรตัวแรกล่ะ

ตอนนี้ฉันพึ่งใช้ Finder สำหรับสิ่งนั้น แต่ฉันคิดว่าคนที่ใช้เครื่องเทอร์มินัลนั้นมีวิธีที่ดีกว่า

ขอบคุณมาก!

คำตอบ:


9

Tabเป็นสิ่งที่คุณต้องการอย่างแม่นยำ หากคุณกดtabสองครั้งมันจะแสดงความสำเร็จที่เป็นไปได้ทั้งหมด:

$ cd /usr/  ## Hit tab twice here
bin/     include/ lib64/   sbin/    src/     
games/   lib/     local/   share/   var/     

คุณไม่จำเป็นต้องรู้อักษรตัวแรกตัวที่สองtabจะแสดงทุกอย่างให้คุณ


<kbd> แท็บ </kbd> ใช้กับบรรทัดคำสั่งของ Windows เช่นกัน
Hind-D

และทุบตี / zsh อย่างน้อยบน linux
linuxdev2013

5

บางคำเพิ่มเติมเกี่ยวกับ Tab

Tabเป็นที่ดีเพื่อให้คำสั่งเป็นลายลักษณ์อักษรบางส่วน (หรือตัวเลือก) ในหมู่คนที่มีอยู่เป็นเพียงขีดเส้นใต้โดย Terdon ในคำตอบอื่น

เพื่อให้คำสั่งสมบูรณ์เพียงพอที่จะกดTabหนึ่งครั้ง หากต้องการให้รายการเต็มให้กดTabอีกครั้ง
นอกจากนี้คุณอาจต้องการที่จะกำหนดเองการทำงานของ Tabลองตัวอย่าง 2 บรรทัดเหล่านี้:

bind "TAB:menu-complete"
bind "set show-all-if-ambiguous on"

ครั้งแรกTabแสดงให้คุณเห็นถึงความเป็นไปได้ทั้งหมดและเติมข้อความอัตโนมัติให้กับคำสั่งแรกที่มีอยู่จากครั้งที่สองที่คุณกดTab มันจะเริ่มรอบในหมู่พวกเขา

หมายเหตุ:

คุณสามารถเขียนสคริปต์เสร็จ bashของคุณเองพร้อมตัวเลือกกฎ ...
มีมากกว่าคำแนะนำบางอย่างในบทความคำแนะนำเกี่ยวกับการทุบตีเสร็จ : ส่วนที่ 1 ใช้สำหรับฐานและตัวที่สองเพื่อเขียนสคริปต์ของคุณเอง

คุณอาจสนใจbind completeและอ้างอิงที่นี่ด้านล่าง

คำตอบที่ 2: เส้นทางที่แน่นอนและทางลัด

มันไม่เคยบังคับให้เขียนเส้นทางแน่นอน (เต็ม) ในแต่ละคำสั่งแม้ว่าเป็นวิธีที่ดีเมื่อคุณเขียนสคริปต์และคุณต้องการที่จะหลีกเลี่ยงความเสี่ยงของการใช้ประโยชน์จากการเป็นม้าโทรจัน

มีบางอย่างทางลัดที่จะไปได้เร็วขึ้นเป็นตัวอย่างเช่น, Tab, , , และตัวแปรทั้งหมดที่กำหนดไว้ในเปลือกปัจจุบัน Alt+..~

นี่คือตัวอย่างด้านล่าง ( .หมายถึงที่นี่และ~หมายถึงบ้าน ):

เมื่อต้องการคัดลอกไฟล์ไปยังไดเรกทอรีปัจจุบันก็เพียงพอที่จะเขียน เมื่อต้องการคัดลอกจากไดเรกทอรีของคุณไปยังไดเรกทอรีปัจจุบันคุณสามารถเขียน เพื่อคัดลอกไฟล์จากไดเรกทอรีปัจจุบันไปยังไดเรกทอรีสุดท้ายเขียนอาร์กิวเมนต์สุดท้ายของคำสั่งสุดท้ายที่เก็บไว้ในประวัติ . หากกดอีกครั้งจะเป็นการแทนที่ตำแหน่งที่พบในตำแหน่งก่อนหน้านี้ในประวัติทุบตี ด้วยตัวอย่างง่ายกว่า:cp /my/far/far/away/myfile .
homecp ~/myfile .
cp myfile $OLDPWD
Alt+.

mkdir OldDir
mkdir NewDir
cd # here press `Alt + .` and it will autocomplete with NewDir
   # press `Alt + .` again and you will see "cd OldDir"

อ้างอิง:

  • คำแนะนำเกี่ยวกับการทุบตีการทำให้สำเร็จ : ตอนที่ 1และตอนที่ 2
  • help bindใช่ช่วยด้วยเพราะbindเป็นคำสั่งในตัว
  • help completeและcomplete -p | lessมีรายการในรูปแบบสบาย ๆ
  • help pushdและhelp popdเพื่อพุชและวางไดเร็กทอรีจากสแต็ก
  • Builtins เสร็จโปรแกรมได้

2

และได้ดูMidnight Commander- ตัวจัดการไฟล์ในโหมดข้อความซึ่งยอดเยี่ยมจริงๆ คุณสามารถนำทางในสองพาเนลเมื่อไฟล์อยู่ในรูปแบบ F5 ที่ง่ายก็อปปี้ F6 เคลื่อนย้ายมัน ... ฉันใช้เทอร์มินัลมากถ้าไม่ใช่เวลาส่วนใหญ่ แต่ฉันไม่สามารถอยู่ได้โดยปราศจากmc(ชื่อแพ็คเกจปกติ)

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