Command line argument

 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers Command line argument
# 1  
Old 06-16-2016
Command line argument

Hi Guys, I'm trying to work out how to add a command line argument inside single quotes. Would anyone be able to help please as I'm going mad Smilie

I want to be able to place the filename on command line and it then be used in a script but it needs to have quotes surrounding it.

Thanks in advance.

Last edited by mutley2202; 06-16-2016 at 08:19 AM.. Reason: incorrect
# 2  
Old 06-16-2016
Hi mutley,

I do not understand what you want to accomplish with this. Why do you need the quotes? You can add them inside your script if you really need it. Probably that's not the solution helping you best. Please clarify your problem/task.

Regards,
stomp
# 3  
Old 06-16-2016
Hi Stomp,
I'm in control of a built in script which i cant modify so am having to try find a working way of being able to change the command being run. As an example below, basically i want to be able to change the 'show log' command to a command that can be entered on command line.

Code:
 Capture_log command='show log' -o file='/home/user1/1.txt

# 4  
Old 06-16-2016
Ah. Ok. I see. You think you need to use single quotes. But single quotes does not allow Variables-expansion inside.

You can just use double quotes. Should work like you want it:

Code:
MY_COMMAND="show full log"
Capture_log command="$MY_COMMAND" -o file='/home/user1/1.txt

The quotes are only there to keep the enclosed parameter in one piece. They are not delivered within the parameter. If the quotes are missing a parameter with spaces in it would be split up at those spaces(Not what you want). Thatswhy "...." and '...' can be exchanged here. The difference between the two is explained by your example: '...' protects from variables/subprocess/... expansion. "..." however allows this.
# 5  
Old 06-16-2016
This still is far from clear. Is the line you cited not the command line? Please give way more context.

Just guessing: Do you want to read/assign something into a shell variable and use that instead of the show log, and it must be single quoted? Try double quoting the entire single quoted variable, as single quotes lose their meaning inside double quotes:
Code:
 CMD="list file"
echo '$CMD'
$CMD
echo "'$CMD'"
'list file'

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Specify an entire UNIX command as a command line argument

I'm trying to write a bash script called YN that looks like the following YN "Specify a question" "doThis" "doThat" where "doThis" will be executed if the answer is "y", otherwise "doThat". For example YN "Do you want to list the file dog?" "ls -al dog" "" Here's my attempt... (3 Replies)
Discussion started by: LeoKSimon
3 Replies

2. Shell Programming and Scripting

Can a string be a command line argument?

I would like to use a string as a command line argument...is this possible using TCSH? For example say my script is called TEST and I would like to pass a string into my script stating why the test failed. EXAMPLE: TEST "Failed due to missing statement" (4 Replies)
Discussion started by: thibodc
4 Replies

3. Shell Programming and Scripting

Help on command line argument in csh

HI , I am new to csh. I need to pass some command line arguments like ./abc.sh -os Linux -path abc -tl aa -PILX 1 I have defined the loop as shown below. But its taking "-os" switches as arguments. Its treating them as arguments. How to resolve it? while ( $#argv != 0 ) switch ($argv) ... (7 Replies)
Discussion started by: vineet.dhingra
7 Replies

4. Shell Programming and Scripting

command-line line 0: Missing yes/no argument

Hi Guys When I run the below command ssh -o 'PasswordAuthentication yes' -o 'PreferredAuthentications publickey' -i $HOME/.ssh/id_dsa Server_Name I found the below error ommand-line line 0: Missing yes/no argument Kindly help me to sort out Double post, continued... (0 Replies)
Discussion started by: Pratik4891
0 Replies

5. Shell Programming and Scripting

finding * in command line argument

I have to write a script to determine whether given command line argument ($1) contains "*" symbol or not, if $1 does not contains "*" symbol add it to $1, otherwise show message "Symbol is not required". For e.g. If we called this script q5 then after giving , $ q5 /bin Here $1 is /bin, it... (5 Replies)
Discussion started by: cynosure2009
5 Replies

6. Shell Programming and Scripting

Need Help with the argument passing Through Command line

$$$$$ (5 Replies)
Discussion started by: asirohi
5 Replies

7. Programming

Command Line Argument

Hi, I have a very simple C program which will run in UNIX. When i am passing * as the command line argument, i am gettig the below output. Program: #include <stdio.h> #include "mylibrary.h" int **environ; int main(int argc,char *argv) { int i; printf("\nHello... (2 Replies)
Discussion started by: dsudipta
2 Replies

8. Shell Programming and Scripting

assign a command line argument and a unix command to awk variables

Hi , I have a piece of code ...wherein I need to assign the following ... 1) A command line argument to a variable e.g origCount=ARGV 2) A unix command to a variable e.g result=`wc -l testFile.txt` in my awk shell script When I do this : print "origCount" origCount --> I get the... (0 Replies)
Discussion started by: sweta_doshi
0 Replies

9. Shell Programming and Scripting

How to get the value in last command line argument???

Say I want to get the value of last command line argument using the value in $# (or some other way if u can suggest) how do I do it?? $"$#" `$"$#"` These don't work :( (4 Replies)
Discussion started by: amit_oddey21
4 Replies

10. UNIX for Dummies Questions & Answers

array as command line argument !!!!

hello, can any help me how to can pass array as command line argument in korn shell. also how to read a array from command line. thanks spandu (2 Replies)
Discussion started by: spandu
2 Replies
Login or Register to Ask a Question