How to insert a '#' in the first position of all the files?
Hi All,
how to insert a '#' in the first position of all the files based on a certain condition.
I tried this:
input_file.txt has list of names of 10 files.. the sed condition will check all the files and search for the condition (song=good) and then inserts a # and then redirects the output to a new directory and a new file output_file.txt..
when i ran this,i am not able to get the desired output.
required output:
file 1:
output which i am getting:
please help me on this
Last edited by Don Cragun; 08-10-2013 at 11:22 PM..
Reason: Add CODE and ICODE tags.
Its not in the problem of the code r the command..
and thats not only one file.. it has a set of files which is passed in the loop..the same name in which the file is given the output shud be sent in the same name to a different directory.. thats the prob i have.. moreover will it be different from linux and unix environment..
Do you want the output of all the files in input_file.txt to be in one single file? output_file.txt?
The following code will store the files after modification to a new directory with its respective file names suffixed with the extension "new"
--ahamed
When you use the $(command) and `command` forms of command substitution, the trailing <newline> character (if there is one) will be dropped from the output. There doesn't seem to be any need to assign the output of sed to a variable; just let sed write directly into your output file. The following would seem to do what you want:
This should work on any Linux or UNIX System as long as you are using a shell (such as a Korn shell [ksh] or bash) that recognizes minimal requirements specified by the POSIX standards and the Single UNIX Specifications as long as the pathnames stored in input_file.txt do not contain any whitespace characters.
Note also that using:
to print a line of output will produce different output when using different versions of echo if the variable b contains any tab characters, any occurrences of multiple adjacent spaces, starts with a minus sign, or contains any backslash characters. If you want to copy the contents of a variable to a file adding a <newline> character to the end of it (without altering spacing, leading minus signs, and backslash characters), you could replace the echo command with:
And, finally, note that using:
will only save the output from the last file processed. Each time you use > as a redirection operator in the shell, all previous output in the destination file will be replaced.
I currently have a loop that reads all .bam files in a directory (wont always be 4 like in this example,
into $id. What I am trying to do, unsucessfully, is create specific new lines in an exsisting command using
each $id. Each new line would be:
--bam ${id} \
Tried
p=$dir... (8 Replies)
Thanks to help from Don Cragun in post 302924174, I'm off and getting into trouble on my own (finally) with sed.
Here is my goal - insert \\r\n at the 60th character on each line and then every 76th character thereafter:
Input:... (3 Replies)
Hi ,
I have a file which has line similar to below
13123324234234234234234234234234234
3454546456dfhgfhgh454645654asdasfsdsddfgdgdfg
345345345mnmnbmnb346mnb4565464564564645645
Not for each line for specific position I need to insert some '|'
Positions are fixed. Like 3,5,9,11
So the... (5 Replies)
I want to insert space in 7th position of all the lines usign vi editor or sed command
Input file
12345689010
abcdefghijk
.
.
Output file
123456 89010
abcdef ghijk
.
. (7 Replies)
Hi,
I need to add Pipe (|) at 5th and 18th position of all records a file. How can I do this?
I tried to add it at 5th position using the below code. It didnt work. Please help!!!
awk '{substr($0,5,1) ~ /|/}{print}' $input_file > $temp_file (1 Reply)
Hi, guys. I have one question:
How can I search for a line with certain string in it and then insert a string into this line?
For example:
There is a file called shadow, the contents of it are below:
**************************
...
yuanz:VIRADxMsadfDF/Q:0:0:50:7:::... (9 Replies)
Hello,
It has been a long time since I have written unix code and I need to insert a variable into the first position of each line in a file. Below is an example of the script and the desired output file
Here is my short script
server="$(hostname)"
df -kg | awk '{print $1, $2, $3, $4,... (3 Replies)
Hi All,
I have a flat file with ~ as de-limiter (e.g: aaa~ba a~caa~0~d~e)
What I want is check if the 4th character is 0 and replace it with say 4. So now it becomes : aaa~ba a~caa~4~d~e.
I have to do this for the whole file, but the delimiter position remains the same, not the... (10 Replies)
Hi,
I have a EDI data file ARROWTEST of size 18246 characters. And I want to insert some data after 4200 position in the file. How I can find the position 4200 in that file....Please advise.
Regards, (5 Replies)
Hi,
I need to insert strings "0000 00" at the each line within the file.
The postion is 37 to 42.
ex.
name1 name2 0000 00
nam name 0000 00
The "0000 00" in two lines should be lined up.
I don't know why it's not lined up when I posted it.
Can anyone help? (14 Replies)