가끔 패키지를 설치한 후 같은 이름의 명령을 실행하려고 할 때가 있습니다.좋아요geoip-bin
팩:
$ sudo apt install geoip-bin
[...]
$ geoip-bin
geoip-bin: command not found
특정 패키지와 관련된 모든 명령을 찾는 방법은 무엇입니까?
답변1
dpkg -L
-L, --listfiles package-name
시스템에 설치된 파일 나열패키지 이름.
두 가지 옵션:
- 일반적으로 작동합니다:(
dpkg -L byobu | egrep '/bin/|/sbin/'
아니면grep bin
뭔가를 얻는 것이 마음에 들지 않더라도거짓 긍정). 또는
dpkg -L byobu | xargs which
또는배쉬 마법:
for f in $(dpkg -L geoip-bin) ; do test -x $f -a ! -d $f && echo $f ; done
| grep "/usr/bin/"
선택적으로 끝에 추가하여 해당 특정 폴더의 실행 파일을 나열 할 수 있습니다 .
geoiplookup
응 명령 geoip-bin
. 또한 이는 모든 패키지의 다른 명령을 이해하는 데 매우 유용하다는 것을 알았습니다.
답변2
다음 명령을 사용할 수 있습니다 dpkg
.
dpkg -S $(which <command>)
예를 들어:
$ dpkg -S $(which cp)
coreutils: /bin/cp
이 명령은 cp
패키지의 일부입니다 coreutils
.
coreutils
패키지와 관련된 모든 명령을 보려면 다음 을 수행하십시오.
$dpkg -s coreutils
Specifically, this package includes:
arch base64 basename cat chcon chgrp chmod chown chroot cksum comm cp
csplit cut date dd df dir dircolors dirname du echo env expand expr
factor false flock fmt fold groups head hostid id install join link ln
logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup nproc numfmt
od paste pathchk pinky pr printenv printf ptx pwd readlink realpath rm
rmdir runcon sha*sum seq shred sleep sort split stat stty sum sync tac
tail tee test timeout touch tr true truncate tsort tty uname unexpand
uniq unlink users vdir wc who whoami yes