แท็บเสร็จสมบูรณ์ใช้งานไม่ได้กับ SCP ด้วย OpenSSH 1: 6.2p2-6ubuntu0.1


0

นี่คือสถานการณ์ของฉัน:

ฉันต้องการที่จะถ่ายโอนไปยังเซิร์ฟเวอร์~/foo.txtaoneill@bar

ฉันเริ่มพิมพ์ในบรรทัดคำสั่งของฉัน:

aoneill@aoneill-Laptop:~$ scp fo

ณ จุดนี้ฉันกดปุ่ม<tab>เพื่อเติมชื่อไฟล์และเทอร์มินัลของฉันค้าง มันจะไม่เปลี่ยนแปลงตามการกดแป้นใด ๆ และเคอร์เซอร์จะติดค้างอยู่ข้างๆfoยกเว้นฉันจะ<ctrl-C>ออก

ฉันใช้ Ubuntu 13.10 และฉันรวม. /etc/bash_completionไว้ในของฉัน.bashrcด้วย

นี่เป็นโปรแกรมเดียวที่ฉันพบปัญหานี้ด้วยจริงๆและดูเหมือนจะไม่เป็นปัญหาทั่วไป

ขอบคุณสำหรับความช่วยเหลือ!


ฉันคิดว่าเราต้องการข้อมูลเพิ่มเติมเพื่อหาสิ่งนี้ สิ่งนี้เกิดขึ้นกับทุกไฟล์และทุกโฟลเดอร์หรือไม่ มันจะเกิดขึ้นกับscp? คุณมีการกำหนดเอง~/.bashrcหรือไม่? การกำหนดค่าใดที่คุณต้องค้นหาชื่อโฮสต์เป็น DNS หรือไม่
Kevin Panko

คำตอบ:


0

ณ จุดนี้ฉันกดtabเพื่อเติมชื่อไฟล์ ...

... และคอมพิวเตอร์ทั้งหมดล้มเหลวในการอ่านใจของคุณทำสิ่งที่มันจริงไม่เมื่อtabถูกตีที่จุดนั้นซึ่งเป็นพยายามที่จะเสร็จสมบูรณ์ชื่อโฮสต์อาจจะให้คำปรึกษาทุกประเภทของสิ่งที่มาจากการส่งออกของการส่งออกของavahi-browse ruptimeกระบวนการนี้อาจใช้เวลาสักครู่

(ผู้กล้าสามารถไปดูที่_known_hosts_realฟังก์ชั่นได้/usr/share/bash-completion/bash-completionค่ะ)

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

(ผู้กล้าหาญสามารถมองเห็นได้ว่าทำไมมันมาจาก_scpฟังก์ชั่น/usr/share/bash-completion/completions/scpค่ะ)


ที่สมบูรณ์แบบ! ขอขอบคุณ. ฉันจะจำไว้เมื่อฉันใช้ ssh / scp ในอนาคต!
AlexO'Neill

0

ฉันพบสิ่งนี้กับ Ubuntu 14.04 การใช้ set -x แสดงว่าการเติมข้อความอัตโนมัติกำลังค้างอยู่ใน ruptime เมื่อฉันพยายามเรียกใช้ ruptime ฉันพบว่ามันไม่ได้ติดตั้ง หลังจากติดตั้งแพคเกจ rwho การแฮงก์ได้รับการแก้ไข

sudo apt-get install rwho

COMPREPLY+=($( compgen -W         "$( ruptime 2>/dev/null | awk '!/^ruptime:/ { print $1 }' )"         -- "$cur" ))
+++ ruptime
+++ awk '!/^ruptime:/ { print $1 }'

สาย COMPREPLY เรียก ruptime โดยไม่ตรวจสอบเพื่อดูว่ามีอยู่หรือไม่ และเนื่องจากฉันได้เปิดใช้งาน 'COMMAND_NOT_FOUND_INSTALL_PROMPT = 1' คำสั่งจะพยายามถามฉันว่าฉันต้องการติดตั้งหรือไม่ แต่ไปป์นั้นจับเอาท์พุทและแฮงเอาท์

ดังนั้นข้อผิดพลาดอาจเป็นได้ว่า COMMAND_NOT_FOUND_INSTALL_PROMPT ไม่ตรวจสอบว่ามีการใช้งานในไพพ์หรือไม่ หรือ COMPREPLY นั้นจะไม่ตรวจสอบว่ามีการติดตั้งคำสั่งก่อนหรือไม่

โพสต์บั๊กที่มีกลุ่มคำสั่งไม่พบ https://bugs.launchpad.net/command-not-found/+bug/1534175

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