両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン |
linux:commands:file_directory [2024/05/28 16:25] – [ファイル検索[find]] ともやん | linux:commands:file_directory [2025/02/28 04:49] (現在) – [ファイルのみ、ディレクトリのみに[chmod]] ともやん |
---|
<WRAP color_term> | <WRAP color_term> |
<WRAP color_command><html><pre> | <WRAP color_command><html><pre> |
<font color="#FF8700"><b>$</b></font> <font color="#26A269">find</font> <u style="text-decoration-style:single">/</u> <font color="#A347BA">-name</font> filename.txt | <font color="#0087FF"><b>$</b></font> <font color="#26A269">find</font> <u style="text-decoration-style:single">/</u> <font color="#A347BA">-name</font> filename.txt |
</pre></html></WRAP> | </pre></html></WRAP> |
<WRAP color_result><html><pre> | <WRAP color_result><html><pre> |
===== 文字列を含むファイルを検索[grep] ===== | ===== 文字列を含むファイルを検索[grep] ===== |
dhcp-range を含むファイルをルート配下のサブディレクトリすべて検索する。ただし、バイナリファイルと /proc ディレクトリは除外する。\\ | dhcp-range を含むファイルをルート配下のサブディレクトリすべて検索する。ただし、バイナリファイルと /proc ディレクトリは除外する。\\ |
<code> | <WRAP color_term> |
$ sudo grep -rI dhcp-range / --exclude-dir=dir | <WRAP color_command><html><pre> |
</code> | <font color="#0087FF"><b>$</b></font> <font color="#26A269"><u style="text-decoration-style:solid">sudo</u></font> <font color="#26A269">grep</font> <font color="#A347BA">-rI</font> dhcp-range <u style="text-decoration-style:solid">/</u> <font color="#A347BA">--exclude-dir=dir</font> |
| </pre></html></WRAP> |
| </WRAP> |
| |
| <WRAP mincode> |
**-r** サブディレクトリも対象とする。\\ | **-r** サブディレクトリも対象とする。\\ |
**-I** バイナリファイルは除外する。\\ | **-I** バイナリファイルは除外する。\\ |
**--exclude-dir** 指定されたディレクトリは除外する。\\ | **--exclude-dir** 指定されたディレクトリは除外する。\\ |
| </WRAP> |
| |
===== ファイルの圧縮/解凍[tar] ===== | ===== ファイルの圧縮/解凍[tar] ===== |
[[https://www.rough-and-cheap.jp/linux/find_result_formatting/|findした結果を指定したフォーマットで表示したい | 雑廉堂の雑記帳]]\\ | [[https://www.rough-and-cheap.jp/linux/find_result_formatting/|findした結果を指定したフォーマットで表示したい | 雑廉堂の雑記帳]]\\ |
| |
===== シンボルリンクをはる[ln] ===== | ===== シンボルリンクを張る[ln] ===== |
<code> | <code> |
$ ln -s [src] [dist] | $ ln -s [src] [dist] |
</code> | </code> |
| |
===== ファイルのみ、ディレクトリのみに[chmod] ===== | ===== ファイルのみ、ディレクトリのみに[find, xargs, chmod] ===== |
ファイルのみ | 参考: [[so>questions/76331097/how-can-i-make-xargs-execute-for-all-files-found-by-find-command-in-bash-scr|linux - How can I make 'xargs' execute for all files found by 'find' command in bash script? - Stack Overflow]] [[gtr>https://stackoverflow.com/questions/76331097/how-can-i-make-xargs-execute-for-all-files-found-by-find-command-in-bash-scr|翻訳]]\\ |
<code> | [[https://www.linuxtoday.com/blog/xargs-find-commands/|How to Use the xargs and find commands | Linux Today]] [[gtr>https://www.linuxtoday.com/blog/xargs-find-commands/|翻訳]]\\ |
$ sudo sh -c 'find . -type f -print | xargs chmod 644' | |
</code> | ファイルのみ - ❌ダメな例💩🤪\\ |
| <WRAP color_term> |
| <WRAP color_command><html><pre> |
| <font color="#0087FF"><b>$</b></font> <font color="#26A269"><u style="text-decoration-style:solid">sudo</u></font> <font color="#26A269">sh</font> <font color="#A347BA">-c</font> <font color="#A2734C">'find . -type f -print | xargs chmod 644'</font> |
| </pre></html></WRAP> |
| <WRAP color_result><html><pre> |
| chmod: './lib/plugins/indexmenu/scripts/fancytree/readme/icons_layout__from' にアクセスできません: そのようなファイルやディレクトリはありません |
| chmod: 'ods.png' にアクセスできません: そのようなファイルやディレクトリはありません |
| chmod: './lib/plugins/indexmenu/scripts/fancytree/skin-xp/icons-rtl__old__blue' にアクセスできません: そのようなファイルやディレクトリはありません |
| chmod: 'laxy' にアクセスできません: そのようなファイルやディレクトリはありません |
| chmod: 'expanders.gif' にアクセスできません: そのようなファイルやディレクトリはありません |
| chmod: './lib/plugins/indexmenu/scripts/fancytree/skin-xp/icons__old__blue' にアクセスできません: そのようなファイルやディレクトリはありません |
| chmod: 'lazy' にアクセスできません: そのようなファイルやディレクトリはありません |
| chmod: 'expanders.gif' にアクセスできません: そのようなファイルやディレクトリはありません |
| </pre></html></WRAP> |
| </WRAP> |
| |
| ファイルのみ - 🙆🏻♀️良い例🥰\\ |
| <WRAP round tip 90%> |
| 空白文字を含むファイル名は問題を引き起こす可能性がある🤔\\ |
| xargs と find は、空白文字ではなくヌル文字で区切る GNU 拡張機能を使用し、この問題に対処できる😉\\ |
| </WRAP> |
| <WRAP color_term> |
| <WRAP color_command><html><pre> |
| <font color="#0087FF"><b>$</b></font> <font color="#26A269"><u style="text-decoration-style:solid">sudo</u></font> <font color="#26A269">sh</font> <font color="#A347BA">-c</font> <font color="#A2734C">'find . -type f -print0 | xargs -0 chmod 644'</font> |
| </pre></html></WRAP> |
| </WRAP> |
| |
ディレクトリのみ | ディレクトリのみ |
<code> | <WRAP color_term> |
$ sudo sh -c 'find . -type d -print | xargs chmod 755' | <WRAP color_command><html><pre> |
</code> | <font color="#0087FF"><b>$</b></font> <font color="#26A269"><u style="text-decoration-style:solid">sudo</u></font> <font color="#26A269">sh</font> <font color="#A347BA">-c</font> <font color="#A2734C">'find . -type d -print0 | xargs -0 chmod 755'</font> |
| </pre></html></WRAP> |
| </WRAP> |
| |
===== 巨大ファイルを作成[dd] ===== | ===== 巨大ファイルを作成[dd] ===== |
===== 参考文献 ===== | ===== 参考文献 ===== |
[[http://www.atmarkit.co.jp/flinux/rensai/linuxtips/012easycd.html|特定のディレクトリ間を素早く移動するには]]\\ | [[http://www.atmarkit.co.jp/flinux/rensai/linuxtips/012easycd.html|特定のディレクトリ間を素早く移動するには]]\\ |
| [[so>questions/42828021/removing-files-with-rm-using-find-and-xargs|linux - Removing files with rm using find and xargs - Stack Overflow]] [[gtr>https://stackoverflow.com/questions/42828021/removing-files-with-rm-using-find-and-xargs|翻訳]]\\ |
| |