How to change a file's content by row?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to change a file's content by row?
# 1  
Old 11-30-2009
How to change a file's content by row?

Greetings.
So the question is basically the same as it's in the title.
I'd like to write a program that changes a file by rows. So to clarify it.
(i know i shouldn't use code,/code here but i would like to separate it)
So for example a text file looks like something like this:
Code:
Happy Birthday!
Happy Mother's day!
Happy New Year!
.
.
.
Happy Blablabla!

and the result should look like:
Code:
Happy Blablabla!
.
.
.
Happy New Year!
Happy Mother's day!
Happy Birthday!

Sorry for this stupid example, but I think it is easier to understand in this way. The reason why i post this is that i've got no idea how to start it. I've searched for some commands that might switch the lines but found nothing.
Thanks for your help in advance and sorry for my english, might have spelled something wrong!
# 2  
Old 11-30-2009
Try tac command if you are on Linux.

or Try:

Code:
awk '!(A[i++]=$0); END { while(i--) print A[i] }'  file


Last edited by dennis.jacob; 11-30-2009 at 07:37 AM.. Reason: removed the unnecessary use of {}
# 3  
Old 11-30-2009
If you are not in interested in using a command but in writing the script yourself, you can read all the lines into an array and then print the array from the highest index down to the lowest.
# 4  
Old 11-30-2009
I would like to write this as a script so i can use it whenever i will need it in the future. But i would like to change the file's structure. I mean i would like to overwrite the file.
# 5  
Old 11-30-2009
You could write the result to a new file and then mv that new file to the old file.
# 6  
Old 11-30-2009
Quote:
Originally Posted by dennis.jacob
Try tac command if you are on Linux.

or Try:

Code:
awk '!(A[i++]=$0); END { while(i--) print A[i] }'  file

Don't understand why put ! in awk,

Code:
awk '{A[i++]=$0} END { while(i--) print A[i] }' urfile

learn from dennis.jacob by using NR.

Code:
awk  '{A[NR]=$0} END {NR++; while (NR--) print A[NR]}' urfile

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script to change the file content using some conditions

Hello, I would like to change the content of the file that has few blocks starts with 10 and ends with ";" File1.txt 10 bonuses D 20 MATCHED 30 UPD COL 40 (SOL=30) 20 NOT MATCHED 30 INS COL 40 (SOL=30) ; 10 bonuses D 20 MATCHED 30 UPD COL 40... (5 Replies)
Discussion started by: Mannu2525
5 Replies

2. Shell Programming and Scripting

Change the file name and copy old file content to new file names.

Hi, I have a files in a directory as below :- ls -1 mqdepth-S1STC02 proc-mq-S1STC01 proc-mq-S1STC02 proc-mq-S1STC03 Whereever i have S1STC i need to copy them into new file with file name S2STC. expected output :- ls -1 mqdepth-S2STC02 proc-mq-S2STC01 proc-mq-S2STC02... (3 Replies)
Discussion started by: satishmallidi
3 Replies

3. Shell Programming and Scripting

Change a file content format using awk

Hi, i have a file input.txt Continent North America Country USA Capital Washington D.C. Country Canada Capital Ottawa Continent South America Country Argentina Capital Buenos Aires Country Brazil Capital Brasília Coutry Colombia Capital Bogotá and i want to get an output.txt ... (3 Replies)
Discussion started by: fastlane3000
3 Replies

4. Shell Programming and Scripting

Change the content of files but not change the date

I have 100 files in a directory , all the files have a word "error" and they are created in different date . Now I would like to change the word from "error" to "warning" , and keep the date of the files ( that means do not change the file creation date after change the word ) , can advise what can... (0 Replies)
Discussion started by: ust3
0 Replies

5. Linux

when SCP, does file content change?

Good day to you all, Just want to check here, i know when scping a file, size might change due to space issue. it might sound silly, but does file content get change too? if so, what kind of situation that might be? (1 Reply)
Discussion started by: ahtat99
1 Replies

6. Shell Programming and Scripting

Execution Problems with scan and change file data content

Input file >Read_1 XXXXXXXXXXSDFXXXXXDS ASDRXXXXXTGAGTXXXXXT TGTGATXXXXXAXXXXGXXA . . Desired output file >Read_1 XXXXXXXXXXXXXXXXXXDS ASDRXXXXXTGAGTXXXXXT TGTGATXXXXXXXXXXXXXA . . (5 Replies)
Discussion started by: patrick87
5 Replies

7. Shell Programming and Scripting

Scan and change file data content problem

Input file >Read_1 XXXXXXXXXXSDFXXXXXDS (condition 1: After the last "X" per line, if the distance is less than or equal to 3 letter, replace those not "X" letter with "X") TREXXXXXXXSDFXXXXXDS (condition 2: Before the first "X" per line, if the distance is less than or equal to 3 letter,... (12 Replies)
Discussion started by: patrick87
12 Replies

8. Shell Programming and Scripting

Change file content based on data

I have a Transaction File coming into the system. In this file, in all records the relevant data is as follows- Position 1:10 -> Transaction Code Position 252:255 -> 4 digit business code Now based on these 2 fields I have to alter value in Transaction code (Position 1:10)... (6 Replies)
Discussion started by: varunrbs
6 Replies

9. Shell Programming and Scripting

Need help to change the content for remote located file

Hi All, I have a file that sits on 4 diffrent servers, those servers are diffrent region based and they are authentication protected and that file has a diff port numbers, so when run the script it must ask my login details,region of server and port no for that file once it took from me it... (1 Reply)
Discussion started by: tmarjuna
1 Replies

10. UNIX for Advanced & Expert Users

Need help to change the content for remote located file

Hi All, I have one file that sits on 4 diffrent servers, those servers are diffrent region based and they are authentication protected and that file has a diff port numbers, so when run the script it must ask my login details,region of server and port no for that file once it took from me... (1 Reply)
Discussion started by: tmarjuna
1 Replies
Login or Register to Ask a Question