07-13-2005
Passing output of sed/echo to a variable
I understand how to use a variable in a sed command, but for the life of me I can't get the output into a variable.
I'm making a general function to replace part of a filename with a different string, so:
>>myscript this that
would change:
this_file001.txt to that_file001.txt and
this_file002.txt to that_file002.txt and so on...
here's what I have:
#! /bin/csh -f
foreach i ($1*)
set j = echo $i|sed 's/'$1'/'$2'/'
echo "Moving $i to $j"
#mv $i $j
end
But it gives me a syntax error. I played around with using eval but that wouldn't work for me either. Suggestions? (preferably without taking a new approach to my problem even though I'm sure there are other/better ways to do it)
Thanks....
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I m trying to pass variable to sed.
export var=140920060731
sed -e '/$var/d' file
but no luch so far..? any body has any idea abt it
Is there any way to pass variable to SED?
Thanks ,
Manish (2 Replies)
Discussion started by: Manish Jha
2 Replies
2. Shell Programming and Scripting
Hi,
In normal shell scripting, how do you pass the output of a command to a variable, instead of a file and be able to use it later?
The code is:
#!/bin/bash
who | cut -d" " -f1 > onlineusers
Instead of passing the output of the above command to the file called 'onlineusers'... (1 Reply)
Discussion started by: Furqan_79
1 Replies
3. Shell Programming and Scripting
Dear All,
I want to print a file.
First I tried with this
sed '2q;d' filename
it worked. But when i put following it is not working
x=2;
sed '$xq;d' filename
Would any one suggest how to pass the variable? (7 Replies)
Discussion started by: saifurshaon
7 Replies
4. Shell Programming and Scripting
Hi All,
Hope someone can advise here as I have been struggling to find a syntax that works here. I have tried a stack of combination I have seed in the forums but I think because I have needed to use "" and `` in the statments another method is found.
I am reading in lines with the following... (1 Reply)
Discussion started by: nkwilliams
1 Replies
5. Shell Programming and Scripting
Hi,
I'm new here so I want to say hello to everyone first!
I searched google and this forum for a similar problem, but wasn't successful
#! /bin/bash
I'm trying to output (echo) n lines of a text file to the screen (later into another file).
But I have problem with the sed command, it won't... (1 Reply)
Discussion started by: studiologe
1 Replies
6. Shell Programming and Scripting
Hi,
I have a problem with passing a echo output into a variable in bash
file='1990.tar'
NAME='echo $file | cut -d '.' -f1';
echo $NAME
the result is
echo $file | cut -d . -f1
however with this one,#!/bin/bash
file='1990.tar'
echo $file | cut -d '.' -f1
the result is what I... (2 Replies)
Discussion started by: 1988PF
2 Replies
7. Shell Programming and Scripting
I have a variable $WORDS that contains a string
Then i want to use sed to break it up.
echo $WORDS | sed 's// /g'
I tried setting this as a variable by doing
WORDS2=`echo $WORDS | sed 's// /g'`
But when i do this it does not return me to the prompt properly
ie.
jmpprd-v1>
jmpprd-v1>... (4 Replies)
Discussion started by: nitrobass24
4 Replies
8. Shell Programming and Scripting
Stumped with the formatting of the awk output when used with variables, e.g.:
awk -F, 'BEGIN {OFS=","} print {$2,$3,$4}' $infile1
produces the desired output (with rows), but when echoing the variable below, the output is one continuous line
var1=$(awk -F, 'BEGIN {OFS=","} print... (4 Replies)
Discussion started by: ux4me
4 Replies
9. UNIX for Dummies Questions & Answers
Hi,
I want to pass value of a variable track_line which is the line number to sed. Sed should print the lines starting from track_line till the last
line of the file. I tried the below command but it is not working.
sed -n '${track_line},$p' latest_log_file
I tried using the below too but... (1 Reply)
Discussion started by: nitinupadhyaya8
1 Replies
10. UNIX for Advanced & Expert Users
I have a below syntax its working fine...
var12=$(ps -ef | grep apache | awk '{print $2,$4}')
Im getting expected output as below:
printf "%b\n" "${VAR12}"
dell 123
dell 456
dell 457
Now I wrote a while loop.. the output of VAR12 should be passed as input parameters to while loop and results... (5 Replies)
Discussion started by: sam@sam
5 Replies
LEARN ABOUT DEBIAN
x2sys_merge
X2SYS_MERGE(1gmt) Generic Mapping Tools X2SYS_MERGE(1gmt)
NAME
x2sys_merge - Merge an updated COEs tables
SYNOPSIS
x2sys_merge -Amain_COElist.d -Mnew_COElist.d
DESCRIPTION
x2sys_merge will read two crossovers data base and output the contents of the main one updated with the COEs in the second one. The second
file should only contain updated COEs relatively to the first one. That is, it MUST NOT contain any new two tracks intersections (This
point is NOT checked in the code). This program is useful when, for any good reason like file editing NAV correction or whatever, one had
to recompute only the COEs between the edited files and the rest of the database.
-A Specify the file main_COElist.d with the main crossover error data base.
-M Specify the file new_COElist.d with the newly computed crossover error data base.
OPTIONS
No space between the option flag and the associated arguments.
EXAMPLES
To update the main COE_data.txt with the new COEs estimations saved in the smaller COE_fresh.txt, try
x2sys_merge -ACOE_data.txt -MCOE_fresh.txt > COE_updated.txt
SEE ALSO
x2sys_binlist(1), x2sys_cross(1), x2sys_datalist(1), x2sys_get(1), x2sys_init(1), x2sys_list(1), x2sys_put(1), x2sys_report(1)
GMT 4.5.7 15 Jul 2011 X2SYS_MERGE(1gmt)