which:查看可執(zhí)行文件的位置
which 命令
whereis:查看文件的位置,只能用于程序名的搜索
whereis [選項(xiàng)] 命令
-b 定位可執(zhí)行文件。
-m 定位幫助文件。
-s 定位源代碼文件。
-u 搜索默認(rèn)路徑下除可執(zhí)行文件、源代碼文件、幫助文件以外的其它文件。
find命令:用于在文件樹中查找文件
find 路徑 [選項(xiàng)] 文件名稱
參數(shù) 含義
-name 按照文件名查找文件
-perm 按文件權(quán)限查找文件
-user 按文件屬主查找文件
-group 按照文件所屬的組來查找文件。
-type 查找某一類型的文件,諸如:
b - 塊設(shè)備文件
d - 目錄
c - 字符設(shè)備文件
l - 符號(hào)鏈接文件
p - 管道文件
f - 普通文件
-size n :[c] 查找文件長(zhǎng)度為n塊文件,帶有c時(shí)表文件字節(jié)大小
-amin n 查找系統(tǒng)中最后N分鐘訪問的文件
-atime n 查找系統(tǒng)中最后n*24小時(shí)訪問的文件
-cmin n 查找系統(tǒng)中最后N分鐘被改變文件狀態(tài)的文件
-ctime n 查找系統(tǒng)中最后n*24小時(shí)被改變文件狀態(tài)的文件
-mmin n 查找系統(tǒng)中最后N分鐘被改變文件數(shù)據(jù)的文件
-mtime n 查找系統(tǒng)中最后n*24小時(shí)被改變文件數(shù)據(jù)的文件
(用減號(hào)-來限定更改時(shí)間在距今n日以內(nèi)的文件,而用加號(hào)+來限定更改時(shí)間在距今n日以前的文件。 )
-maxdepth n 最大查找目錄深度
-prune 選項(xiàng)來指出需要忽略的目錄。在使用-prune選項(xiàng)時(shí)要當(dāng)心,因?yàn)槿绻阃瑫r(shí)使用了-depth選項(xiàng),那么-prune選項(xiàng)就會(huì)被find命令忽略
-newer 如果希望查找更改時(shí)間比某個(gè)文件新但比另一個(gè)文件舊的所有文件,可以使用-newer選項(xiàng)
#示例:
find . -name "*.c" #將當(dāng)前目錄及其子目錄下所有文件后綴為 .c 的文件列出來
find . -type f #將當(dāng)前目錄及其子目錄中的所有文件列出
find . -ctime 20 #將當(dāng)前目錄及其子目錄下所有最近 20 天內(nèi)更新過的文件列出
find /var/log -type f -mtime +7 -ok rm {} \; #查找 /var/log 目錄中更改時(shí)間在 7 日以前的普通文件,并在刪除之前詢問它們
示例:
使用-name參數(shù)查看/etc目錄下面所有的.conf結(jié)尾的配置文件:
[root@linuxcool ~]# find /etc -name "*.conf
使用-size參數(shù)查看/etc目錄下面大于1M的文件:
[root@linuxcool ~]# find /etc -size +1M
在/var/log目錄下忽略大小寫查找以.log結(jié)尾的文件名:
[root@linuxcool ~]# find /var/log -iname "*.log"
在當(dāng)前目錄下查找超過七天內(nèi)被訪問過的所有文件:
[root@linuxcool ~]# find . -type f -atime +7
在當(dāng)前目錄下查找訪問時(shí)間超過10分鐘的所有文件:
[root@linuxcool ~]# find . -type f -amin +10
找出/home下不是以.txt結(jié)尾的文件:
[root@linuxcool ~]# find /home ! -name "*.txt"
在整個(gè)文件系統(tǒng)中找出所有歸屬于 linuxprobe 用戶的文件并復(fù)制到 /root/findresults 目錄:
[root@linuxprobe ~]# find / -user linuxprobe -exec cp -a {} /root/findresults/
查找 /var/log 目錄中更改時(shí)間在 7 日以前的普通文件,并刪除
find /var/log -type f -mtime +7 -exec rm -f {}
輸出重定向中用到的符號(hào)及其作用
命令 > 文件:將標(biāo)準(zhǔn)輸出重定向到一個(gè)文件中(清空原有文件的數(shù)據(jù))
命令 2> 文件:將錯(cuò)誤輸出重定向到一個(gè)文件中(清空原有文件的數(shù)據(jù))
命令 >> 文件:將標(biāo)準(zhǔn)輸出重定向到一個(gè)文件中(追加到原有內(nèi)容的后面)
命令 2>> 文件:將錯(cuò)誤輸出重定向到一個(gè)文件中(追加到原有內(nèi)容的后面)
命令 &>> 文件:將標(biāo)準(zhǔn)輸出與錯(cuò)誤輸出共同寫入到文件中(追加到原有內(nèi)容的后面)
管道符命令 | :把前一個(gè)命令原本要輸出到屏幕的數(shù)據(jù)當(dāng)作是后一個(gè)命令的標(biāo)準(zhǔn)輸入
格式為:命令 A | 命令 B
匹配關(guān)鍵詞/sbin/nologin 找出了所有被限制登錄系統(tǒng)的用戶:
[root@linuxprobe ~]# grep "/sbin/nologin" /etc/passwd | wc -l
用翻頁(yè)的形式查看/etc 目錄中的文件列表及屬性信息:
[root@linuxprobe ~]# ls -l /etc/ | more
用一條命令來完成密碼重置:
[root@linuxprobe ~]# echo "linuxprobe" | passwd --stdin root
命令行的通配符
星號(hào)(*)代表匹配零個(gè)或多個(gè)字符
問號(hào)(?)代表匹配單個(gè)字符
中括號(hào)內(nèi)加上數(shù)字[0-9]代表匹配 0~9 之間的單個(gè)數(shù)字的字符,而中括號(hào)內(nèi)加上字母[abc]則是代表匹配 a、b、c 三個(gè)字符中的任意一個(gè)字符文章來源:http://www.zghlxwxcb.cn/news/detail-724168.html
示例:
匹配所有在/dev 目錄中且以 sda 開頭的文件:
[root@linuxprobe ~]# ls -l /dev/sda*
查看文件名為 sda 開頭,但是后面還緊跟其他某一個(gè)字符的文件的相關(guān)信息:
[root@linuxprobe ~]# ls -l /dev/sda?
常用的轉(zhuǎn)義字符
反斜杠\:使反斜杠后面的一個(gè)變量變?yōu)閱渭兊淖址?br> 單引號(hào)‘:轉(zhuǎn)義其中所有的變量為單純的字符串。
雙引號(hào)“:保留其中的變量屬性,不進(jìn)行轉(zhuǎn)義處理。
反引號(hào)`:把其中的命令執(zhí)行后返回結(jié)果。文章來源地址http://www.zghlxwxcb.cn/news/detail-724168.html
示例:
定義一個(gè)名為 PRICE 的變量并賦值為 5,然后輸出以雙引號(hào)括起來的字符串與變量信息
[root@linuxprobe ~]# PRICE=5
[root@linuxprobe ~]# echo "Price is $PRICE"
Price is 5
要想讓第一個(gè)"$"乖乖地作為美元符號(hào),那么就需要使用反斜杠(\)來進(jìn)行轉(zhuǎn)義,將這個(gè)命令提取符轉(zhuǎn)義成單純的文本,去除其特殊功能:
[root@linuxprobe ~]# echo "Price is \\$$PRICE"
Price is $5
到了這里,關(guān)于【Linux常用命令12】搜索命令及特殊字符的使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!