0

たくさんのフォルダとファイルが入ったフォルダがあります。私は検索を行い、次のものを置き換えたいと思います:

  • 前:'my_folder。'
  • 後:''(空白)

これが私が試したものです(うまくいきませんでしたが)

find ./ -type f -exec sed -i ‘s/my_folder.//’ {} \;

ここでの正しいコマンドは何ですか?

4

1 に答える 1

0

あなたが探しているコマンドは、ちょっと次のようなものです:

find ./ -type f -exec sed -e "/my_folder./s/my_folder.//" {} \;

ただし、出力は画面に印刷され、ファイルに書き戻されることはありません。そのようなことを達成するには、私の意見では複数行のコードが必要ですが、ここでも「意見」がキーワードです。このようなものが役立つかもしれません

for file in $(find ./ -type -f)
do
  cat ${file} | sed -e "/my_folder./s/my_folder.//" > MyTempFile
  cat MyTempFile > ${file} # use this instead of 'mv' command to preserve file perms
done

お役に立てれば

于 2013-03-25T04:52:11.197 に答える