วิธีการใช้ข้อเสนอแนะการติดตั้งแพคเกจใน Debian?


21

ฉันสังเกตเห็นว่าในขณะที่บน Ubuntu ถ้าฉันพิมพ์ต่อไปนี้:

mc

และมันไม่ได้ติดตั้งฉันได้รับข้อความด้านล่าง:

The program 'mc' is currently not installed. You can install it by typing: sudo apt-get install mc

อย่างไรก็ตามใน Debian นั้นไม่สามารถใช้ได้ มันเพิ่งให้ข้อความ "-bash: / usr / bin / mc: ไม่มีข้อความไฟล์หรือไดเรกทอรี" ฉันจะใช้ฟังก์ชันการทำงานเดียวกันในบรรทัดคำสั่ง bash บน Debian ได้อย่างไร ใช่ฉันรู้ว่าถ้ามันเป็นข้อเสนอแนะของแพคเกจที่ฉันต้องการฉันก็สามารถค้นหา regex ใช้ค้นหา apt-แคช อย่างไรก็ตามฉันหวังว่าจะได้คำแนะนำที่ง่ายขึ้นทันทีเมื่อพิมพ์ชื่อของโปรแกรม

เป็นต่อการอภิปรายการทำงานให้บริการโดยแพคเกจคำสั่งที่ไม่พบ อย่างไรก็ตามแม้หลังจากติดตั้งแล้วและยังติดตั้งแพคเกจ bash-completion ก็ไม่สามารถใช้งานได้บน Debian bash shell

คำตอบ:


22

เหตุผลที่การติดตั้งcommand-not-foundไม่เริ่มให้คำแนะนำสำหรับแพ็คเกจที่ไม่ได้ติดตั้งคือฉันพลาดการแจ้งเตือนเล็กน้อยจาก dpkg ซึ่งเป็นส่วนหนึ่งของการติดตั้ง

หนึ่งควรจะเรียกใช้คำสั่งทันทีหลังจากที่ทำงานupdate-command-not-found apt-get install command-not-foundในความเป็นจริง dpkg แจ้งให้เรียกใช้คำสั่งนี้


1
ฉันยังมีการวิ่งapt-get updateก่อนที่จะใช้แล้วทั้งเปิดเซสชันใหม่หรือทุบตีupdate-command-not-found source /etc/bash.bash.rc
jordanbtucker

ฉันทำapt updateมาก่อนapt install command-not-foundแล้วupdate-command-not-foundและจากนั้นเริ่มเปลือกใหม่ แต่พบว่าฉันต้องการอีกapt updateและอาจupdate-command-not-foundก่อนที่มันจะเริ่มทำงาน
Dave X

9

แพ็คเกจเดเบียนดูเหมือนจะไม่สมบูรณ์ ใน README บอกว่าคุณควรจะมาในของคุณ/etc/bash_command_not_found .bashrcแปลกที่ไฟล์นั้นไม่รวมอยู่ในแพ็คเกจ

เดเบียนcommand-not-foundแพคเกจจะขึ้นอยู่กับแพคเกจอูบุนตู แพคเกจ ubuntu น่าจะเสร็จสมบูรณ์มากกว่าในเรื่องนั้น

เนื้อหาของรุ่น ubuntu ของbash_command_not_found :

command_not_found_handle() {
  if  [ -x /usr/lib/command-not-found ]; then
     /usr/lib/command-not-found -- "$1" 
     return $?
  else
     return 127
  fi        
}

เพิ่มบรรทัดเหล่านั้นใน~/.bashrc(หรือ/etc/bash.bashrc) ของคุณและcommand-not-foundคุณลักษณะควรจะใช้งานได้


1
README ไม่ถูกต้อง Debian ไม่ได้ใช้ไฟล์นั้น ตัวจัดการนั้นรวมอยู่ใน /etc/bash.bashrc (อย่างน้อยใน Debian 9) ซึ่งทำงานโดยอัตโนมัติโดย Bash interactive shells เมื่อมันเริ่มทำงาน
hackerb9

การติดตั้งcommand-not-foundแพคเกจ (เวอร์ชั่น 0.2.38-4 จาก debian.org) เป็น MX Linux (ฐาน Debian 9 Stretch) ไม่ได้แก้ไข /etc/bash.bashrc และต่อมาก็ใช้ไม่ได้จนกว่าจะเพิ่มบรรทัดในคำตอบนี้
Xen2050
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.