How To Wiki

Howto use find and sed to make a replace in multiple files

1,795pages on
this wiki
Add New Page
Talk0 Share

With the sed command and find command you can replace all instances of a word or multiple words in multiple files

  • To replace "oldWord" with "newWord" in all the files *.c :
find . -name "*.c" -exec sed -i "s/oldWord/newWord/g" '{}' \;
  • To replace multiple words in files :
    1. Edit a temporary file "replace.txt"
    2. Add the words you want to replace on a column
    3. Add the replacement words in the second column
      • For example
        word1 replacement1
        word2 replacement2
    4. To do the task, replace all the words from the first column with the equivalent from the second column in all the files *.c, Execute :
counter=0;for f in `cat replace.txt`;do replace[counter]=$f;counter=$counter+1;done;counter2=0;
for ((a=0; a <= $counter-1; a=a+2)); do `sed -i "s/${replace[$a]}/${replace[$a+1]}/g" *.c` ;done;

From HowTo Wiki, a Wikia wiki.

Ad blocker interference detected!

Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

Also on Fandom

Random Wiki