How can I replace ~60 print entries in 5 different files using vim or sed?
up vote
-1
down vote
favorite
Fabfile (directory) containing Python files:
print "DEBUG fab_helper DRYRUN: True"+var
print "DEBUG fab_helper DRYRUN: True"
#print "DEBUG cfn_stackname: "+cfn_stackname
To:
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True"+var)
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True")
LOGGER.DEBUG("DEBUG cfn_stackname: "+cfn_stackname)
How can I replace all these entries with my Logger module?
Should I use vim or sed?
sed vim python
add a comment |
up vote
-1
down vote
favorite
Fabfile (directory) containing Python files:
print "DEBUG fab_helper DRYRUN: True"+var
print "DEBUG fab_helper DRYRUN: True"
#print "DEBUG cfn_stackname: "+cfn_stackname
To:
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True"+var)
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True")
LOGGER.DEBUG("DEBUG cfn_stackname: "+cfn_stackname)
How can I replace all these entries with my Logger module?
Should I use vim or sed?
sed vim python
No, I corrected both typos.
– ujjain
yesterday
add a comment |
up vote
-1
down vote
favorite
up vote
-1
down vote
favorite
Fabfile (directory) containing Python files:
print "DEBUG fab_helper DRYRUN: True"+var
print "DEBUG fab_helper DRYRUN: True"
#print "DEBUG cfn_stackname: "+cfn_stackname
To:
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True"+var)
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True")
LOGGER.DEBUG("DEBUG cfn_stackname: "+cfn_stackname)
How can I replace all these entries with my Logger module?
Should I use vim or sed?
sed vim python
Fabfile (directory) containing Python files:
print "DEBUG fab_helper DRYRUN: True"+var
print "DEBUG fab_helper DRYRUN: True"
#print "DEBUG cfn_stackname: "+cfn_stackname
To:
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True"+var)
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True")
LOGGER.DEBUG("DEBUG cfn_stackname: "+cfn_stackname)
How can I replace all these entries with my Logger module?
Should I use vim or sed?
sed vim python
sed vim python
edited yesterday
asked yesterday
ujjain
2181514
2181514
No, I corrected both typos.
– ujjain
yesterday
add a comment |
No, I corrected both typos.
– ujjain
yesterday
No, I corrected both typos.
– ujjain
yesterday
No, I corrected both typos.
– ujjain
yesterday
add a comment |
1 Answer
1
active
oldest
votes
up vote
2
down vote
I assume that the missing ) on line two and the repeated " on line three are transcription mistakes?
sed 's/^#*print (.*)/LOGGER.DEBUG(1)/' ujjain
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True"+var)
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True")
LOGGER.DEBUG("DEBUG cfn_stackname: "+cfn_stackname)
Unfortunately that did not do anything, e.g. the line: print "DEBUG fab_helper DRYRUN: False" is still the same.
– ujjain
yesterday
@ujjain Then you are doing something wrong. It works for me. This would however change allprintstatements, not just the debugging ones. I'm uncertain whether this is what's wanted or not.
– Kusalananda
yesterday
I am using a MacBook. Does that matter? sed (GNU sed) 4.5 - Copyright (C) 2018 Free Software Foundation, Inc. - License GPLv3+: GNU GPL version 3 or later <gnu.org/licenses/gpl.html>.
– ujjain
yesterday
The working code on my MacBook is: sed 's/print (.*)/LOGGER.DEBUG(1)/' fabfile
– ujjain
yesterday
Python statements almost always are indented. Please trysed -e 's/^[[:space:]]*#*print (.*)/LOGGER.DEBUG(1)/'
– Mark Plotnick
yesterday
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',
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%2f487925%2fhow-can-i-replace-60-print-entries-in-5-different-files-using-vim-or-sed%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
I assume that the missing ) on line two and the repeated " on line three are transcription mistakes?
sed 's/^#*print (.*)/LOGGER.DEBUG(1)/' ujjain
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True"+var)
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True")
LOGGER.DEBUG("DEBUG cfn_stackname: "+cfn_stackname)
Unfortunately that did not do anything, e.g. the line: print "DEBUG fab_helper DRYRUN: False" is still the same.
– ujjain
yesterday
@ujjain Then you are doing something wrong. It works for me. This would however change allprintstatements, not just the debugging ones. I'm uncertain whether this is what's wanted or not.
– Kusalananda
yesterday
I am using a MacBook. Does that matter? sed (GNU sed) 4.5 - Copyright (C) 2018 Free Software Foundation, Inc. - License GPLv3+: GNU GPL version 3 or later <gnu.org/licenses/gpl.html>.
– ujjain
yesterday
The working code on my MacBook is: sed 's/print (.*)/LOGGER.DEBUG(1)/' fabfile
– ujjain
yesterday
Python statements almost always are indented. Please trysed -e 's/^[[:space:]]*#*print (.*)/LOGGER.DEBUG(1)/'
– Mark Plotnick
yesterday
add a comment |
up vote
2
down vote
I assume that the missing ) on line two and the repeated " on line three are transcription mistakes?
sed 's/^#*print (.*)/LOGGER.DEBUG(1)/' ujjain
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True"+var)
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True")
LOGGER.DEBUG("DEBUG cfn_stackname: "+cfn_stackname)
Unfortunately that did not do anything, e.g. the line: print "DEBUG fab_helper DRYRUN: False" is still the same.
– ujjain
yesterday
@ujjain Then you are doing something wrong. It works for me. This would however change allprintstatements, not just the debugging ones. I'm uncertain whether this is what's wanted or not.
– Kusalananda
yesterday
I am using a MacBook. Does that matter? sed (GNU sed) 4.5 - Copyright (C) 2018 Free Software Foundation, Inc. - License GPLv3+: GNU GPL version 3 or later <gnu.org/licenses/gpl.html>.
– ujjain
yesterday
The working code on my MacBook is: sed 's/print (.*)/LOGGER.DEBUG(1)/' fabfile
– ujjain
yesterday
Python statements almost always are indented. Please trysed -e 's/^[[:space:]]*#*print (.*)/LOGGER.DEBUG(1)/'
– Mark Plotnick
yesterday
add a comment |
up vote
2
down vote
up vote
2
down vote
I assume that the missing ) on line two and the repeated " on line three are transcription mistakes?
sed 's/^#*print (.*)/LOGGER.DEBUG(1)/' ujjain
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True"+var)
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True")
LOGGER.DEBUG("DEBUG cfn_stackname: "+cfn_stackname)
I assume that the missing ) on line two and the repeated " on line three are transcription mistakes?
sed 's/^#*print (.*)/LOGGER.DEBUG(1)/' ujjain
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True"+var)
LOGGER.DEBUG("DEBUG fab_helper DRYRUN: True")
LOGGER.DEBUG("DEBUG cfn_stackname: "+cfn_stackname)
answered yesterday
tink
4,11811218
4,11811218
Unfortunately that did not do anything, e.g. the line: print "DEBUG fab_helper DRYRUN: False" is still the same.
– ujjain
yesterday
@ujjain Then you are doing something wrong. It works for me. This would however change allprintstatements, not just the debugging ones. I'm uncertain whether this is what's wanted or not.
– Kusalananda
yesterday
I am using a MacBook. Does that matter? sed (GNU sed) 4.5 - Copyright (C) 2018 Free Software Foundation, Inc. - License GPLv3+: GNU GPL version 3 or later <gnu.org/licenses/gpl.html>.
– ujjain
yesterday
The working code on my MacBook is: sed 's/print (.*)/LOGGER.DEBUG(1)/' fabfile
– ujjain
yesterday
Python statements almost always are indented. Please trysed -e 's/^[[:space:]]*#*print (.*)/LOGGER.DEBUG(1)/'
– Mark Plotnick
yesterday
add a comment |
Unfortunately that did not do anything, e.g. the line: print "DEBUG fab_helper DRYRUN: False" is still the same.
– ujjain
yesterday
@ujjain Then you are doing something wrong. It works for me. This would however change allprintstatements, not just the debugging ones. I'm uncertain whether this is what's wanted or not.
– Kusalananda
yesterday
I am using a MacBook. Does that matter? sed (GNU sed) 4.5 - Copyright (C) 2018 Free Software Foundation, Inc. - License GPLv3+: GNU GPL version 3 or later <gnu.org/licenses/gpl.html>.
– ujjain
yesterday
The working code on my MacBook is: sed 's/print (.*)/LOGGER.DEBUG(1)/' fabfile
– ujjain
yesterday
Python statements almost always are indented. Please trysed -e 's/^[[:space:]]*#*print (.*)/LOGGER.DEBUG(1)/'
– Mark Plotnick
yesterday
Unfortunately that did not do anything, e.g. the line: print "DEBUG fab_helper DRYRUN: False" is still the same.
– ujjain
yesterday
Unfortunately that did not do anything, e.g. the line: print "DEBUG fab_helper DRYRUN: False" is still the same.
– ujjain
yesterday
@ujjain Then you are doing something wrong. It works for me. This would however change all
print statements, not just the debugging ones. I'm uncertain whether this is what's wanted or not.– Kusalananda
yesterday
@ujjain Then you are doing something wrong. It works for me. This would however change all
print statements, not just the debugging ones. I'm uncertain whether this is what's wanted or not.– Kusalananda
yesterday
I am using a MacBook. Does that matter? sed (GNU sed) 4.5 - Copyright (C) 2018 Free Software Foundation, Inc. - License GPLv3+: GNU GPL version 3 or later <gnu.org/licenses/gpl.html>.
– ujjain
yesterday
I am using a MacBook. Does that matter? sed (GNU sed) 4.5 - Copyright (C) 2018 Free Software Foundation, Inc. - License GPLv3+: GNU GPL version 3 or later <gnu.org/licenses/gpl.html>.
– ujjain
yesterday
The working code on my MacBook is: sed 's/print (.*)/LOGGER.DEBUG(1)/' fabfile
– ujjain
yesterday
The working code on my MacBook is: sed 's/print (.*)/LOGGER.DEBUG(1)/' fabfile
– ujjain
yesterday
Python statements almost always are indented. Please try
sed -e 's/^[[:space:]]*#*print (.*)/LOGGER.DEBUG(1)/'– Mark Plotnick
yesterday
Python statements almost always are indented. Please try
sed -e 's/^[[:space:]]*#*print (.*)/LOGGER.DEBUG(1)/'– Mark Plotnick
yesterday
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.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- 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%2f487925%2fhow-can-i-replace-60-print-entries-in-5-different-files-using-vim-or-sed%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
No, I corrected both typos.
– ujjain
yesterday