1. which
which命令查找出相关命令是否已经在搜索路径中,例子如下:
//显示出ping安装在哪个目录
[root@xamppr10 bin]# which ping
返回结果为:
/usr/bin/ping
2. locate
locate命令用于查找文件,它比find命令的搜索速度快,它需要一个数据库。
[root@xamppr10 ~]# updatedb
[root@xamppr10 ~]# locate php.ini
/opt/zbox/etc/php/php.ini
/opt/zbox_old/etc/php/php.ini
3. rpm (centos)
如果用户知道自己要查找到软件包的名字,可以直接使用下面的命令。
//查找检查系统是否安装了
[root@xamppr10 ~]# rpm -q python
python-2.7.5-90.el7.x86_64
或者:
$rpm -qa| grep python //这是两个命令的结合
[root@xamppr10 ~]# rpm -qa| grep python
langtable-python-0.0.31-4.el7.noarch
python-IPy-0.75-6.el7.noarch
python2-futures-3.1.1-5.el7.noarch
python-jwcrypto-0.4.2-1.el7.noarch
python-iniparse-0.4-9.el7.noarch
python-backports-1.0-8.el7.x86_64
libstoragemgmt-python-clibs-1.8.1-2.el7_9.x86_64
python-firewall-0.6.3-13.el7_9.noarch
python-kitchen-1.1.1-5.el7.noarch
python-2.7.5-90.el7.x86_64
abrt-python-2.1.11-60.el7.centos.x86_64
python-ipaddress-1.0.16-2.el7.noarch
python-gobject-3.22.0-1.el7_4.1.x86_64
python-enum34-1.0.4-1.el7.noarch
python-urwid-1.1.1-3.el7.x86_64
python-netaddr-0.7.5-9.el7.noarch
python-requests-2.6.0-10.el7.noarch
python-javapackages-3.4.1-11.el7.noarch
python2-ipaclient-4.6.8-5.el7.centos.6.noarch
python-deltarpm-3.6-3.el7.x86_64
dbus-python-1.1.1-9.el7.x86_64
libselinux-python-2.5-15.el7.x86_64
python-augeas-0.5.0-2.el7.noarch
python-pwquality-1.2.3-5.el7.x86_64
python-netifaces-0.10.4-3.el7.x86_64
python-dateutil-1.5-7.el7.noarch
libuser-python-0.60-9.el7.x86_64
python-urllib3-1.10.2-7.el7.noarch
python-schedutils-0.4-6.el7.x86_64
python2-ipalib-4.6.8-5.el7.centos.6.noarch
python-pyblock-0.53-6.el7.x86_64
python-ethtool-0.8-8.el7.x86_64
python-setuptools-0.9.8-7.el7.noarch
python-pyudev-0.15-9.el7.noarch
python-sssdconfig-1.16.5-10.el7_9.8.noarch
python-yubico-1.2.3-1.el7.noarch
python-ntplib-0.3.2-1.el7.noarch
python-ply-3.4-11.el7.noarch
python-rtslib-2.1.74-1.el7_9.noarch
python2-subprocess32-3.2.6-14.el7.x86_64
python-slip-0.4.0-4.el7.noarch
libreport-python-2.1.11-53.el7.centos.x86_64
python-configobj-4.7.2-7.el7.noarch
python-gobject-base-3.22.0-1.el7_4.1.x86_64
policycoreutils-python-2.5-34.el7.x86_64
python-perf-3.10.0-1160.31.1.el7.x86_64
python-gssapi-1.2.0-3.el7.x86_64
liblouis-python-2.5.2-12.el7_4.noarch
python-libipa_hbac-1.16.5-10.el7_9.8.x86_64
python-configshell-1.1.26-1.el7.noarch
python-inotify-0.9.4-4.el7.noarch
python-kmod-0.9-4.el7.x86_64
python-lxml-3.2.1-4.el7.x86_64
python2-blockdev-2.18-5.el7.x86_64
python-linux-procfs-0.4.11-4.el7.noarch
cryptsetup-python-2.0.3-6.el7.x86_64
python-slip-dbus-0.4.0-4.el7.noarch
python-smbc-1.0.13-8.el7.x86_64
python-dns-1.12.0-4.20150617git465785f.el7.noarch
audit-libs-python-2.8.5-4.el7.x86_64
python-cffi-1.6.0-5.el7.x86_64
python2-cryptography-1.7.2-2.el7.x86_64
python-blivet-0.61.15.76-1.el7_9.noarch
python-chardet-2.2.1-3.el7.noarch
python-pycurl-7.19.0-19.el7.x86_64
rpm-python-4.11.3-45.el7.x86_64
python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch
python-brlapi-0.6.0-16.el7.x86_64
libsemanage-python-2.5-14.el7.x86_64
systemd-python-219-78.el7_9.3.x86_64
python-meh-gui-0.25.3-1.el7.noarch
python2-pyasn1-modules-0.1.9-7.el7.noarch
speech-dispatcher-python-0.7.1-15.el7.x86_64
python-pycparser-2.14-1.el7.noarch
python-idna-2.4-1.el7.noarch
libstoragemgmt-python-1.8.1-2.el7_9.noarch
python-urlgrabber-3.10-10.el7.noarch
abrt-addon-python-2.1.11-60.el7.centos.x86_64
python2-pyasn1-0.1.9-7.el7.noarch
python-ldap-2.4.15-2.el7.x86_64
python-qrcode-core-5.0.1-1.el7.noarch
python-decorator-3.4.0-3.el7.noarch
python-cups-1.9.63-6.el7.x86_64
newt-python-0.52.15-4.el7.x86_64
python-meh-0.25.3-1.el7.noarch
python-sss-murmur-1.16.5-10.el7_9.8.x86_64
python-nss-0.16.0-3.el7.x86_64
python-di-0.3-2.el7.noarch
python-libs-2.7.5-90.el7.x86_64
python2-pyatspi-2.26.0-3.el7.noarch
libpeas-loader-python-1.22.0-1.el7.x86_64
libxml2-python-2.9.1-6.el7.5.x86_64
python-coverage-3.6-0.5.b3.el7.x86_64
python-six-1.9.0-2.el7.noarch
rpm的其他用法:
rpm -qa (列出所有安装了的包)
rpm -e package (删除某个包)
rpm -qi package (查询某个包)
rpm -qf command (根据程序查询包的名字)
rpm -ql package (查询某个包所有的安装文件)
4.yum(centos)
yum的参数很多,以下是用于查找软件包的命令。
$yum list //列出所指定的软件包,后可以加上你想查找的软件包的名字
$yum list installed //列出所有已安装的软件包
$yum info installed //列出所有已安裝的软件包信息
5.whereis
whereis是查找文件或者命令的所在目录
//查找pwd命令所在的目录
[root@xamppr10 ~]# whereis pwd
pwd: /usr/bin/pwd /usr/share/man/man1/pwd.1.gz /usr/share/man/man1p/pwd.1p.gz
6.find
这个命令可用来查找系统是否安装了指定的软件包,更重要的是也可以查找自己对软件包名称记忆不是很清晰的软件包。find的查找范围很广,功能强大,再搭配用正则表达,效果很好,不过建议尽量缩小搜索范围,减少系统压力,毕竟,当系统文件多了,搜索耗费时间和资源的。
//从根目录开始查找包含”python“这个字符的文件和文件夹
$find / -name "python"
[root@xamppr10 ~]# find / -name "python"
/etc/python
/usr/bin/python
/usr/lib64/libreoffice/share/Scripts/python
/usr/share/gcc-4.8.2/python
/usr/share/gdb/python
find的详细使用有如下例子:
//在当前目录下查找,查找深度为一,查找以.jpg结尾文件,并将其转化
find . -maxdepth 1 -name *.jpg -print -exec convert
//搜索以 '.rpm' 结尾的文件并定义其权限
find / -name *.rpm -exec chmod 755 '{}' \
//从 '/' 开始进入根文件系统搜索文件和目录
find / -name file1
//罗列一个系统中所有使用了SUID控制的文件
find / -perm -u+s
//搜索属于用户 'user1' 的文件和目录
find / -user user1
//搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备
find / -xdev -name \*.rpm
//从一个目录查找并复制所有以 '.txt' 结尾的文件到另一个目录
find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents
//在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件
find /home/user1 -name \*.bin
//搜索在过去100天内未被使用过的执行文件
find /usr/bin -type f -atime +100
//搜索在10天内被创建或者修改过的文件
find /usr/bin -type f -mtime -10
//查找所有以 '.log' 结尾的文件并做成一个bzip包
find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2