delete line in a file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting delete line in a file
# 1  
Old 05-17-2005
delete line in a file

Hi all,
I would like to delete a line in file.txt which has a list of filename.
example:
file_a
file_b
file_c

lets say i have file_b in my directory, then i should delete file_b in file.txt and get output file.txt with only file_a and file_b.

Below is my script, my result is still
file_a
file_b
file_c
Anyone can help???
Smilie Smilie Smilie
#!/bin/bash
while read line
do
if [[ -r $line ]]
then
sed -e '/$line/d' $1 > $1.tmp
mv $1.tmp $1
else
echo "file not readable"
fi
done < $1
# 2  
Old 05-17-2005
while read line

waits for your input each time. Is that what you need ? Or do you need a script which will check your file contents against the directory listing and then carry out your requirement.

vino
# 3  
Old 05-17-2005
MySQL Try this

sed '/file_b/d' file.txt > new_file.txt
# 4  
Old 05-17-2005
Quote:
Originally Posted by RishiPahuja
sed '/file_b/d' file.txt > new_file.txt
just wandering, is there a way to delete the line out of "file.txt" without having to redirect it to a "new_file.txt" , or do we have flush "file.txt" and copy "new_file.txt" into it?
# 5  
Old 05-17-2005
Quote:
Originally Posted by strike
just wandering, is there a way to delete the line out of "file.txt" without having to redirect it to a "new_file.txt" , or do we have flush "file.txt" and copy "new_file.txt" into it?
/bin/echo "/$line/d\nwq!" | ex -s file.txt
# 6  
Old 05-17-2005
yep that works. i was just curious
why does this work
/bin/echo "/$line/d\nwq!" | ex -s file.txt
but not this?
echo "/$line/d\nwq!" | ex -s file.txt
# 7  
Old 05-17-2005
Quote:
Originally Posted by strike
yep that works. i was just curious
why does this work
/bin/echo "/$line/d\nwq!" | ex -s file.txt
but not this?
echo "/$line/d\nwq!" | ex -s file.txt
'echo' is a built-in in bash/ksh which has a different syntax than the /bin/echo
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

File same line delete

Hi, I want to do file1 to file2. Rows will be different every time. Thanks. file1 Fru-Name :BCNMB-B Fru-Location :/chassis-1/motherboard-1 Node-Name :LMP-1-1-1 Fru-Name :BMPP2-B Fru-Location :/chassis-1/slot-1 Node-Name :CFPU-0 Fru-Name :BMPP2-B Fru-Location... (2 Replies)
Discussion started by: ozcanaydin
2 Replies

2. UNIX for Advanced & Expert Users

How to find a string in a line in UNIX file and delete that line and previous 3 lines ?

Hi , i have a file with data as below.This is same file. But actual file contains to many rows. i want to search for a string "Field 039 00" and delete that line and previous 3 lines in that file.. Can some body suggested me how can i do using either sed or awk command ? Field 004... (7 Replies)
Discussion started by: vadlamudy
7 Replies

3. Shell Programming and Scripting

How to delete either of one line from file.?

Hi gurus, I have one file it may contains one line is "START" or "FINISH" either one of them. I use below command to delete it, but it doens't work. sed '/^START\|^END/d' <inputfile > outfile anybody can help me to fix this. thanks in advance. (12 Replies)
Discussion started by: ken6503
12 Replies

4. Shell Programming and Scripting

Delete a particular line from a file

I have a file of following form 2886758410 2886758500 17 1999-Mar-18 16:26:26 1 0 52 139 1129 2886758420 2886758500 17 1999-Mar-18 16:26:35 1 0 52 139 1131 2886758420 2886758500 17 1999-Mar-18 16:26:41 0 0 56 56 1132... (4 Replies)
Discussion started by: vaibhavkorde
4 Replies

5. Shell Programming and Scripting

Delete line from file

hi all, i have trackfile.txt which contains the data as 0 /home8/mc09ats/UnixCw/t1 1 /home8/mc09ats/UnixCw/t2 2 /home8/mc09ats/UnixCw/t3 3 /home8/mc09ats/UnixCw/t4 if user says delete 1 then i want to delete 1 /home8/mc09ats/UnixCw/t2 line from... (3 Replies)
Discussion started by: AbhijitIT
3 Replies

6. Shell Programming and Scripting

Delete first line from file and more....

Hello, I have to deal with several files that will be named something like this: E00001.TXT, E00002.TXT etc. Each file will have a alpha character on the first position of the first line which I want to place in a variable, then delete the entire line leaving the remainder of text. This new file... (6 Replies)
Discussion started by: dfb500
6 Replies

7. UNIX for Dummies Questions & Answers

Delete a line from a file

Hi, Need to delete a line from a file, file is too large so cannot use vi. I know the line number that has to be deleted... How can this be done ? (8 Replies)
Discussion started by: rohini
8 Replies

8. Shell Programming and Scripting

how to delete a line from the file

Hi, I have a file which contains entries with different numbers, for example: 275|24hroff|sel,fill,dbw| 2758|24hroff|sel,fill,dbw| 2765|24hroff|sel,fill,dbw| 2920|24hroff|sel,fill,dbw| I need to delete a line which contains certian number, for instance 275 I was trying to use 'sed' but... (3 Replies)
Discussion started by: aoussenko
3 Replies

9. UNIX for Dummies Questions & Answers

How to delete line from a file

Hi , I have a file it content is like that /vol.nas/u08/aip_triage/hany/Tesko/:CC::RPAS /home/biblawh/myscript:CC::RPAS i need to search for a certain pattern inside that file and delete the line if i find this pattern without redirecting the output into another file . so i used the... (0 Replies)
Discussion started by: ramezernest
0 Replies

10. UNIX for Dummies Questions & Answers

Delete line(s) from file

What is the easiest way to delete a line from a file? I have a file that contains list for Domestic and Foreign customers. I want to delete all lines staring with Foreing. TIA (4 Replies)
Discussion started by: elchalateco
4 Replies
Login or Register to Ask a Question