ฉันจะค้นหาคำสั่งที่ฉันไม่รู้ชื่อสมบูรณ์ได้อย่างไร


10

ทุกครั้งที่ฉันพยายามใช้โปรแกรมจากเทอร์มินัลฉันไม่พบมันเพราะมันไม่ตรงกับชื่อจริง ตัวอย่างเช่นผมพิมพ์disksใน terminal gnome-disksแต่ชื่อที่แท้จริงคือ

ฉันพยายามใช้:

sudo dpkg -l | grep disks 

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

คำตอบ:


4

นี่จะแสดงรายการชื่อเกมชายและคำอธิบายสั้น ๆ ที่มีข้อความ "ดิสก์" โปรดทราบว่าสิ่งนี้จะไม่ส่งคืนสิ่งใดสำหรับสคริปต์หรือโปรแกรมที่ไม่มี manpage แต่ทุกโปรแกรมที่มาพร้อมกับ Ubuntu distro ควรมี ...

man -k disks

หรือ...

apropos disks

ตัวอย่างเช่น...

 root@LX02:~  apropos disks
cryptdisks_start (8) - wrapper around cryptsetup which parses /etc/crypttab.
cryptdisks_stop (8)  - wrapper around cryptsetup which parses /etc/crypttab.
mtools (1)           - utilities to access DOS disks in Unix.
smartctl (8)         - Control and Monitor Utility for SMART Disks
udisks (1)           - udisks command line tool
udisks (7)           - Storage Management
udisks-daemon (8)    - udisks Daemon

3

วิธีที่ง่ายที่สุดคือการตรวจสอบ "โปรแกรมเริ่มต้น" โดยใช้โปรแกรมแก้ไขเมนู:

  • คลิกขวาที่ปุ่มเมนูในทาสก์บาร์
  • เลือกEdit Menu- สิ่งนี้จะเปิดตัวแก้ไขเมนู

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

ไฟล์เริ่มต้นโปรแกรมเหล่านั้นมักจะอยู่ใน/usr/share/applicationsดังนั้นวิธีการอื่นจะตรวจสอบ*.desktopไฟล์ในไดเรกทอรีนั้น หากคุณไม่แน่ใจเกี่ยวกับชื่อของสิ่งที่*.desktopต้องการค้นหาให้ทำ grep จากใน/usr/share/applicationsไดเรกทอรี:

grep gThumb * | grep 'Name='

จะให้สิ่งที่คุณต้องการ

gthumb.desktop:Name=gThumb
gthumb.desktop:X-GNOME-FullName=gThumb Image Viewer
gthumb-import.desktop:Name=Import with gThumb
gthumb-import.desktop:X-GNOME-FullName=gThumb Photo Import Tool

ตอนนี้คุณสามารถใช้less gthumb.desktopเพื่อตรวจสอบรายละเอียดของโปรแกรมเริ่มต้นนั้น

อีกวิธีหนึ่งคือการใช้aproposคำสั่งเพื่อค้นหาคำหลักบางคำในหน้าคน


1

for bin in $(for path in $(tr ':' '\n' <<<"$PATH"); do echo $path; done); do ls $bin; done |grep 'disk'

ลูปด้านบนระบุทุกไฟล์ในแต่ละไดเรกทอรีของคุณ$PATHและแสดงไฟล์ใด ๆ ที่ตรงกับ regex ('ดิสก์' ในกรณีนี้) ส่งผ่านไปยัง grep ที่ส่วนท้ายของไพพ์ไลน์

หากคุณมีไฟล์ที่ไม่สามารถเรียกใช้$PATHงานได้สิ่งนี้จะแสดงไฟล์เหล่านั้นด้วย


0

อาจไม่ใช่สิ่งที่คุณต้องการได้ยิน แต่ zsh (zshell) ทำงานได้ยอดเยี่ยมในการทำคำสั่งให้สมบูรณ์ มันเข้ากันได้กับ (ย้อนหลัง) เพื่อทุบตีดังนั้นคุณไม่จำเป็นต้องเรียนรู้สิ่งใหม่อย่างสมบูรณ์
ด้วยoh-my-zshมีจุดเริ่มต้นที่ดีในการตั้งค่าที่สามารถปรับแต่งได้ตามใจชอบ

ถ้าฉันพิมพ์ 'ดิสก์' ในเทอร์มินัลของฉันมันจะแนะนำรายการต่อไปนี้โดยอัตโนมัติซึ่งสามารถข้ามผ่านได้
cfdisk fdisk lvmdiskscan mkdiskimage sgdisk udisks udisks-tcp-bridge umount.udisks2
cgdisk gdisk memdiskfind sfdisk testdisk udisksctl umount.udisks

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

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