簡體   English   中英

Linux Shell腳本更改文件模式

[英]Linux Shell Script to change file mode

我對Shell腳本完全陌生。 我知道如何更改單個文件的模式。

但是,我需要滿足以下要求,並且我的操作系統是Red Hat Enterprise Linux。

  1. 要查找目錄中具有640模式的所有文件,然后將其更改為644。

就像明智的即時通訊有10個目錄,我需要遞歸地找到所有目錄中的所有文件,並將模式更改為644。

  1. 稍后發送電子郵件,其文件名的狀態已更改。

期待您的協助以完成此要求。

一些研究要點可以幫助您前進。

  • find命令可用於在給定點下查找具有不同屬性的文件。
  • 您可以將其與-type一起使用以選擇特定的文件類型(常規文件,目錄等)。
  • 可以將它與-maxdepth一起使用,以限制它在樹中的下降深度。
  • 您可以將它與-perm一起使用,以僅選擇具有特定權限的文件。
  • 您可以將它與-print一起使用以輸出文件名,包括將它們捕獲到文本文件中以供以后發送郵件(使用mailx類的工具)。
  • 可以將它與-exec一起使用,以對每個符合條件的文件執行任意命令。
  • chmod是更改權限的命令。

例如,以下命令將在當前目錄(無子目錄)中以*.dat格式找到所有常規文件,並且具有權限640 ,然后將所有這些權限更改為644

find . -type f -perm 640 -name '*.dat' -maxdepth 1 -exec chmod 644 {} ';'

所有這些選項以及更多選項都可以在手冊頁中find使用以下命令進行find

man find

或通過尋找一些很好的解釋,例如GNU find documentation

但是, find並不是使您暈倒的工具,它會抓住每一個機會。 希望在這里提出,至少另一個十個問題你之前,你需要什么:-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM