Sponsored Content
Top Forums Shell Programming and Scripting Take variable outside while loop Post 302907056 by Don Cragun on Wednesday 25th of June 2014 02:20:15 PM
Old 06-25-2014
You could also consider something like:
Code:
$!/bin/bash
var=$( [ -s /root/nums ] && tail -n 1 /root/nums || echo NONE )
printf '%s\n' "$var"

But, for small files, vbe's suggestion (with some added quotes) would faster:
Code:
#!/bin/bash
var="NONE"
while read -r entry
do
        var="$entry"
done</root/nums
printf '%s\n' "$var"

since this is only using shell built-ins.

I changed the echo to printf because the behavior of echo varies from shell to shell and system to system if the string to be printed starts with a minus sign (-) or contains a backslash character (\). And, if /root/nums is created by anything that is not under your direct control, you should be prepared to handle anything you might find there.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

variable in a for loop

Hi... i am trying to ping my servers .The hostnames are present in a file .They are separated by spaces in the file . i am doing the following : a=1 for name in $(cat host2 |cut -d" " -f$a) do echo Pinging server $name ping -c5 $name a=$a+1 done It is... (3 Replies)
Discussion started by: sars
3 Replies

2. Shell Programming and Scripting

loop through variable

i have these data in a variable "$test" BUNGA TERATAI 3 5055 ITH 1 1 JADE TRADER 143W ITH 4 4 MOL SPLENDOR 0307A ITH 3 3 the red coloured are the ones that i want to take and compare what I need to do is to take out the red coloured and then compare to another variable, if same then... (0 Replies)
Discussion started by: finalight
0 Replies

3. Shell Programming and Scripting

For loop Variable

Hi, Is it possible to assign one variable to other. eg. v1="table1" v2="20000" I want table1 to assign 20000 table1=20000 Is there any way? Thanks (2 Replies)
Discussion started by: SushilM
2 Replies

4. Shell Programming and Scripting

Help with variable using loop

Hi I have webserver that I do read data from. Data are stored like this: Huston |1 Portland |2 Hazen |1 Minneapolis |4 Albany |1 Pittsburg |1 Albany |1 Huston |1 Portland|1 Hazen |2 Albany |2 Huston |1 Hazen |1 Script #!/bin/sh user="admin" (1 Reply)
Discussion started by: Jotne
1 Replies

5. Shell Programming and Scripting

For loop with one variable as the name of other

Hello all, I find it hard to explain what I need so I will post the code OVZINCLUDE="16810 16811 1689" PLUS_16810="test" PLUS_16811="test" for VPS in $OVZINCLUDE do echo "Dumping VPSes: $OVZINCLUDE " vzdump --compress --snapshot ${PLUS_$VPS} $VPS done ... (2 Replies)
Discussion started by: click
2 Replies

6. Shell Programming and Scripting

[SHELL: /bin/sh] For loop using variable variable names

Simple enough problem I think, I just can't seem to get it right. The below doesn't work as intended, it's just a function defined in a much larger script: CheckValues() { for field in \ Group_ID \ Group_Title \ Rule_ID \ Rule_Severity \ ... (2 Replies)
Discussion started by: Vryali
2 Replies

7. Shell Programming and Scripting

printing variable with variable suffix through loop

I have a group of variables myLINEcnt1 - myLINEcnt10. I'm trying to printout the values using a for loop. I am at the head banging stage since i'm sure it has to be a basic syntax issue that i can't figure out. For myIPgrp in 1 2 3 4 5 6 7 8 9 10; do here i want to output the value of... (4 Replies)
Discussion started by: oly_r
4 Replies

8. UNIX for Dummies Questions & Answers

Loop and variable not exactly variable: what's wrong

Hello guys, This truly is a newbie question. I'm trying to make a loop to execute simultaneous commands indefinitely while using variable. Here is how my mess looks like (this is just an example): #!/bin/bash IP=`shuf -n 1 IP.txt` # I figured this would be easier to select random lines... (4 Replies)
Discussion started by: bobylapointe
4 Replies

9. Shell Programming and Scripting

Array Variable being Assigned Values in Loop, But Gone when Loop Completes???

Hello All, Maybe I'm Missing something here but I have NOOO idea what the heck is going on with this....? I have a Variable that contains a PATTERN of what I'm considering "Illegal Characters". So what I'm doing is looping through a string containing some of these "Illegal Characters". Now... (5 Replies)
Discussion started by: mrm5102
5 Replies

10. Shell Programming and Scripting

[Solved] How to increment and add variable length numbers to a variable in a loop?

Hi All, I have a file which has hundred of records with fixed number of fields. In each record there is set of 8 characters which represent the duration of that activity. I want to sum up the duration present in all the records for a report. The problem is the duration changes per record so I... (5 Replies)
Discussion started by: danish0909
5 Replies
pmvarrun(8)							     pam_mount							       pmvarrun(8)

Name
       pmvarrun - updates /var/run/pam_mount/user

Syntax
       pmvarrun -u user [options]

Description
       A  separate  program is needed so that /var/run/pam_mount/user may be created with a pam_mount-specific security context (otherwise SELinux
       policy will conflict with gdm, which also creates file in /var/run).

       pmvarrun is flexible and can run in a number of different security setups:

   root-root
       When pmvarrun is invoked as root, /var/run/pam_mount's permission settings can be as strict as needed; usually (0755,root,root) is  a  good
       pick  as  it  gives  users the debug control over their refcount. Refcount files are given their respective owners (chowned to the user who
       logs in).

   user-user
       When invoked as the user who logs in, /var/run/pam_mount needs appropriate permissions to create a file, which means the write bit must	be
       set. It is also highly suggested to set the sticky bit in this case, so other users do not tamper with your refcount.

   root-user
       Some  programs or login helpers incorrectly call the PAM stack in a way that the login phase is done as root and the logout phase as a nor-
       mal user.  Nevertheless, pmvarrun supports this, and the same permissions as in root-root can be used. While the user may not  be  able	to
       unlink his file from /var/run/pam_mount, it will be truncated to indicate the same state.

Options
       --help, -h
	      Display help.

       --user user, -u user
	      User to handle, must be a valid username.

       --operation number, -o number
	      Increase volume count by number.

       -d     Turn on debugging.

Files
       /var/run/pam_mount/user

Author
       This  manpage  was originally written by Bastian Kleineidam <calvin@debian.org> for the Debian distribution of libpam-mount but may be used
       by others.

       See /usr/share/doc/packages/libpam-mount/copyright for the list of original authors of pam_mount.

pam_mount							    2008-10-08							       pmvarrun(8)
All times are GMT -4. The time now is 06:14 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy