Double Quotes with sh -c


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Double Quotes with sh -c
# 1  
Old 01-11-2010
CPU & Memory Double Quotes with sh -c

Hi,

I am using the following command to create a log file.
Code:
echo "`date` Starting the workflow"   >>  MYLOG_`date '+%d%m%Y'`.log

My application (Informatica) takes the above command and issues the following to the UNIX server.

Code:
sh -c "echo "`date` Starting the workflow"   >>  MYLOG_`date '+%d%m%Y'`.log"

But the problem is, sometimes The above command fails on UNIX server Since i used double Quotes in echo command.

Then if i remove double Quotes from echo command then Informatica issues the following command and it executes fine.
Code:
sh -c "echo `date` Starting the workflow   >>  MYLOG_`date '+%d%m%Y'`.log"

Can somebody tell me what is the coding standard when using UNIX commands with sh -c ?

What exactly sh -c means ?

I searched online but not able to find sufficient information.

Thanks in advance Smilie

Last edited by radoulov; 01-11-2010 at 06:54 AM.. Reason: Please use code tags!
# 2  
Old 01-11-2010
The -c option tells the shell to read the commands from the given string: In your case:

Code:
sh -c "echo "`date` Starting the workflow" >> MYLOG_`date '+%d%m%Y'`.log"

The problem is, sh thinks "echo " is that string. When I run your command, I get:

Code:
$ sh -c "echo "`date` Starting the workflow" >> MYLOG_`date '+%d%m%Y'`.log"   
Mon

If you escape the inside double quotes, it should fix your problem:

Code:
$ sh -c "echo \"`date` Starting the workflow\" >> MYLOG_`date '+%d%m%Y'`.log"

$ ls -lrt MYLOG_*
-rw-r--r-- 1 jsmith jsmith 153 2010-01-11 04:59 MYLOG_11012010.log

Read the man page "man sh" regarding the -c parameter for more information.

Last edited by jsmithstl; 01-11-2010 at 07:07 AM.. Reason: Adjusted code tags
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Replace Double quotes within double quotes in a column with space while loading a CSV file

Hi All, I'm unable to load the data using sql loader where there are double quotes within the double quotes As these are optionally enclosed by double quotes. Sample Data : "221100",138.00,"D","0019/1477","44012075","49938","49938/15043000","Television - 22" Refurbished - Airwave","Supply... (6 Replies)
Discussion started by: mlavanya
6 Replies

2. Shell Programming and Scripting

Replace double quotes with a single quote within a double quoted string

Hi Froum. I have tried in vain to find a solution for this problem - I'm trying to replace any double quotes within a quoted string with a single quote, leaving everything else as is. I have the following data: Before: ... (32 Replies)
Discussion started by: pchang
32 Replies

3. Shell Programming and Scripting

Trying to remove double quotes

Hi, I am little new to forum and new on unix side. I have a small issue below: I am reading a file that has 5 columns something like below. col1,col2,col3,col4,col5 Some records are having double quoted values something like below: "value1","value2","value3","value4","value5" I need... (8 Replies)
Discussion started by: Saanvi1
8 Replies

4. Shell Programming and Scripting

Issue with Single Quotes and Double Quotes for prompt PS1

Hi, Trying to change the prompt. I have the following code. export PS1=' <${USER}@`hostname -s`>$ ' The hostname is not displayed <abc@`hostname -s`>$ uname -a AIX xyz 1 6 00F736154C00 <adcwl4h@`hostname -s`>$ If I use double quotes, then the hostname is printed properly but... (3 Replies)
Discussion started by: bobbygsk
3 Replies

5. Shell Programming and Scripting

Replace double double quotes using AWK/SED

Hi, I have data as "01/22/97-"aaaaaaaaaaaaaaaaa""aaa""aabbbbbbbbcccccc""zbcd""dddddddddeeeeeeeeefffffff" I want to remove only the Consequitive double quotes and not the one which occurs single. My O/P must be ... (2 Replies)
Discussion started by: Bhuvaneswari
2 Replies

6. Shell Programming and Scripting

File with double quotes

I have one file a.txt as below. a.txt "aaas","111111","ewwee32e","deee333", "aaas","111111","ewwee32e","deee333", "aaas","111111","ewwee32e","deee333", "aaas","111111","ewwee32e","deee333", I want to write a script to process a.txt and want the output as below in different file as below -... (2 Replies)
Discussion started by: ravigupta2u
2 Replies

7. UNIX for Dummies Questions & Answers

grep single quotes or double quotes

Unix superusers, I am new to unix but would like to learn more about grep. I am very familiar with regular expressions as i have used them for searching text files in windows based text editors. Since I am not very familiar with Unix, I dont understand when one should use GREP with the... (2 Replies)
Discussion started by: george_vandelet
2 Replies

8. Shell Programming and Scripting

Single quotes and double quotes

Hi guys, I have a sed line in double quotes which works fine, but I want it to be in single quotes here is the sed line sed "/abc_def/s/\'.*\'/\'\${abc_def}\'/" can some one give the equivalent to the above script in single quotes Thanks a ton (5 Replies)
Discussion started by: sol_nov
5 Replies

9. Shell Programming and Scripting

double quotes

I have a file with 1 column and its data is as follows; "Happy Hour, Party on 18"" staged on 20th." Can anyone please suggest me how do I remove the embedded quote in data stage while reading this column. awk or sed might be able to do the trick . but i am not sure how to accomplish this. ... (4 Replies)
Discussion started by: pavan_test
4 Replies

10. Shell Programming and Scripting

Double quotes or single quotes when using ssh?

I'm not very familiar with the ssh command. When I tried to set a variable and then echo its value on a remote machine via ssh, I found a problem. For example, $ ITSME=itsme $ ssh xxx.xxxx.xxx.xxx "ITSME=itsyou; echo $ITSME" itsme $ ssh xxx.xxxx.xxx.xxx 'ITSME=itsyou; echo $ITSME' itsyou $... (3 Replies)
Discussion started by: password636
3 Replies
Login or Register to Ask a Question