コマンドセクションで-exec
2つのコマンドを使用できますかfind
?
私は同様のことを試しました:
find . -name "*" -exec chgrp -v new_group {} ; chmod -v 770 {} \;
私は得る:
find: -exec 引数がありませ
ん chmod: アクセスできません {}: 対応するファイルまたはディレクトリがありません
chmod: アクセスできません;: 対応するファイルまたはディレクトリがありません
ベストアンサー1
コマンドの場合は、さらにコマンドを追加することもfind
できます-exec
。
find . -name "*" -exec chgrp -v new_group '{}' \; -exec chmod -v 770 '{}' \;
このコマンドの結果は、以下を使用するのと同じです。
chgrp -v new_groupファイル&&chmod -v 770ファイル
すべてのファイルに。
find
などのすべてのパラメータ-name
は実際には-exec
-size
テスト:find
これまでチェーン全体が評価されている限り、1つずつ実行されます。本物。したがって、各連続-exec
命令が実行される。〜しない限り以前の返品本物(つまり、0
コマンドの終了状態) しかし、find
論理演算子も理解する。または(-o
)といいえ(!
)。したがって、一連の-exec
テストを使用してにもかかわらず前の結果では、次のようなものを使用する必要があります。
find . -name "*" \( -exec chgrp -v new_group {} \; -o -true \) -exec chmod -v 770 {} \;