導航:首頁 > 操作系統 > linuxshellfind

linuxshellfind

發布時間:2022-09-03 02:50:28

linux的find的命令(菜鳥請教一下各位前輩)

find命令的參數及使用命令:
pathname: find命令所查找的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄。
-print: find命令將匹配的文件輸出到標准輸出。
-exec: find命令對匹配的文件執行該參數所給出的shell命令。相應命令的形式為'command' { } \;,注意{ }和\;之間的空格。
-ok: 和-exec的作用相同,只不過以一種更為安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓用戶來確定是否執行。
#-print 將查找到的文件輸出到標准輸出
#-exec command {} \; —–將查到的文件執行command操作,{} 和 \;之間有空格
#-ok 和-exec相同,只不過在操作前要詢用戶
例:find . -name .svn | xargs rm -rf
====================================================
-name filename #查找名為filename的文件
-perm #按執行許可權來查找
-user username #按文件屬主來查找
-group groupname #按組來查找
-mtime -n +n #按文件更改時間來查找文件,-n指n天以內,+n指n天以前
-atime -n +n #按文件訪問時間來查GIN: 0px">
-ctime -n +n #按文件創建時間來查找文件,-n指n天以內,+n指n天以前
-nogroup #查無有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser #查無有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer f1 !f2 找文件,-n指n天以內,+n指n天以前
-ctime -n +n #按文件創建時間來查找文件,-n指n天以內,+n指n天以前
-nogroup #查無有效屬組的文件,即文件的屬組在/etc/groups中不存在
-nouser #查無有效屬主的文件,即文件的屬主在/etc/passwd中不存
-newer f1 !f2 #查更改時間比f1新但比f2舊的文件
-type b/d/c/p/l/f #查是塊設備、目錄、字元設備、管道、符號鏈接、普通文件
-size n[c] #查長度為n塊[或n位元組]的文件
-depth #使查找在進入子目錄前先行查找完本目錄
-fstype #查更改時間比f1新但比f2舊的文件
-type b/d/c/p/l/f #查是塊設備、目錄、字元設備、管道、符號鏈接、普通文件
-size n[c] #查長度為n塊[或n位元組]的文件

② Linux中的shell命令find中的:-perm 後面接 許可權位和加了橫線的許可權位有什麼不同。

#(case 1)-perm mode (比如: -perm 775)
解釋:775 前面沒有橫線是代表只要找到百分之百一樣的許可權才算
好比說一個檔案是 -rwxrwxr-x (775)就是100%的match
但是另一個檔案是 -rwxrwxrwx (777)不是100%的match,others 多了寫的許可權就不是100%,所以不match!

# (case 2) -perm -mode (例如: -perm -775)
解釋:-775 前面有橫線表示只要標示的許可權match,其他的無所謂,所以上面的第二個檔案(777的)在這個case也會match的。

這樣懂了嗎?
謝謝!

英文資料:http://unixhelp.ed.ac.uk/CGI/man-cgi?find

-perm mode
File's permission bits are exactly mode (octal or symbolic). Since an exact match is required, if you want to use this form for symbolic modes, you may have to specify a rather complex mode string. For example '-perm g=w' will only match files which have mode 0020 (that is, ones for which group write permission is the only permission set). It is more likely that you will want to use the '/' or '-' forms, for example '-perm -g=w', which matches any file with group write permission.

-perm -mode
All of the permission bits mode are set for the file. Symbolic modes are accepted in this form, and this is usually the way in which would want to use them. You must specify 'u', 'g' or 'o' if you use a symbolic mode. See the EXAMPLES section for some illustrative examples.

③ linux shell怎麼列印find 的結果的第一行的第四列

管道後面用head和awk命令:your_scripts.sh | head -1 | awk '{ print $4 }'

④ linux shell編程find 指令

#!/bin/bash
filename=`find -name "*.txt"`
sed "s/^.*/$filename--&/g" $filename

⑤ linux操作系統利用find 命令如何查找某個目錄的位置

1、linux命令如果記不得,可以使用man命令來查看某個命令的使用。但對應初學者往往看不懂或者不知道什麼場景下使用

(5)linuxshellfind擴展閱讀

Linux簡介:

Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟體、應用程序和網路協議。它支持32位和64位硬體。Linux繼承了Unix以網路為核心的設計思想,是一個性能穩定的多用戶網路操作系統。

Linux操作系統誕生於1991 年10 月5 日(這是第一次正式向外公布時間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內核。Linux可安裝在各種計算機硬體設備中,比如手機、平板電腦、路由器、視頻游戲控制台、台式計算機、大型機和超級計算機。

嚴格來講,Linux這個詞本身只表示Linux內核,但實際上人們已經習慣了用Linux來形容整個基於Linux內核,並且使用GNU工程各種工具和資料庫的操作系統。

⑥ linux怎麼通過shell查找到某一個文件的絕對路徑

1、如果查找可執行文件的絕對路徑,可以使用whereis或者which命令。

圖片說明:find命令用於查找文件,/etc是要查找文件目錄,如果完全不知道文件路徑,可以指明為/(根目錄),-name是find的參數後面指明要查找的文件名稱。這里以hosts文件為例。

⑦ Linux shell 執行這句 find 命令總是報錯,怎麼修改呢

在 Linux 系統中,find 的使用方法一般是:
#find / -name "*.c" -print

其中:/ 表示從根目錄開始查找文件;*.c 表示查找以 *.c 為後綴的 C 語言源程序;-print 表示將查找到的結果顯示在屏幕上。
至於說關於 shell 編程方面的程序調試,由於 shell 的語法相當嚴格,所以你必須要嚴格按照 shell 的語法和結構來書寫才行。哪怕差一點都不能夠通過。你再仔細檢查一下你的 shell 文件。

⑧ linux shell編程 find -name *.c -print|xargs grep $1

find
-name
*.c
-print
找*.c匹配的文件
|
管道
xargs
防止命令行過長,詳細的功能你查一下吧
grep
$1
過濾字元匹配變數$1的行
你這語應該是從腳本抄出來的吧,$1一般代表腳本或函數的第一個參數

⑨ linux Shell怎麼查找指定文件,並進入該文件所在目錄,目錄有空格

1.使用絕對路徑執行的shell文件(如/home/xxx/binfile)
直接使用dirname $0即可
2.對於使用相對路徑執行的shell文件(如 ./xxx/binfile)
pwd與dirname結合使用;pwd獲得的是執行當前shell文件時,用戶所在的位置;dirname可以獲得相對於那個位置的偏移:
例如某shell文件所在的位置是/home/user_name/work2/SNS3_server_im/Developing/trunk/im_capp/src/notify_serv/shell文件名

1 #!/bin/sh
2 pwd
3 echo `dirname $0`
執行後輸出
/home/user_name/work2/SNS3_server_im/Developing/trunk/im_capp/src
./notify_serv

⑩ Linux在執行shell腳本時提示find: command not found,單獨執行該命令可以正常執行

出現此問題的原因:linux 執行sh文件裡面缺少PATH=$PATH:/sbin,將其添加進即可解決問題。

詳細的操作步驟如下:

1、首先,需要打開計算機的桌面,右鍵單擊並選擇「打開終端」這一項,如下圖所示。

閱讀全文

與linuxshellfind相關的資料

熱點內容
電腦里總是有一些1k的文件夾 瀏覽:40
drm加密絕對安全 瀏覽:508
android滅屏流程 瀏覽:493
如何更改站點文件夾名字 瀏覽:894
如何看伺服器幾核 瀏覽:274
找酒吧設計公司用什麼app 瀏覽:680
基本初等函數的導數公式及導數的運演算法則 瀏覽:915
為什麼小米app啟動廣告關不了 瀏覽:877
空調壓縮機一直不停 瀏覽:511
養殖系統開發源碼 瀏覽:82
pdf的目錄 瀏覽:406
光遇安卓如何一個人拍視頻 瀏覽:277
怨女pdf 瀏覽:708
扭曲伺服器什麼時候開 瀏覽:23
加密貨幣換平台 瀏覽:610
手機內存壓縮軟體 瀏覽:34
生成樹是否與遍歷演算法有關 瀏覽:728
python強化學習迷宮 瀏覽:451
老包子解壓視頻 瀏覽:885
伺服器注冊是什麼意思 瀏覽:419