คำถามติดแท็ก tab-completion

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

1
ฉันจะสร้างไฟล์“ bash_completions” ใหม่จากไดเรกทอรี“ bash-complete / completions” ได้อย่างไร?
ยังไงก็เถอะ /usr/share/bash-completion/bash_completion ไฟล์ (ซึ่งมาจาก /etc/bash_completion ) ถูกลบแล้ว อย่างไรก็ตามส่วนที่เหลือของ bash-completion ไดเรกทอรีปรากฏเหมือนเดิม: ยังมี /usr/share/bash-completion/completions ไดเรกทอรีที่มีไฟล์ที่เกี่ยวข้องกับความสมบูรณ์จำนวนมาก เป็นไปได้ไหมที่จะงอกใหม่ bash_completion ไฟล์จาก completions ไดเรกทอรี? มันจะทำงานเพื่อเพียงแค่ cat ไฟล์ทั้งหมดใน completions ด้วยกัน? แก้ไข: ข้อมูลระบบ: > uname -a Linux AUC-Workstation2 3.2.0-4-amd64 #1 SMP Debian 3.2.68-1+deb7u1 x86_64 GNU/Linux > bash --version GNU bash, version 4.2.37(1)-release (x86_64-pc-linux-gnu)

1
sudo bash ที่สมบูรณ์สำหรับผู้ใช้สถานที่ไม่มีสิทธิ์ - วิธีการจัดการ?
ตัวอย่าง: drwx------ 2 root root 16384 26. juuli 2009 lost+found ฉันจะรับสิ่งนี้เพื่อแสดงความสำเร็จได้อย่างไร: sudo ls -l /lost+found/<TAB> ฉันกำลังมองหาโซลูชันที่ใช้งานได้กับทุกคำสั่ง AFAICT "Complete -cf" และ "complete -F" เพียงอย่างเดียวไม่ใช่เครื่องมือวิเศษที่นี่ ..

0
การใช้ _kill เสร็จสมบูรณ์ใน. bashrc ล้มเหลว
ฉันพยายามที่จะขยายความสมบูรณ์ทุบตี alias perf-connect-process="perf record -p"; alias pperf=perf-connect-process; complete -F _kill perf-connect-process; complete -F _kill pperf; _killโดยการนำฟังก์ชั่นที่มีอยู่ทุบตีเสร็จสิ้น แต่เมื่อฉันพยายามทำให้เสร็จสมบูรณ์pperfหลังจากการรีโหลด.bashrcมันล้มเหลวโดยบอกว่า_killไม่มีฟังก์ชั่นนี้ อย่างไรก็ตามเมื่อฉันแทรก complete -F _kill pperf; ลงใน bash prompt และลองทำสิ่งต่าง ๆ ตามที่คาดไว้ ทำไม?

1
zsh เสร็จสมบูรณ์สำหรับ executables ทั้งหมดในเส้นทาง
ฉันได้เขียนสคริปต์ที่ตัวเองใช้เป็นอาร์กิวเมนต์ใด ๆ ที่ปฏิบัติการโดยพลการใน $ PATH ของฉัน มีวิธีการสร้างฟังก์ชั่นเสร็จสมบูรณ์ของ zsh (หรือ bash) ที่ฉันจะพิมพ์ myFunc to[Tab] และมันก็จะสมบูรณ์ myFunc top ตัวอย่างเช่น? การเลือกเฉพาะไฟล์ที่มีสิทธิ์อนุญาตให้ใช้งานจะดีกว่า แต่การมีไฟล์ใด ๆ และทุกไฟล์ใน $ PATH จะมีประโยชน์มากกว่า ฉันไม่สามารถจินตนาการได้ว่าระบบจะมีความสำคัญ แต่จะทำงานบน Linux, BSD และ Mac ขอบคุณ!

0
ใช้สองความสำเร็จที่แตกต่างกันใน tcsh
ฉันต้องการสร้าง tcsh ที่สมบูรณ์พร้อมทั้งไดเรกทอรีญาติ (เช่น p/*/d/ ) หรือผลลัพธ์ของคำสั่ง (เช่น p/*/'completionterms'/ ) เป็นไปได้ไหม มองไปที่หน้าคน tcsh มันไม่ชัดเจน และก่อนที่จะมีใครบอกว่าใช้ bash ฉันต้องสนับสนุนทั้งสอง (bash นั้นง่าย ;-) ตัวอย่างเช่นฉันมีต้นไม้ไดเรกทอรีนี้: |-- dirone | `-- subdir `-- dirtwo และ completionterms พิมพ์ออกมา: desiredout outputone outputtwo สิ่งที่ฉันตามมาคือความสำเร็จที่ทั้งสองอย่างนี้จะได้รับการเพิ่ม ดังนั้น: $ commandtocomplete <tab> dirone/ dirtwo/ desiredout outputone outputtwo $ commandtocomplete d<tab> dirone/ dirtwo/ desiredout …

0
การทำให้แท็บช้าลงสำหรับเส้นทางในอาร์กิวเมนต์ `ทำให้ '
เมื่อฉันระบุข้อโต้แย้งmakeเช่นPREFIX_PATH=/some/path/to/prefix/ฉันบางครั้งพบว่าการทำไดเรกทอรีให้เสร็จช้ามาก (ไม่กี่วินาที) มันน่ารำคาญเมื่อฉันมีตัวแปรหลายตัวที่จะระบุ เพื่อแก้ไขปัญหาฉันพิมพ์ตัวแปรก่อนเพื่อให้ได้ความเร็วในการเสร็จสมบูรณ์ตามปกติจากนั้นกดปุ่มHomeแทรกmakeที่จุดเริ่มต้นของบรรทัดคำสั่งของฉัน เกิดอะไรขึ้นและฉันจะแก้ไขได้อย่างไร
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.