GNU/Linux >> Linux の 問題 >  >> Linux

ディレクトリとサブディレクトリで検索して sed に置き換えます

あなたの find ディレクトリ名を sed に送信しないようにするには、そのようにする必要があります :

find ./ -type f -exec sed -i -e 's/apple/orange/g' {} \;

大規模な s&r タスクの場合は、grep と xargs を使用する方が適切で高速です。たとえば、;

grep -rl 'apples' /dir_to_search_under | xargs sed -i 's/apples/oranges/g'

Linux
  1. シェルスクリプトでの検索と置換

  2. ディレクトリを見つけて名前を変更する

  3. 一致するテキストを見つけて次の行を置き換える

  1. findコマンドを使用してLinux上のファイルとディレクトリを検索します

  2. Linuxではfindをfdに置き換えます

  3. mtime - と + で違いを見つける

  1. Linuxでsedを使用してテキストファイルを検索および置換する

  2. 名前でファイルとディレクトリを削除します。そのようなファイル、又はディレクトリはありません?

  3. grep と sed を使用して文字列を検索して置換する