私はスクリプトに取り組んでいて、グーグルの助けを借りても行き詰まっています。
これが私のコードです:
`findのFOLDERの場合。 -タイプd | sed "s#^。#$(pwd)#" | sed's// \/g'` do echo "$ FOLDER" done
これにより、「」の最初のインスタンスのみが「\」に置き換えられ、残りは置き換えられません。
何か案は?
コマンドをそのように構成することを忘れて、代わりにfind -execdir
を使用してください。
find . -type d -execdir sh -c 'pwd' \;
またはzshを使用します。
for d in **/*(/); do
echo $d
done
要素のリストで同じコマンドを実行するために、ループの代わりにxargs
を使用できます。空白を処理するオプションがあります。
あなたはすべてを複雑にしていると思います。
たぶんあなたはこれだけが必要です:
find $(pwd) -type d | sed 's/ /\\ /g'