次のような長い道があるとしましょう。
/a/b/c/d/e/f
コマンドを実行したい。ただパスの各サブパスで:
たとえば、私のコマンドがあれば、cmd
これを行うことができる1行を探しています(おそらく1行ループを使用しています)。
cmd /a
cmd /a/b
cmd /a/b/c
cmd /a/b/c/d
cmd /a/b/c/d/e
cmd /a/b/c/d/e/f
一つこれが必要な理由の1つ(他のタスクにも必要です)は、Unixチームの誰かがcd
このタスクを段階的に実行できるようにしたい/a/b/c/d/e/f
からです。chmod g+x
回避策があることを確認してください。)避けたいchmod -R g+x /a
。
私は主にzshで作業していますが、特定のzsh機能を利用できるものがあるかどうか疑問に思います。
ベストアンサー1
それはまるで
path=/a/b/c/d/e/f
while test "$path" != "/"; do
chmod g+x "$path"
path=$(dirname "$path")
done