私のディレクトリ構造は
- フォルダ1
- フォルダ2
- フォルダ2a
- フォルダ2b
- フォルダ3
- フォルダ3a
- フォルダ3b
- フォルダ2
次のコマンドのxargs出力が混乱しています。
XXXXXX:folder1 user$ find . -type d -maxdepth 1 | xargs -I{} find {} -type d -maxdepth 1 | xargs -I{} echo {}
.
./folder2
./folder3
./folder2
./folder2/folder2b
./folder2/folder2a
./folder3
./folder3/folder3a
./folder3/folder3b
楽しみにしています。
./folder2
./folder2/folder2b
./folder2/folder2a
./folder3
./folder3/folder3a
./folder3/folder3b
開始出力は最初のfindコマンドの出力の下にありますか?
.
./folder2
./folder3
最初のfindコマンドの出力が2番目のfindコマンドにパラメータとして渡されるので、出力しないでください。出力の最初の部分はどこから来ますか?
ベストアンサー1
find . -type d -maxdepth 1
.
ディレクトリで深さが1より小さいため、出力(現在のディレクトリ)に含まれます。したがってfind
、viaを再実行すると、追加の.
出力xargs
が得られます。-mindepth 1
最初のコマンドが必要な場合があります。
$ find . -maxdepth 1 -mindepth 1 -type d | xargs -I{} find {} -type d -maxdepth 1 | xargs -I{} echo {}
./folder2
./folder2/folder2b
./folder2/folder2a
./folder3
./folder3/folder3a
./folder3/folder3b