1. ホーム
  2. bash

[解決済み] 各ディレクトリに移動してコマンドを実行するには?

2022-04-15 09:59:58

質問

parent_directory内の各ディレクトリを巡回するbashスクリプトの書き方は? エグゼキューション a 命令 において 各ディレクトリ .

ディレクトリ構成は以下の通りです。

parent_directory (名前は何でもよい - パターンに従わない)

  • 001(ディレクトリ名はこのパターンで)
    • 0001.txt(ファイル名はこのパターンに従います。)
    • 0002.txt
    • 0003.txt
  • 002
    • 0001.txt
    • 0002.txt
    • 0003.txt
    • 0004.txt
  • 003
    • 0001.txt

ディレクトリの数は不明です。

どのように解決するのですか?

以下のように、カレントディレクトリが parent_directory :

for d in [0-9][0-9][0-9]
do
    ( cd "$d" && your-command-here )
done

があります。 () はサブシェルを作成し、メインスクリプトでカレントディレクトリが変更されないようにします。