日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux命令查看几位,Linux每周几个命令(一)--查找篇

發布時間:2025/4/16 linux 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux命令查看几位,Linux每周几个命令(一)--查找篇 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Linux每周幾個命令--查找篇

標簽(空格分隔): linux

當要查找某一個文件位置的時候,在linux下可以使用如下命令:

which 查看可執行文件位置

whereis 查看文件位置

locate 配合數據庫查找文件位置

find 搜尋指定目錄下的文件位置

下面對其逐個分析:

1.which

which指令是在系統配置的Path環境變量中查找某一個命令的位置,并且返回第一個搜索結果.用該指令可以很輕松的查找到執行的到底是哪一個位置的命令.

1.命令格式

which 文件名

2.命令作用

在系統PATH變量中查找,并返回第一個結果

3.使用示例

查找mysql命令位置(前提安裝了mysql)

[root@VM_105_120_centos ~]# which mysql

/usr/bin/mysql

[root@VM_105_120_centos ~]#

查找java命令位置(前提安裝了Java)

[root@VM_105_120_centos ~]# which java

/usr/java/jdk1.8.0_102/bin/java

[root@VM_105_120_centos ~]#

查找失敗時,會打印出當前PATH變量

[root@VM_105_120_centos ~]# which apache

/usr/bin/which: no apache in (/usr/java/jdk1.8.0_102/bin:/usr/java/jdk1.8.0_102/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/java/jdk1.8.0_102/bin:/root/bin:/root/bin)

[root@VM_105_120_centos ~]#

2.whereis

whereis的搜索是有限的幾種文件,但是其搜索速度很快,原因是李永樂linux的文件索引數據庫,該數據庫在centos下每天更新一次,所以到時whereis可能會查找出來已刪除的文件,如果要實時查找,在執行命令前先執行updatedb,更新數據庫索引你.

1.命令格式

whereis [選項] 文件

2.命令參數

-b 只搜索二進制文件

-B 定義二進制文件查找路徑

-m 只搜索 man 手冊

-M 定義 man 手冊查找路徑

-s 只搜索源代碼

-S 定義源代碼查找路徑

-f 終止 參數列表

-u 搜索不常見記錄

-l 輸出有效查找路徑

3.命令作用

whereis命令是定位可執行文件、源代碼文件、幫助文件在文件系統中的位置。這些文件的屬性應屬于原始代碼,二進制文件,或是幫助文件。whereis 程序還具有搜索源代碼、指定備用搜索路徑和搜索不尋常項的能力。

4.使用示例

查找出mysql位置,和which相比查找出了全部位置

[root@VM_105_120_centos ~]# whereis mysql

mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

只查找二進制文件,也就是可執行文件,結果過濾掉了gz壓縮文件

[root@VM_105_120_centos ~]# whereis -b mysql

mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql

3.locate

locate和whereis一樣都是通過數據庫查找,所以實時性會有問題,不同的是locate是查找文件的全路徑,只要匹配就列出,而且支持正則表達式.

1.命令格式

locate [OPTION]... [PATTERN]...

2.命令參數

-i 忽略大小寫

-l 指定查找數量

-r 正則匹配查找

-c 統計出符合查找規則的數量

3.命令作用

快速定位符合要求的路徑位置.

4.使用示例

locate查找mysql

[root@VM_105_120_centos ~]# locate mysql

/etc/ld.so.conf.d/mysql-x86_64.conf

/etc/logrotate.d/mysql

/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

/etc/rc.d/init.d/mysqld

/etc/rc.d/rc0.d/K36mysqld

/etc/rc.d/rc1.d/K36mysqld

.......

locate統計出含有mysql字符的數量

[root@VM_105_120_centos ~]# locate -c mysql

649

locate查找mysql結尾的文件

[root@VM_105_120_centos ~]# locate -r mysql$

/etc/logrotate.d/mysql

/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

/usr/bin/mysql

/usr/lib64/mysql

/usr/share/mysql

/var/lib/mysql

/var/lib/mysql/mysql

4.find

Linux find命令用來在指定目錄下查找文件。任何位于參數之前的字符串都將被視為欲查找的目錄名。如果使用該命令時,不設置任何參數,則find命令將在當前目錄下查找子目錄與文件。并且將查找到的子目錄和文件全部進行顯示。

1.命令格式

find path -option [ -print ] [ -exec -ok command ] {} ;

2.命令參數

-name 查找文件名匹配所給字串的所有文件,字串內可用通配符 *、?、[ ]

-gid n 查找屬于 ID 號為 n 的用戶組的所有文件。

-uid n 查找屬于 ID 號為 n 的用戶的所有文件。

-group 查找屬于用戶組名為所給字串的所有的文件。

-user 查找屬于用戶名為所給字串的所有的文件。

-nouser 查找沒有屬主的文件或目錄

-nogoroup 查找沒有屬組的文件或目錄

-perm 權限 查找具有指定權限的文件和目錄,權限的表示可以如711,644。

-size n[bckw]查找指定文件大小的文件,n后面的字符表示單位,缺省為 b,代表 512字節的塊。

-type x 查找類型為 x 的文件,x 為下列字符之一:

b 塊設備文件

c 字符設備文件

d 目錄文件

p 命名管道(FIFO)

f 普通文件

l 符號鏈接文件(symbolic links)

s socket 文件

以時間為條件查找

-amin n 查找 n 分鐘以前被訪問過的所有文件。

-atime n 查找 n 天以前 24 小時內被訪問過的所有文件。

-cmin n 查找 n 分鐘以前文件狀態被修改過的所有文件。

-ctime n 查找 n 天以前 24 小時內文件狀態被修改過的所有文件。

-mmin n 查找 n 分鐘以前文件內容被修改過的所有文件。

-mtime n 查找 n 天以前 24 小時內文件內容被修改過的所有文件。

-print:將搜索結果輸出到標準輸出。

3.使用示例

在var目錄下查找mysql

[root@VM_105_120_centos ~]# find /var -name mysql

/var/lib/mysql

/var/lib/mysql/mysql

查找usr目錄下mysql,并且類型為一般文件,最后列出詳細信息

[root@VM_105_120_centos ~]# find /usr -name mysql -type f -exec ls -l {} \;

-rwxr-xr-x 1 root root 10416008 9月 29 01:42 /usr/bin/mysql

關于mtime這個以后會用的很多

find $PATH -mtime 0 查找距當前時間 24 小時以內修改的文件

find $PATH -mtime +n 查找距當前時間 n 天以外修改的文件

find $PATH -mtime -n 查找距當前時間 n 天以內修改的文件

find $PATH -mtime n 查詢距當前時間 n 天之前 24 小時以內修改的文件

關于exec,這個常用來批量處理

find可以很好地定位到文件,但是往往我們定位到文件后還會繼續其他操作,那么exec用處就來了.舉個例子,查找tomcat的log文件,然后刪除.

[root@VM_105_120_centos ~]# find /root/apache-tomcat-8.5.6 -name *.log -exec rm {} \;

執行后直接就刪除了,也沒提醒,這顯然不合適,換成-ok,這個屬于安全模式下的-exec

[root@VM_105_120_centos ~]# find /root/apache-tomcat-8.5.6 -name *.txt -ok rm {} \;

< rm ... /root/apache-tomcat-8.5.6/webapps/austoj/WEB-INF/view/robots.txt > ? y

< rm ... /root/apache-tomcat-8.5.6/logs/localhost_access_log.2016-12-07.txt > ? y

< rm ... /root/apache-tomcat-8.5.6/logs/localhost_access_log.2016-10-23.txt > ? n

再比如查詢48小時前更改過的文件,并刪除

[root@VM_105_120_centos ~]# find -atime 2 -ok rm {} \;

< rm ... ./apache-tomcat-8.5.6/logs/localhost_access_log.2017-01-27.txt > ? y

總結

以上是生活随笔為你收集整理的linux命令查看几位,Linux每周几个命令(一)--查找篇的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。