How can I add incremental integer row in a text file using grep or awk command in linux terminal?
Clash Royale CLAN TAG#URR8PPP
I have a text file which contains 10 million+ lines. The file looks like as bellow:
1902400023
1902400029
1902400031
1902400032
I wanted to add a heading, incremental ID number and a constant SHORTCODE.
Expecting Result:
ID,MSISDN,SHORTCODE
1,1902400023,1
2,1902400029,1
3,1902400031,1
4,1902400032,1
And this will continue to till the end of file and write in another file.
linux awk grep string
add a comment |
I have a text file which contains 10 million+ lines. The file looks like as bellow:
1902400023
1902400029
1902400031
1902400032
I wanted to add a heading, incremental ID number and a constant SHORTCODE.
Expecting Result:
ID,MSISDN,SHORTCODE
1,1902400023,1
2,1902400029,1
3,1902400031,1
4,1902400032,1
And this will continue to till the end of file and write in another file.
linux awk grep string
add a comment |
I have a text file which contains 10 million+ lines. The file looks like as bellow:
1902400023
1902400029
1902400031
1902400032
I wanted to add a heading, incremental ID number and a constant SHORTCODE.
Expecting Result:
ID,MSISDN,SHORTCODE
1,1902400023,1
2,1902400029,1
3,1902400031,1
4,1902400032,1
And this will continue to till the end of file and write in another file.
linux awk grep string
I have a text file which contains 10 million+ lines. The file looks like as bellow:
1902400023
1902400029
1902400031
1902400032
I wanted to add a heading, incremental ID number and a constant SHORTCODE.
Expecting Result:
ID,MSISDN,SHORTCODE
1,1902400023,1
2,1902400029,1
3,1902400031,1
4,1902400032,1
And this will continue to till the end of file and write in another file.
linux awk grep string
linux awk grep string
asked Jan 24 at 7:06
RezuanRezuan
981210
981210
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
I guess you need an awk
code as follows
awk 'BEGIN OFS = ","; header="ID,MSISDN,SHORTCODE" NR == 1 print header
$2 = $0; $1 = NR; $3 = 1; 1' file
In the BEGIN
clause, we set the output field separator to the ,
operator and initialize the header string. When the file is processed, on the first line we insert the header and from the subsequent lines, we insert the lines as you've shown in the OP. NR
is a special variable in the context of awk
that tracks the line number which we use for your incremental counter.
1
yes exactly what I was looking for. Perfect output.
– Rezuan
Jan 24 at 7:32
add a comment |
Here you can use awk command like below to add line numbers :
$ awk 'printf("%d:%sn", NR, $0)' millionlinetextfile > linenumberedfile
I just tried your command with few medication. I got the output same as I wanted except that heading line. I used the commandawk 'printf("%d,%s,1n", NR, $0)' file1.txt > file2.txt
– Rezuan
Jan 24 at 7:27
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%2f496389%2fhow-can-i-add-incremental-integer-row-in-a-text-file-using-grep-or-awk-command-i%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
I guess you need an awk
code as follows
awk 'BEGIN OFS = ","; header="ID,MSISDN,SHORTCODE" NR == 1 print header
$2 = $0; $1 = NR; $3 = 1; 1' file
In the BEGIN
clause, we set the output field separator to the ,
operator and initialize the header string. When the file is processed, on the first line we insert the header and from the subsequent lines, we insert the lines as you've shown in the OP. NR
is a special variable in the context of awk
that tracks the line number which we use for your incremental counter.
1
yes exactly what I was looking for. Perfect output.
– Rezuan
Jan 24 at 7:32
add a comment |
I guess you need an awk
code as follows
awk 'BEGIN OFS = ","; header="ID,MSISDN,SHORTCODE" NR == 1 print header
$2 = $0; $1 = NR; $3 = 1; 1' file
In the BEGIN
clause, we set the output field separator to the ,
operator and initialize the header string. When the file is processed, on the first line we insert the header and from the subsequent lines, we insert the lines as you've shown in the OP. NR
is a special variable in the context of awk
that tracks the line number which we use for your incremental counter.
1
yes exactly what I was looking for. Perfect output.
– Rezuan
Jan 24 at 7:32
add a comment |
I guess you need an awk
code as follows
awk 'BEGIN OFS = ","; header="ID,MSISDN,SHORTCODE" NR == 1 print header
$2 = $0; $1 = NR; $3 = 1; 1' file
In the BEGIN
clause, we set the output field separator to the ,
operator and initialize the header string. When the file is processed, on the first line we insert the header and from the subsequent lines, we insert the lines as you've shown in the OP. NR
is a special variable in the context of awk
that tracks the line number which we use for your incremental counter.
I guess you need an awk
code as follows
awk 'BEGIN OFS = ","; header="ID,MSISDN,SHORTCODE" NR == 1 print header
$2 = $0; $1 = NR; $3 = 1; 1' file
In the BEGIN
clause, we set the output field separator to the ,
operator and initialize the header string. When the file is processed, on the first line we insert the header and from the subsequent lines, we insert the lines as you've shown in the OP. NR
is a special variable in the context of awk
that tracks the line number which we use for your incremental counter.
answered Jan 24 at 7:30
InianInian
4,355925
4,355925
1
yes exactly what I was looking for. Perfect output.
– Rezuan
Jan 24 at 7:32
add a comment |
1
yes exactly what I was looking for. Perfect output.
– Rezuan
Jan 24 at 7:32
1
1
yes exactly what I was looking for. Perfect output.
– Rezuan
Jan 24 at 7:32
yes exactly what I was looking for. Perfect output.
– Rezuan
Jan 24 at 7:32
add a comment |
Here you can use awk command like below to add line numbers :
$ awk 'printf("%d:%sn", NR, $0)' millionlinetextfile > linenumberedfile
I just tried your command with few medication. I got the output same as I wanted except that heading line. I used the commandawk 'printf("%d,%s,1n", NR, $0)' file1.txt > file2.txt
– Rezuan
Jan 24 at 7:27
add a comment |
Here you can use awk command like below to add line numbers :
$ awk 'printf("%d:%sn", NR, $0)' millionlinetextfile > linenumberedfile
I just tried your command with few medication. I got the output same as I wanted except that heading line. I used the commandawk 'printf("%d,%s,1n", NR, $0)' file1.txt > file2.txt
– Rezuan
Jan 24 at 7:27
add a comment |
Here you can use awk command like below to add line numbers :
$ awk 'printf("%d:%sn", NR, $0)' millionlinetextfile > linenumberedfile
Here you can use awk command like below to add line numbers :
$ awk 'printf("%d:%sn", NR, $0)' millionlinetextfile > linenumberedfile
answered Jan 24 at 7:15
cagdascagdas
1186
1186
I just tried your command with few medication. I got the output same as I wanted except that heading line. I used the commandawk 'printf("%d,%s,1n", NR, $0)' file1.txt > file2.txt
– Rezuan
Jan 24 at 7:27
add a comment |
I just tried your command with few medication. I got the output same as I wanted except that heading line. I used the commandawk 'printf("%d,%s,1n", NR, $0)' file1.txt > file2.txt
– Rezuan
Jan 24 at 7:27
I just tried your command with few medication. I got the output same as I wanted except that heading line. I used the command
awk 'printf("%d,%s,1n", NR, $0)' file1.txt > file2.txt
– Rezuan
Jan 24 at 7:27
I just tried your command with few medication. I got the output same as I wanted except that heading line. I used the command
awk 'printf("%d,%s,1n", NR, $0)' file1.txt > file2.txt
– Rezuan
Jan 24 at 7:27
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%2f496389%2fhow-can-i-add-incremental-integer-row-in-a-text-file-using-grep-or-awk-command-i%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