Bash replace string at multiple places in a file from command line2019 Community Moderator ElectionReplace string with contents of a file using sedReplace whole line in a file from command-lineUsing sed, how can I replace a line containing a pattern with contents from another file?extract certain string, search and replace or keep a longer string contain the extracted valuesed command to replace a string from one file with entire contents of another fileReplace “_” with “|” in a file on 5th field onlytext file search yyyy/mm/dd and replace with yyyy-mm-ddBash replace string with commandremoving digits from the end of lines in text filehow to find & replace a file path listed in a file
Bash: What does "masking return values" mean?
Did CPM support custom hardware using device drivers?
How could a scammer know the apps on my phone / iTunes account?
Provisioning profile doesn't include the application-identifier and keychain-access-groups entitlements
Sword in the Stone story where the sword was held in place by electromagnets
Why does Deadpool say "You're welcome, Canada," after shooting Ryan Reynolds in the end credits?
I need to drive a 7/16" nut but am unsure how to use the socket I bought for my screwdriver
It's a yearly task, alright
Theorems like the Lovász Local Lemma?
Employee lack of ownership
Why do Australian milk farmers need to protest supermarkets' milk price?
How could a female member of a species produce eggs unto death?
How to simplify this time periods definition interface?
Professor being mistaken for a grad student
Identifying the interval from A♭ to D♯
Can hydraulic brake levers get hot when brakes overheat?
Is Mortgage interest accrued after a December payment tax deductible?
Why doesn't the EU now just force the UK to choose between referendum and no-deal?
Ban on all campaign finance?
Life insurance that covers only simultaneous/dual deaths
Have researchers managed to "reverse time"? If so, what does that mean for physics?
My adviser wants to be the first author
Meaning of "SEVERA INDEOVI VAS" from 3rd Century slab
Instead of Universal Basic Income, why not Universal Basic NEEDS?
Bash replace string at multiple places in a file from command line
2019 Community Moderator ElectionReplace string with contents of a file using sedReplace whole line in a file from command-lineUsing sed, how can I replace a line containing a pattern with contents from another file?extract certain string, search and replace or keep a longer string contain the extracted valuesed command to replace a string from one file with entire contents of another fileReplace “_” with “|” in a file on 5th field onlytext file search yyyy/mm/dd and replace with yyyy-mm-ddBash replace string with commandremoving digits from the end of lines in text filehow to find & replace a file path listed in a file
I have a file with the below content. I want to replace chrome
with chromeBackup
but not in all places
Name=chrome
XXXXXXXXXXX
Run=bin -app "chrome/chrome.sh"
XXXXXXXXXXX
Vol.apps/chrome=chrome
XXXXXXXXXXX
Required output:
Name=chrome
XXXXXXXXXXX
Run=bin -app "chromeBackup/chromeBackup.sh"
XXXXXXXXXXX
Vol.apps/chromeBackup=chromeBackup
XXXXXXXXXXX
text-processing sed string replace
add a comment |
I have a file with the below content. I want to replace chrome
with chromeBackup
but not in all places
Name=chrome
XXXXXXXXXXX
Run=bin -app "chrome/chrome.sh"
XXXXXXXXXXX
Vol.apps/chrome=chrome
XXXXXXXXXXX
Required output:
Name=chrome
XXXXXXXXXXX
Run=bin -app "chromeBackup/chromeBackup.sh"
XXXXXXXXXXX
Vol.apps/chromeBackup=chromeBackup
XXXXXXXXXXX
text-processing sed string replace
1
Can you describe the places that should and should not be replaced?
– Jeff Schaller
5 hours ago
Check my "required output"
– Nani
5 hours ago
A good answer would operate on any input; otherwise, someone could just statically print your desired output.
– Jeff Schaller
5 hours ago
2
In other words, one possible answer right now would be two tell you to open an editor and make the changes manually.
– Jeff Schaller
5 hours ago
1
Your required output doesn't really clarify your desired behavior. Do you want the change only on lines that start withRun=
orVol.apps
? Every line except ones that start withName=
? Only lines that contain a "p"? Something else?
– Kevin
3 hours ago
add a comment |
I have a file with the below content. I want to replace chrome
with chromeBackup
but not in all places
Name=chrome
XXXXXXXXXXX
Run=bin -app "chrome/chrome.sh"
XXXXXXXXXXX
Vol.apps/chrome=chrome
XXXXXXXXXXX
Required output:
Name=chrome
XXXXXXXXXXX
Run=bin -app "chromeBackup/chromeBackup.sh"
XXXXXXXXXXX
Vol.apps/chromeBackup=chromeBackup
XXXXXXXXXXX
text-processing sed string replace
I have a file with the below content. I want to replace chrome
with chromeBackup
but not in all places
Name=chrome
XXXXXXXXXXX
Run=bin -app "chrome/chrome.sh"
XXXXXXXXXXX
Vol.apps/chrome=chrome
XXXXXXXXXXX
Required output:
Name=chrome
XXXXXXXXXXX
Run=bin -app "chromeBackup/chromeBackup.sh"
XXXXXXXXXXX
Vol.apps/chromeBackup=chromeBackup
XXXXXXXXXXX
text-processing sed string replace
text-processing sed string replace
edited 5 hours ago
Nani
asked 5 hours ago
NaniNani
4617
4617
1
Can you describe the places that should and should not be replaced?
– Jeff Schaller
5 hours ago
Check my "required output"
– Nani
5 hours ago
A good answer would operate on any input; otherwise, someone could just statically print your desired output.
– Jeff Schaller
5 hours ago
2
In other words, one possible answer right now would be two tell you to open an editor and make the changes manually.
– Jeff Schaller
5 hours ago
1
Your required output doesn't really clarify your desired behavior. Do you want the change only on lines that start withRun=
orVol.apps
? Every line except ones that start withName=
? Only lines that contain a "p"? Something else?
– Kevin
3 hours ago
add a comment |
1
Can you describe the places that should and should not be replaced?
– Jeff Schaller
5 hours ago
Check my "required output"
– Nani
5 hours ago
A good answer would operate on any input; otherwise, someone could just statically print your desired output.
– Jeff Schaller
5 hours ago
2
In other words, one possible answer right now would be two tell you to open an editor and make the changes manually.
– Jeff Schaller
5 hours ago
1
Your required output doesn't really clarify your desired behavior. Do you want the change only on lines that start withRun=
orVol.apps
? Every line except ones that start withName=
? Only lines that contain a "p"? Something else?
– Kevin
3 hours ago
1
1
Can you describe the places that should and should not be replaced?
– Jeff Schaller
5 hours ago
Can you describe the places that should and should not be replaced?
– Jeff Schaller
5 hours ago
Check my "required output"
– Nani
5 hours ago
Check my "required output"
– Nani
5 hours ago
A good answer would operate on any input; otherwise, someone could just statically print your desired output.
– Jeff Schaller
5 hours ago
A good answer would operate on any input; otherwise, someone could just statically print your desired output.
– Jeff Schaller
5 hours ago
2
2
In other words, one possible answer right now would be two tell you to open an editor and make the changes manually.
– Jeff Schaller
5 hours ago
In other words, one possible answer right now would be two tell you to open an editor and make the changes manually.
– Jeff Schaller
5 hours ago
1
1
Your required output doesn't really clarify your desired behavior. Do you want the change only on lines that start with
Run=
or Vol.apps
? Every line except ones that start with Name=
? Only lines that contain a "p"? Something else?– Kevin
3 hours ago
Your required output doesn't really clarify your desired behavior. Do you want the change only on lines that start with
Run=
or Vol.apps
? Every line except ones that start with Name=
? Only lines that contain a "p"? Something else?– Kevin
3 hours ago
add a comment |
2 Answers
2
active
oldest
votes
According to the information you have provided, you want to replace it at two places, so you can use:
sed -e /^Run/s/chrome/chromeBackup/g -e /^Vol/s/chrome/chromeBackup/g file_name
3
Or possiblysed -E '/^(Run|Vol)/s/chrome/&Backup/g'
.
– Kusalananda
4 hours ago
add a comment |
More general perhaps, change all instances except those on the line starting Name=
from="chrome"; to="$fromBackup"; sed "/^Name/! s/$from/$to/g" fileToChange
or just skip the first line
from="chrome"; to="$fromBackup"; sed "2,$ s/$from/$to/g" fileToChange
or only in the lines starting Run
or Vol
from="chrome"; to="$fromBackup"; sed -E "/^Run|^Vol/ s/$from/$to/g" fileToChange
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f506329%2fbash-replace-string-at-multiple-places-in-a-file-from-command-line%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
According to the information you have provided, you want to replace it at two places, so you can use:
sed -e /^Run/s/chrome/chromeBackup/g -e /^Vol/s/chrome/chromeBackup/g file_name
3
Or possiblysed -E '/^(Run|Vol)/s/chrome/&Backup/g'
.
– Kusalananda
4 hours ago
add a comment |
According to the information you have provided, you want to replace it at two places, so you can use:
sed -e /^Run/s/chrome/chromeBackup/g -e /^Vol/s/chrome/chromeBackup/g file_name
3
Or possiblysed -E '/^(Run|Vol)/s/chrome/&Backup/g'
.
– Kusalananda
4 hours ago
add a comment |
According to the information you have provided, you want to replace it at two places, so you can use:
sed -e /^Run/s/chrome/chromeBackup/g -e /^Vol/s/chrome/chromeBackup/g file_name
According to the information you have provided, you want to replace it at two places, so you can use:
sed -e /^Run/s/chrome/chromeBackup/g -e /^Vol/s/chrome/chromeBackup/g file_name
answered 5 hours ago
Prvt_YadvPrvt_Yadv
2,75731027
2,75731027
3
Or possiblysed -E '/^(Run|Vol)/s/chrome/&Backup/g'
.
– Kusalananda
4 hours ago
add a comment |
3
Or possiblysed -E '/^(Run|Vol)/s/chrome/&Backup/g'
.
– Kusalananda
4 hours ago
3
3
Or possibly
sed -E '/^(Run|Vol)/s/chrome/&Backup/g'
.– Kusalananda
4 hours ago
Or possibly
sed -E '/^(Run|Vol)/s/chrome/&Backup/g'
.– Kusalananda
4 hours ago
add a comment |
More general perhaps, change all instances except those on the line starting Name=
from="chrome"; to="$fromBackup"; sed "/^Name/! s/$from/$to/g" fileToChange
or just skip the first line
from="chrome"; to="$fromBackup"; sed "2,$ s/$from/$to/g" fileToChange
or only in the lines starting Run
or Vol
from="chrome"; to="$fromBackup"; sed -E "/^Run|^Vol/ s/$from/$to/g" fileToChange
add a comment |
More general perhaps, change all instances except those on the line starting Name=
from="chrome"; to="$fromBackup"; sed "/^Name/! s/$from/$to/g" fileToChange
or just skip the first line
from="chrome"; to="$fromBackup"; sed "2,$ s/$from/$to/g" fileToChange
or only in the lines starting Run
or Vol
from="chrome"; to="$fromBackup"; sed -E "/^Run|^Vol/ s/$from/$to/g" fileToChange
add a comment |
More general perhaps, change all instances except those on the line starting Name=
from="chrome"; to="$fromBackup"; sed "/^Name/! s/$from/$to/g" fileToChange
or just skip the first line
from="chrome"; to="$fromBackup"; sed "2,$ s/$from/$to/g" fileToChange
or only in the lines starting Run
or Vol
from="chrome"; to="$fromBackup"; sed -E "/^Run|^Vol/ s/$from/$to/g" fileToChange
More general perhaps, change all instances except those on the line starting Name=
from="chrome"; to="$fromBackup"; sed "/^Name/! s/$from/$to/g" fileToChange
or just skip the first line
from="chrome"; to="$fromBackup"; sed "2,$ s/$from/$to/g" fileToChange
or only in the lines starting Run
or Vol
from="chrome"; to="$fromBackup"; sed -E "/^Run|^Vol/ s/$from/$to/g" fileToChange
edited 4 hours ago
answered 4 hours ago
bu5hmanbu5hman
1,310315
1,310315
add a comment |
add a comment |
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f506329%2fbash-replace-string-at-multiple-places-in-a-file-from-command-line%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Can you describe the places that should and should not be replaced?
– Jeff Schaller
5 hours ago
Check my "required output"
– Nani
5 hours ago
A good answer would operate on any input; otherwise, someone could just statically print your desired output.
– Jeff Schaller
5 hours ago
2
In other words, one possible answer right now would be two tell you to open an editor and make the changes manually.
– Jeff Schaller
5 hours ago
1
Your required output doesn't really clarify your desired behavior. Do you want the change only on lines that start with
Run=
orVol.apps
? Every line except ones that start withName=
? Only lines that contain a "p"? Something else?– Kevin
3 hours ago