[解決済み] findで正規表現によるファイル名検索をする方法
2023-01-22 21:25:42
質問
日付のあるファイル、3日以上前のファイルをすべて探そうとしています。
find /home/test -name 'test.log.\d{4}-d{2}-d{2}.zip' -mtime 3
何も表示されません。何が問題なのでしょうか?
どうすればよいのでしょうか?
find /home/test -regextype posix-extended -regex '^.*test\.log\.[0-9]{4}-[0-9]{2}-[0-9]{2}\.zip' -mtime +3
-
-name
用途 グローブラー 式を使用します。 別名ワイルドカード。必要なのは-regex
-
間隔を意図したとおりに使うには
に伝える必要があります。
find
を使うように 拡張された 正規表現 を経由して-regextype posix-extended
フラグ -
ピリオドをエスケープする必要があります。
なぜなら、正規表現ではピリオドは
という特別な意味を持つからです。
という特別な意味を持つからです。
文字
. あなたが欲しいのは
で示されるリテラルピリオドです。
\.
-
であるファイルのみにマッチするように
より大きい
3 日以上前のものだけにマッチさせるには、番号の前に
+
として で-mtime +3
.
コンセプトの証明
$ find . -regextype posix-extended -regex '^.*test\.log\.[0-9]{4}-[0-9]{2}-[0-9]{2}\.zip'
./test.log.1234-12-12.zip
関連
-
[解決済み] Bashスクリプトのソースディレクトリをスクリプト自体から取得するにはどうすればよいですか?
-
[解決済み] Bashシェルスクリプトでディレクトリが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] Bashで通常のファイルが存在しないかどうかを判断する方法を教えてください。
-
[解決済み] Bashで文字列変数を連結する方法
-
[解決済み] Bashで文字列が部分文字列を含むかどうかをチェックする方法
-
[解決済み] Bashスクリプトからプログラムが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] すべてのディレクトリとサブディレクトリを再帰的にgrepするにはどうしたらいいですか?
-
[解決済み] あるディレクトリにあるすべてのコード行を再帰的にカウントするにはどうすればよいですか?
-
[解決済み] grep --exclude/--include構文を使って特定のファイルをgrepしないようにする
-
[解決済み] IFS=$' \n' の正確な意味は何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】X時間以上前のファイルを削除する方法
-
[解決済み] Xcodeプロジェクトにあるコード行数を調べるには?
-
[解決済み] bashのループリストで空白をエスケープするには?
-
[解決済み] find "の結果をカウントするのに最適な方法は何ですか?
-
[解決済み] Bashはどのように異なるディレクトリコンテキストでコマンドを実行できますか?
-
[解決済み] MSYSでフォルダを閲覧する
-
[解決済み] bashでHMAC-SHA1
-
[解決済み] 引用符で囲まれたパラメータを受け取り、再送するためのBashスクリプト
-
[解決済み] Bash: 関数をパラメータとして渡す
-
[解決済み] sedの出力を変数に格納する[重複]。