Sed problem


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Sed problem
# 1  
Old 09-11-2008
Sed problem

Hi,

On Solaris 10 I have some problems with awk and sed which work on Linux scripts:

Config file:
# Port(s) for accepting client connections
RTSPPort=554
DefaultStorageFolder=/app/cdr


Code:

bash-3.00# awk -F"=" -v gr="888" '/RTSPPort/{$2=gr;}1' OFS="=" server.ini > server.ini.new
awk: syntax error near line 1
awk: bailing out near line 1

Above in the script instead of "888" I have $RTSPPORT read from user input.

The next one neighter. Dosn't generate errors but doesn;t make the replacement.
Code:

sed -e "s-\(^DefaultStorageFolder=\)\([^#]*\)-\1$INSTALLDIR/cdr-" server.ini > server.ini.new

Thanks,
Bianca
# 2  
Old 09-11-2008
Try the POSIX variants of those interpreters:

Code:
PATH="$(getconf PATH):$PATH"
<your commands here>

If you're using the old Solaris [/usr]/bin/sh you should use the old version of the command substitution:

Code:
PATH="`getconf PATH`:$PATH"

# 3  
Old 09-11-2008
Quote:
Originally Posted by radoulov
Try the POSIX variants of those interpreters:

Code:
PATH="$(getconf PATH):$PATH"
<your commands here>

If you're using the old Solaris [/usr]/bin/sh you should use the old version of the command substitution:

Code:
PATH="`getconf PATH`:$PATH"

Hi Radoulov,

I use this in the postinstall class ... so you say to add this line
Code:
PATH="`getconf PATH`:$PATH"

before the awk and sed commands ?
But the awk throw those errors. Sed doesn't just doesn't replace. I use /bin/sh.

Thank you,
Bianca
# 4  
Old 09-11-2008
I mean that you could try the POSIX awk and sed interpreters:
Consider the following:

Code:
$ type awk
awk is /usr/bin/awk
$ awk 9 /dev/null
awk: syntax error near line 1
awk: bailing out near line 1
$ PATH="`getconf PATH`:$PATH"
$ type awk
awk is /usr/xpg4/bin/awk
$ awk 9 /dev/null
$

# 5  
Old 09-11-2008
If I try this

nawk -FS"=", -v OFS="=", -v gr="888" '/RTSPPort/{$2=gr;}1' server.ini

I get
# Port(s) for accepting client connections
RTSPPort=554 888


It adds the value to the parameter and doesn;t replace the old one. I'm missing something ? This works with Linux awk.

Thanks,
Bianca
# 6  
Old 09-11-2008
This should work with nawk:

Code:
nawk -F= '/RTSPPort/ { OFS = "="; $2 = gr }1' gr=888 server.ini

But you could use sed for such a simple task.
# 7  
Old 09-11-2008
Radoulov,

I didn't understood your suggestion !!! OHH !!

/usr/xpg4/bin/awk -F"=" -v gr="888" '/RTSPPort/{$2=gr;}1' OFS="=" server.ini

This works.

Thanks a lot,
Bianca
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

sed Or Grep Problem OR Terminal Problem?

I don't know if you guys get this problem sometimes at Terminal but I had been having this problem since yesterday :( Maybe I overdid the Terminal. Even the codes that used to work doesn't work anymore. Here is what 's happening: * I wanted to remove lines containing digits so I used this... (25 Replies)
Discussion started by: Nexeu
25 Replies

2. UNIX for Dummies Questions & Answers

sed problem

Hi Folks, I want to replace these numbers with words as the following: $echo 1 11 223 I want to replace each number with it name (e.g. "1" replaced with "one", etc.) just to determine how sed works in such case. Thanks in advance:). Leo (8 Replies)
Discussion started by: leo_ultra_leo
8 Replies

3. Shell Programming and Scripting

sed problem

Hi i am stuck with a very silly problem :mad: below is my code echo 201010_1212_121.xml i need to replace xml with csv so i did echo 201010_1212_121.xml | sed 's/.*\.xml/.*\.csv/' echo 201010_1212_121.xml | sed 's/*.xml/*.csv/' echo 201010_1212_121.xml |... (4 Replies)
Discussion started by: aishsimplesweet
4 Replies

4. Programming

sed problem

Hi all In input file I have records like this: 0,1,0,87,0,0,"6,87","170,03",0,"43,5",0,0,0,0,"6,87","126,53"and in output file I need that these records transforms in : 0 1 0 87 0 0 6,87 170,03 0 43,5 0 0 0 0 6,87 126,53 Could you help me in this case? Please (3 Replies)
Discussion started by: shizik
3 Replies

5. Shell Programming and Scripting

SED - Problem

I have a file with a lot of numbers in it and I need to clean it up and make it look nice and proper. I found this little gem of a one-liner and basically understand what it is doing but I would like to further understand what each part of the command is doing. Being a newb, I am just trying to... (2 Replies)
Discussion started by: genedc1
2 Replies

6. Shell Programming and Scripting

Sed Problem

I have a file which contain many lines see below. "/var/www/abc>" I want to remove Both of these values "" and > (5 Replies)
Discussion started by: aliahsan81
5 Replies

7. Shell Programming and Scripting

Problem in sed.

Hi All! I am trying to use shell variables in a sed statement, but facing an error.I used the double quotes instead if single quotes in the sed statement. # sed -i -e "s/password/$decoded/g;" $CATALINA_HOME/conf/server.xml sed: -e expression #1, char 11: unterminated `s' command # ... (5 Replies)
Discussion started by: nua7
5 Replies

8. Shell Programming and Scripting

Problem with SED

Hi, I have to use SED to remove the prefix "219-" from a text file containing phone numbers and I have to remove the ":" as well. I write the following code but it does not seem to work. Can someone help me please? mohit@mohit-desktop:~$ sed -n s/219-/" "/p corp_phones_bak > noprefix1... (2 Replies)
Discussion started by: mojoman
2 Replies

9. UNIX for Dummies Questions & Answers

Problem with sed

Hi , echo "07/05/2008" | sed 's/\(..\)\/\(..\)\/\(..\)/\3\2\1/' Output :: 20050708 Expected output is 20080507 Iam not getting the bug in this. Thanks for the help -- penchal (4 Replies)
Discussion started by: penchal_boddu
4 Replies

10. UNIX for Dummies Questions & Answers

Sed Problem

I AM TRYING TO APPEND THE HOSTNAME OF A UNIX SERVER I WORK WITH SO I COULD DO A LOADING INTO A DATABASE. THE COMMAND I AM USING IS df -k | sed 's/^/dataserver /' What I intend to do is append the hostname dynamically by using the hostname command instead of having to manually enter... (1 Reply)
Discussion started by: Chelsea
1 Replies
Login or Register to Ask a Question