1
我想弄清楚如何編寫Solaris 10的shell腳本,該腳本使用if語句查找框中的所有無主文件,打印文件名和位置並將它們分配給根所有者,如果他們是無主的。Shell腳本查找無主文件
在UNIX和shell腳本中使用unix是相當新的。
請幫忙。
我想弄清楚如何編寫Solaris 10的shell腳本,該腳本使用if語句查找框中的所有無主文件,打印文件名和位置並將它們分配給根所有者,如果他們是無主的。Shell腳本查找無主文件
在UNIX和shell腳本中使用unix是相當新的。
請幫忙。
像這樣的東西應該工作:
find/-nouser -exec echo chown root '{}' \;
一旦你滿意的輸出,去掉上面,然後重新運行該行echo
。
解剖上面的命令:
find
- 命令你執行/
- 開始在/
尋找文件(所以看的所有文件)-nouser
- 僅查找文件,文件的數字用戶ID沒有相應的條目/etc/passwd
-exec
- 對我們找到的所有文件運行以下命令b在前面的條件下運行echo chown root '{}' \;
- 爲每個匹配的文件運行的命令。 {}
被替換爲完整的文件名,並且;
被轉義,因此find
看到它而不是shell將其看作是命令結束標記。的echo
是存在的,這樣就可以驗證適當的命令將可能運行chown
命令可能搞砸之前運行。
所以你運行上面的一次,確保其打印出的命令是好的,然後重新運行上面的find
命令,但你刪除echo
使chown
的只是把打印出真正執行,而不是隻。
我將如何將它變成if語句 – user3508234
您可以用您試圖完成的任務更新您的問題嗎? –
我編輯它。謝謝 – user3508234