這個問題在這里已經有了答案: 在bash中,如何在雙引號內擴展通配符? (1 個回答) 昨天關門。
假設我有這個結構:
Some Folder 1/...
Some Folder 2/...
Adobe After Effects 2020/Scripts/
Adobe After Effects 2020/foo/
Adobe After Effects 2020/bar/
Adobe After Effects 2021/Scripts/
Adobe After Effects 2021/etc/
Adobe After Effects 2022/Scripts/
Another Folder/...
我想更改所有Scripts子檔案夾的權限。我試過了:
chmod -R o rw 'Adobe After Effects */Scripts'
但這不起作用。有什么方法可以使用通配符來實作這一點?
uj5u.com熱心網友回復:
通配符不會在引號內展開,但您應該可以使用它。請注意,*現在在引號之外。
chmod -R o rw 'Adobe After Effects '*'/Scripts'
這將對具有“Adobe After Effects”啟動和Scripts??子目錄的所有檔案和目錄進行指定的更改。我不確定這o rw是一個很好的許可選擇,但您可以根據自己的需要進行修復。我更有可能使用o r,o-w.
uj5u.com熱心網友回復:
你試過了嗎 ?
find -type d -name "Adobe After Effects *" -print0 | xargs -0 -I{.} find {.} -type d -name "Scripts" -exec chmod -R o rw {} \;
它使用嵌套find,如https://unix.stackexchange.com/a/18101/249463中所述
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/455249.html
上一篇:在Linux中驗證用戶輸入
