私はどのディレクトリを探したいのですが。
find /path/to/a/dir -type d -links 2
次に、見つかった各パス名ごとにfind
変数に保存されているとしますpathname
。
stow -d "$(dirname "$pathname")" -t /home/t/bin "$(basename "$pathname")"
上記を次のように組み合わせるにはどうすればよいですかfind -exec
?
find /path/to/a/dir -type d -links 2 -exec stow -d "$(dirname \{\})" -t /home/t/bin "$(basename \{\})" \;
find
シェルが実行される前にコマンド置換を実行しますが、置き換えるパス名がまだコマンド置換で見つからなかったため、機能しないようです。\{\}
ありがとうございます。
ベストアンサー1
sh -c
コマンドで梱包します。
find /path/to/dir -type d -links 2 -exec sh -c 'stow -d "$(dirname "$1")" -t /home/t/bin "$(basename "$1")"' sh {} \;