[Solved] Argument list with awk


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting [Solved] Argument list with awk
# 1  
Old 03-10-2014
RedHat [Solved] Argument list with awk

Hello,

I want to execute remote command with ssh.
For exemple, i have a variable
Code:
SERVERS=lpar1,lpar2,lpar3

I want to execute some commands like:

Code:
ssh -q lpar1 ls /
ssh -q lpar2 ls /
ssh -q lpar3 ls /

Can you help me with awk command ?

Thank you Smilie
# 2  
Old 03-10-2014
What have you tried?
# 3  
Old 03-10-2014
Hello,

Following may help you in same.

Code:
 SERVERS=lpar1,lpar2,lpar3
 Actual_SERVERS=`echo $SERVERS | sed 's/,/ /g'`
 set -A array_SERVERS $Actual_SERVERS
 for a in ${array_SERVERS[@]}
 do
 echo "ssh -q " $a "ls /"
 done


Output will be as follows.

Code:
ssh -q  lpar1 ls /
ssh -q  lpar2 ls /
ssh -q  lpar3 ls /

Thanks,
R. Singh
# 4  
Old 03-10-2014
It's good !!!
It is possible to do it with awk function ?

Thank you very much
# 5  
Old 03-10-2014
Hello,

here is the same as requested.

Code:
echo "lpar1,lpar2,lpar3" | awk -F"\," '{for(i=1;i<=NF;i++) {print "ssh -q " $i " ls /"}}'

Output will be as follows.

Code:
ssh -q lpar1 ls /
ssh -q lpar2 ls /
ssh -q lpar3 ls /


Thanks,
R. Singh
# 6  
Old 03-10-2014
Thank you it's good Smilie
# 7  
Old 03-10-2014
I don't know why you requested for a solution based on awk! I think it is an overkill when you can do it simply in shell:
Code:
SERVERS=lpar1,lpar2,lpar3

for host in ${SERVERS//,/ }
do
        ssh -q $host "ls /"
done

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Specifying a list name as argument and using that list in script.

Is there a way I can specify the name of a list as an argument to a shell script and then use the values of that list name in the script? I need to do this WITHOUT using case statements. Something like this: check.sh list1 #!/bin/bash list1="www.amazon.com www.google.com"... (9 Replies)
Discussion started by: gctaylor
9 Replies

2. Shell Programming and Scripting

Argument list too long

Hi Team, Here's the situation. I have approximately 300000 to 500000 jpg files in /appl/abcd/work_dir mv /appl/abcd/work_dir /appl/abcd/process_dir The above move command will work if the jpg files count is close to 50000 (not sure). If the count is less this mv command holds good. But if... (14 Replies)
Discussion started by: kmanivan82
14 Replies

3. UNIX for Advanced & Expert Users

Argument list too long w/ sed

Hi all, I am using GNU sed (named gsed under macports) in OSX. I have a directory with a series of files named pool_01.jpg through pool_78802.jpg. I am trying to use this command to rename the files to their checksum + extension. md5sum * | gsed -e 's/\(*\) \(.*\(\..*\)\)$/mv -v \2 \1\3/e' ... (3 Replies)
Discussion started by: openthomas
3 Replies

4. Shell Programming and Scripting

mv : Argument list too long

Hi I am using find command -- find "directory1" -type f | xargs -i mv {} "directory2" to avoid above argument list too long problem. But, issue i am facing is directory1 is having subdirectories due to this i am facing directory traversal problem as i dont want to traverse subdirectories... (9 Replies)
Discussion started by: VSom007
9 Replies

5. Shell Programming and Scripting

Passing awk variable argument to a script which is being called inside awk

consider the script below sh /opt/hqe/hqapi1-client-5.0.0/bin/hqapi.sh alert list --host=localhost --port=7443 --user=hqadmin --password=hqadmin --secure=true >/tmp/alerts.xml awk -F'' '{for(i=1;i<=NF;i++){ if($i=="Alert id") { if(id!="") if(dt!=""){ cmd="sh someScript.sh... (2 Replies)
Discussion started by: vivek d r
2 Replies

6. Shell Programming and Scripting

grep : Argument list too long

Hi, i am having some trouble with the below command, can some one suggest me the better way to do it. grep -l 'ReturnCode=1' `find $Log -newer /tmp/Failed.tmp -print | xargs ls -ld | egrep SUB | egrep -ve 'MTP' -ve 'ABC' -ve 'DEF' -ve 'JKL' -ve 'XYZ' | awk '{print $9}'` > $Home1 Its... (2 Replies)
Discussion started by: Prateek007
2 Replies

7. Shell Programming and Scripting

Argument list too long!!

Dear Experts, I have a list of 10K files in a directory. I am not able to execute any commands lile ls -lrt, awk, sed, mv, etc........ I wanna execute below command and get the output. How can I achieve it?? Pls help. root# awk -F'|' '$1 == 1' file_20120710* | wc -l /bin/awk: Argument list... (2 Replies)
Discussion started by: Naga06
2 Replies

8. Shell Programming and Scripting

Argument too long list error

I have a wrote a script which consits of the below line.. Below of this script I'm getting this error "ksh: /usr/bin/ls: arg list too long" The line is log_file_time=`ssh -i $HOME/.ssh/id_rsa -q $i ls -lrt /bp/karthik/test/data/log/$abc*|tail -1|awk '{print $8}'` And $abc alias is as "p |... (1 Reply)
Discussion started by: 22karthikreddy
1 Replies

9. UNIX for Dummies Questions & Answers

Argument list too long - SSH

Hi I executed the code for file in `ls pdb*.ent` do new_name=`echo $file | sed 's/^pdb//;s/.ent/.txt/'` mv $file $new_name done Its giving error at ' ls pdb*.ent' argument list too long i have around 150000 entries please help Thank you (6 Replies)
Discussion started by: empyrean
6 Replies

10. Shell Programming and Scripting

getopts and a list argument

Hi, I'm using bash and ksh93 compatible derivatives. In a recent getopts experience, I found myself spending far too much time on this little problem. I hope someone can help... So here's the deal. I want to build have a command line interface that accepts either zero, one, or... (4 Replies)
Discussion started by: duderonomy
4 Replies
Login or Register to Ask a Question