Simplifying sed/tr


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Simplifying sed/tr
# 1  
Old 08-01-2012
Simplifying sed/tr

Hi all, I don't have much experience with shell scripting and I was wondering if there's a shorter way to write this.

Basically, given a list of strings separated by new lines, I want to prepend each string with a prefix and separate the strings with commas
i.e.
Code:
stra
strb
strc

becomes
Code:
prefix:stra,prefix:strb,prefix:strc

The command I'm currently using is:
Code:
cat input | sed 's/^/'text:'/' | tr '\n' ',' | sed 's/,$//g'

This seems a little wordy though for something this simple. Any ideas?

Thanks!

Last edited by Franklin52; 08-01-2012 at 04:51 PM.. Reason: Please use code tags for data and code samples, thank you
# 2  
Old 08-01-2012
Code:
sed -e 's/^/prefix:/' myFile| sed -e :a -e '$!N;s/ *\n/,/;ta' |  sed 's/,$//'
or
awk '{$0="prefix:"$0;s=(s)?s","$0:$0};END{print s}' myFile


Last edited by vgersh99; 08-01-2012 at 04:18 PM..
This User Gave Thanks to vgersh99 For This Post:
# 3  
Old 08-01-2012
Code:
sed 's/^/prefix:/' input | paste -sd, -

Regards and welcome to the forum,
Alister
These 2 Users Gave Thanks to alister For This Post:
# 4  
Old 08-02-2012
Thanks guys! That definitely looks much better.
Login or Register to Ask a Question

Previous Thread | Next Thread

7 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Simplifying awk/sed short pipeline

I have a file like this: FileName,Well,Sample Description,Size ,Calibrated Conc. ,Assigned Conc. ,Peak Molarity ,Area,% Integrated Area,Peak Comment,Observations 2017-11-15 - 13.49.50.D1000,EL1,Electronic Ladder,25,5.22,,321,0.803,,,Lower Marker 2017-11-15 - 13.49.50.D1000,EL1,Electronic... (6 Replies)
Discussion started by: Xterra
6 Replies

2. Shell Programming and Scripting

need help simplifying an if statement

the code below is a small fragment of the actual line, in fact i have about 20 values i'm comparing and want to know if it can be simplified. other than the x.xx.xx format of the value they have nothing in common if || || ; then do this else do this fiany suggestions? (6 Replies)
Discussion started by: crimso
6 Replies

3. Shell Programming and Scripting

Simplifying IPv6 addresses from user input

hi friends, im new to scripting and am tiring out to valid an ip address if user inputs 9 : 003 : 0 : 0 : 100 : 256 ,i need to suppress all leading zeros and single zero ie out put for the same should be 9 : 3 : : : 100 : 256 can any help using awk ,regular expression to split the string... (1 Reply)
Discussion started by: sandeepjeede
1 Replies

4. UNIX for Advanced & Expert Users

Simplifying my script

Hi, Is there a way to simplify the below script? Because I am having problems executing this if I added this to CRON. Also, you may notice that its objective is to put all information in one file (rm1.txt). And in addition file "sRMR_6.txt" to sRMR_23.txt" changes its information everyday.... (4 Replies)
Discussion started by: vibora
4 Replies

5. Shell Programming and Scripting

simplifying awk

tcpdump -nr testdump|awk '!/:/;gsub(/^+|+$/,""){print $3};a!~$0;{a=$0};{print $3};!/length/;/./;!/11\:/;!/8 7 6 5 4 3 2 1/;!/UDP/{b=$0} END {for (j=i-1; j>=0; ) print b };{for (i=NF; i>0; i--) printf("%s ",i);printf ("\n")}' *NOTE IN j>=0 the ; ) was given a space since a smiley is showing up...... (1 Reply)
Discussion started by: sil
1 Replies

6. Shell Programming and Scripting

Simplifying the For loop

Is there a way to simplify stating 1 through to 10, for example in a for loop construct? for x in 1 2 3 4 5 6 7 8 9 10 do .... done I have tried (1-10) with no luck.. thanks (2 Replies)
Discussion started by: sirtrancealot
2 Replies

7. Shell Programming and Scripting

Help in simplifying a sed command

I need to do a substitution: CPF to ,C,P,F, CPM to ,C,P,M, SPF to ,S,P,F etc. I can do each of them with separate substitutions e.g. s/CPF/,C,P,F/ but I'd like to know if there is a more elegant solution. In general, how can I use the results of the search in the substitution, ... (3 Replies)
Discussion started by: wvdeijk
3 Replies
Login or Register to Ask a Question