Find for specific pattern in a line in a file and replace it
I have written a shell script that will generate three different shuffled vales
$ echo $A$B$C
zvjmaqwxgchylentifdoprkubsUFTCQEMZKVOLBWYJRPSDHIGXNA729314856
$ echo $C
729314856
$ echo $A$B
zvjmaqwxgchylentifdoprkubsUFTCQEMZKVOLBWYJRPSDHIGXNA
One is Alpha numeric, one is numbers and one is alphabets.
I also have a package.sql file which has below patterns.
grep TRANSLATE package.sql
RETURN TRANSLATE(p1_value,'0123456789', '0875642139');
RETURN TRANSLATE(p2_value,'0123456789', '0875642139');
RETURN TRANSLATE(p3_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg');
RETURN TRANSLATE(p4_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139');
So, I need to replace the patterns in the SQL file with the output I get from Shell script.
ALPHANUMERIC should replace the second part ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139
This part wont be STATIC every time in the below SQL file.
RETURN TRANSLATE(p4_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139');
And so ALPHABETS should replace the second part ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg
from the below pattern in the SQL file.
RETURN TRANSLATE(p3_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg');
And NUMBERS should be replaced in the second part of the below two patterns in the SQL FILE.
RETURN TRANSLATE(p1_value,'0123456789', '0875642139');
RETURN TRANSLATE(p2_value,'0123456789', '0875642139');
Any idea how can this be achieved.
bash shell-script awk sed grep
add a comment |
I have written a shell script that will generate three different shuffled vales
$ echo $A$B$C
zvjmaqwxgchylentifdoprkubsUFTCQEMZKVOLBWYJRPSDHIGXNA729314856
$ echo $C
729314856
$ echo $A$B
zvjmaqwxgchylentifdoprkubsUFTCQEMZKVOLBWYJRPSDHIGXNA
One is Alpha numeric, one is numbers and one is alphabets.
I also have a package.sql file which has below patterns.
grep TRANSLATE package.sql
RETURN TRANSLATE(p1_value,'0123456789', '0875642139');
RETURN TRANSLATE(p2_value,'0123456789', '0875642139');
RETURN TRANSLATE(p3_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg');
RETURN TRANSLATE(p4_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139');
So, I need to replace the patterns in the SQL file with the output I get from Shell script.
ALPHANUMERIC should replace the second part ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139
This part wont be STATIC every time in the below SQL file.
RETURN TRANSLATE(p4_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139');
And so ALPHABETS should replace the second part ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg
from the below pattern in the SQL file.
RETURN TRANSLATE(p3_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg');
And NUMBERS should be replaced in the second part of the below two patterns in the SQL FILE.
RETURN TRANSLATE(p1_value,'0123456789', '0875642139');
RETURN TRANSLATE(p2_value,'0123456789', '0875642139');
Any idea how can this be achieved.
bash shell-script awk sed grep
add a comment |
I have written a shell script that will generate three different shuffled vales
$ echo $A$B$C
zvjmaqwxgchylentifdoprkubsUFTCQEMZKVOLBWYJRPSDHIGXNA729314856
$ echo $C
729314856
$ echo $A$B
zvjmaqwxgchylentifdoprkubsUFTCQEMZKVOLBWYJRPSDHIGXNA
One is Alpha numeric, one is numbers and one is alphabets.
I also have a package.sql file which has below patterns.
grep TRANSLATE package.sql
RETURN TRANSLATE(p1_value,'0123456789', '0875642139');
RETURN TRANSLATE(p2_value,'0123456789', '0875642139');
RETURN TRANSLATE(p3_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg');
RETURN TRANSLATE(p4_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139');
So, I need to replace the patterns in the SQL file with the output I get from Shell script.
ALPHANUMERIC should replace the second part ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139
This part wont be STATIC every time in the below SQL file.
RETURN TRANSLATE(p4_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139');
And so ALPHABETS should replace the second part ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg
from the below pattern in the SQL file.
RETURN TRANSLATE(p3_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg');
And NUMBERS should be replaced in the second part of the below two patterns in the SQL FILE.
RETURN TRANSLATE(p1_value,'0123456789', '0875642139');
RETURN TRANSLATE(p2_value,'0123456789', '0875642139');
Any idea how can this be achieved.
bash shell-script awk sed grep
I have written a shell script that will generate three different shuffled vales
$ echo $A$B$C
zvjmaqwxgchylentifdoprkubsUFTCQEMZKVOLBWYJRPSDHIGXNA729314856
$ echo $C
729314856
$ echo $A$B
zvjmaqwxgchylentifdoprkubsUFTCQEMZKVOLBWYJRPSDHIGXNA
One is Alpha numeric, one is numbers and one is alphabets.
I also have a package.sql file which has below patterns.
grep TRANSLATE package.sql
RETURN TRANSLATE(p1_value,'0123456789', '0875642139');
RETURN TRANSLATE(p2_value,'0123456789', '0875642139');
RETURN TRANSLATE(p3_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg');
RETURN TRANSLATE(p4_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139');
So, I need to replace the patterns in the SQL file with the output I get from Shell script.
ALPHANUMERIC should replace the second part ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139
This part wont be STATIC every time in the below SQL file.
RETURN TRANSLATE(p4_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg0875642139');
And so ALPHABETS should replace the second part ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg
from the below pattern in the SQL file.
RETURN TRANSLATE(p3_value,'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz','ZYXWVUFEDCBATSRQPONMLKJIHGzyxwvufedcbatsrqponmlkjihg');
And NUMBERS should be replaced in the second part of the below two patterns in the SQL FILE.
RETURN TRANSLATE(p1_value,'0123456789', '0875642139');
RETURN TRANSLATE(p2_value,'0123456789', '0875642139');
Any idea how can this be achieved.
bash shell-script awk sed grep
bash shell-script awk sed grep
asked 10 mins ago
sabarish jacksonsabarish jackson
139212
139212
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Yep. You want sed
e.g. sed -e 's/d+/0987654321/'
.
^
- beginning of line.
$
- end of line.
-E
gives you extended regex features
New contributor
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%2f502453%2ffind-for-specific-pattern-in-a-line-in-a-file-and-replace-it%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
Yep. You want sed
e.g. sed -e 's/d+/0987654321/'
.
^
- beginning of line.
$
- end of line.
-E
gives you extended regex features
New contributor
add a comment |
Yep. You want sed
e.g. sed -e 's/d+/0987654321/'
.
^
- beginning of line.
$
- end of line.
-E
gives you extended regex features
New contributor
add a comment |
Yep. You want sed
e.g. sed -e 's/d+/0987654321/'
.
^
- beginning of line.
$
- end of line.
-E
gives you extended regex features
New contributor
Yep. You want sed
e.g. sed -e 's/d+/0987654321/'
.
^
- beginning of line.
$
- end of line.
-E
gives you extended regex features
New contributor
New contributor
answered 7 mins ago
mcintmcint
1
1
New contributor
New contributor
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%2f502453%2ffind-for-specific-pattern-in-a-line-in-a-file-and-replace-it%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