Sponsored Content
Top Forums Shell Programming and Scripting Passing three variables to loop and error Post 302919092 by Daniel Gate on Saturday 27th of September 2014 11:05:42 PM
Old 09-28-2014
Question Passing three variables to loop and error

I have many printer queues to be created in AIX 6.1. I can create printers with this line:

Code:
/usr/lib/lpd/pio/etc/piomkjetd mkpq_jetdirect -p 'hplj-4000' -D pcl -q 'emg1' -D ps -q 'emg1ps' -h 'emg1' -x '9100'

But, I like to feed the printer queue data, called "printfeed", so that I can loop to avoid a lot of manual entries.

HTML Code:
cat printfeed
emg1  emg1ps  emgj1
emg2  emg2ps  emgj2
..... snipped .....
zeba                  zeba
emr12               emr12
..... snipped .....

(note)  the second column can be empty
I want to pass the first column as $q1, the second column as $q2, and the third column as $q3.

Code:
for pqn in $(cat printfeed)
do
q1 = cat $pqn |awk '{print $1}'
q2 = cat $pqn |awk '{print $2}'
q3 = cat $pqn |awk '{print $3}'
/usr/lib/lpd/pio/etc/piomkjetd mkpq_jetdirect -p 'hplj-4000' -D pcl -q '$q1' -D ps -q '$q2' -h '$q3' -x '9100'  
done

With this script, I am getting:

PHP Code:
ksh[3]: q1:  not found.
ksh[4]: q2:  not found.
ksh[5]: q3:  not found.
Host name $q3 does not exist.  A valid host name is required
Really appropriate your help!
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

passing variables

Hi, Is there any way to pass variable to a sed script.For awk we have -v option.like that do we have any way to pass variable to a sed script from a awk script or from normal script? Thanx, sounder (1 Reply)
Discussion started by: sounder123
1 Replies

2. Shell Programming and Scripting

Passing variables to sed

Hi folks, I'm looking for a solution to pass variables to a sed-command. I'm reading a lot of threats and also the q&a "How can I use a variable in sed?". None of these commands works. I'm using AIX 5.2. I want to do the following: NUMBER=` echo 38341` | sed -n '/$NUMBER/p' an obtained... (3 Replies)
Discussion started by: jfisch
3 Replies

3. UNIX for Dummies Questions & Answers

Passing variables between scripts...

Hey all, I'm wondering how you pass variable's that are defined in one script to another script that's been called by that first script..... Best regards, Jaz (1 Reply)
Discussion started by: Jazmania
1 Replies

4. Shell Programming and Scripting

Using variables created sequentially in a loop while still inside of the loop [bash]

I'm trying to understand if it's possible to create a set of variables that are numbered based on another variable (using eval) in a loop, and then call on it before the loop ends. As an example I've written a script called question (The fist command is to show what is the contents of the... (2 Replies)
Discussion started by: DeCoTwc
2 Replies

5. Shell Programming and Scripting

Passing 2 variables

Hi All, I need to pass 2 variables name 'vamskt' and 'vamsi'. Here is my question: delete from gpi.usergroup where usg_user_id in ('vamskt'); delete from gpi.userroles where uro_user_id in ('vamskt'); delete from gpi.user where usr_id in ('vamskt'); insert into gpi.user... (3 Replies)
Discussion started by: tvamsikiran
3 Replies

6. Shell Programming and Scripting

Reading a string and passing passing arguments to a while loop

I have an for loop that reads the following file cat param.cfg val1:env1:opt1 val2:env2:opt2 val3:env3:opt3 val4:env4:opt4 . . The for loop extracts the each line of the file so that at any one point, the value of i is val1:env1:opt1 etc... I would like to extract each... (19 Replies)
Discussion started by: goddevil
19 Replies

7. Shell Programming and Scripting

Passing Variables

I have below data: DAY1=10202013 I am trying below but not getting the desired output: COUNT=1 DATE=DAY$COUNT echo "Date is $DATE" However output I am getting is: Date is DAY1 I wanted the output as: Date is 10202013 I tried following as well: DAY1=10202013 COUNT=1... (3 Replies)
Discussion started by: rockyr1985
3 Replies

8. Shell Programming and Scripting

Passing awk variables to bash variables

Trying to do so echo "111:222:333" |awk -F: '{system("export TESTO=" $2)}'But it doesn't work (2 Replies)
Discussion started by: urello
2 Replies

9. UNIX for Dummies Questions & Answers

Passing variables to mkuser

In a ksh, I'm attempting to pass my string of arguments to the mkuser command in a variable as follows... cmd="pgrp=ACRGENU groups=ACRGENU home=/home/${USERID} shell=/usr/bin/ksh" cmd=$cmd" gecos='${USERNAME}' login=true su=false rlogin=true daemon=true" cmd=$cmd" admin=false... (4 Replies)
Discussion started by: bubbawuzhere
4 Replies

10. Shell Programming and Scripting

ksh While Loop - passing variables to functions

I'm reading a text file using a while loop but when I call a function from within this loop it exits that same iteration … even though there are many more lines in the file to be read. I thought it was something to do with the IFS setting but it appears that a function call (when run... (3 Replies)
Discussion started by: user052009
3 Replies
cups-lpd(8)							    Apple Inc.							       cups-lpd(8)

NAME
cups-lpd - receive print jobs and report printer status to lpd clients SYNOPSIS
cups-lpd [ -h hostname[:port] ] [ -n ] [ -o option=value ] DESCRIPTION
cups-lpd is the CUPS Line Printer Daemon ("LPD") mini-server that supports legacy client systems that use the LPD protocol. cups-lpd does not act as a standalone network daemon but instead operates using the Internet "super-server" inetd(8) or xinetd(8). If you are using inetd, add the following line to the inetd.conf file to enable the cups-lpd mini-server: printer stream tcp nowait lp /usr/lib/cups/daemon/cups-lpd cups-lpd -o document-format=application/octet-stream Note: If you are using Solaris 10 or higher, you must run the inetdconv(1m) program to register the changes to the inetd.conf file. If you are using the newer xinetd(8) daemon, create a file named /etc/xinetd.d/cups containing the following lines: service printer { socket_type = stream protocol = tcp wait = no user = lp group = sys passenv = server = /usr/lib/cups/daemon/cups-lpd server_args = -o document-format=application/octet-stream } OPTIONS
-h hostname[:port] Sets the CUPS server (and port) to use. -n Disables reverse address lookups; normally cups-lpd will try to discover the hostname of the client via a reverse DNS lookup. -o name=value Inserts options for all print queues. Most often this is used to disable the "l" filter so that remote print jobs are filtered as needed for printing; the examples in the previous section set the "document-format" option to "application/octet-stream" which forces autodetection of the print file format. PERFORMANCE
cups-lpd performs well with small numbers of clients and printers. However, since a new process is created for each connection and since each process must query the printing system before each job submission, it does not scale to larger configurations. We highly recommend that large configurations use the native IPP support provided by CUPS instead. SECURITY
cups-lpd currently does not perform any access control based on the settings in cupsd.conf(5) or in the hosts.allow(5) or hosts.deny(5) files used by TCP wrappers. Therefore, running cups-lpd on your server will allow any computer on your network (and perhaps the entire Internet) to print to your server. While xinetd has built-in access control support, you should use the TCP wrappers package with inetd to limit access to only those comput- ers that should be able to print through your server. cups-lpd is not enabled by the standard CUPS distribution. Please consult with your operating system vendor to determine whether it is enabled on your system. COMPATIBILITY
cups-lpd does not enforce the restricted source port number specified in RFC 1179, as using restricted ports does not prevent users from submitting print jobs. While this behavior is different than standard Berkeley LPD implementations, it should not affect normal client operations. The output of the status requests follows RFC 2569, Mapping between LPD and IPP Protocols. Since many LPD implementations stray from this definition, remote status reporting to LPD clients may be unreliable. SEE ALSO
cups(1), cupsd(8), inetconv(1m), inetd(8), xinetd(8), http://localhost:631/help COPYRIGHT
Copyright 2007-2011 by Apple Inc. 4 August 2008 CUPS cups-lpd(8)
All times are GMT -4. The time now is 05:26 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy