Sponsored Content
Top Forums Shell Programming and Scripting Stupid question to check if variable is empty Post 302925922 by rbatte1 on Thursday 20th of November 2014 08:20:28 AM
Old 11-20-2014
It seems wasteful to fire up another process for this (and for incrementing counters) especially if there is an input file possibly thousands of lines long, in which case this will be expensive.

Could you try:-
Code:
if [ -z "$title" -o "$title" = " " ]
then
   echo "Null or space"
else
   echo "Contents"
fi

If this works, fit it to your script. It might be worth adjusting the loop too to something more like this:-
Code:
#Check if values in job card are not empty
grep "TITLE:" $filename | cut -d ":" -f3 | while read title         # Handle multiple records if required
do
   if [ -z "$title" -o "$title" = " " ]
   then 
      echo "10:Title Empty" ":Fail"
      ((itemfailed=$itemfailed+1))                                  # In-process
   else
      echo "10:Title description present." ":Pass"
      ((itempassed=$itempassed+1))
   fi
done >> $rptfile                                                    # All output from loop appended to this file

One thing to be aware of is that the variable being read in the loop, i.e. $title will be null when you come out of the loop. You can get round this like this if you need to know the last value:-
Code:
echo "a\nb\nc" | while read val
do
   echo "Read $val"
   VAL=$val
done
echo "\$val is \"$val\""
echo "\$VAL is \"$VAL\""

Output will be:-
Code:
Read a
Read b
Read c
$val is ""
$VAL is "c"


I hope that this helps,
Robin
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Stupid Question?

I have a SparcStation 10 and it came with an external CD Rom Drive. I am trying to install Solaris 2.6 Server on this machine from the Cd Rom. At the OK> prompt I type "boot cdrom - browser" and I get an error: scsi device not found:error = -1 or something to that effect. Does anyone have any... (9 Replies)
Discussion started by: jskillet
9 Replies

2. UNIX for Dummies Questions & Answers

Stupid question...

Hello, I've always been around systems that ran windows in one version or another, so I'm familiar with what/when/where/drivers/etc for that. I want to build a unix box to use as a place to learn and become more familiar with unix. I would also like to eventually convert it to a server to... (6 Replies)
Discussion started by: Cortney
6 Replies

3. UNIX for Dummies Questions & Answers

Stupid question

I need to convert a Unix file to a 'Dos' file. Ie if I look at the converted file in 'vi' on Unix it will have '^M' at the end of each line. Hopefully it won't be a case of reading each line in turn and adding a \n. I've heard there is some sort of unix2dos command but it is not recognised on... (2 Replies)
Discussion started by: Bab00shka
2 Replies

4. UNIX for Dummies Questions & Answers

stupid question!?

fedora core 2 xx8. 5xx version (not sure! not sure how to look it up either..(except on boot sorry!!)).. :( the linux version I started on last year was an old redhet 6.0 version with only text mode.. back then for some reason I knew I how to get rid of whole directories without a) going through... (6 Replies)
Discussion started by: moxxx68
6 Replies

5. UNIX for Dummies Questions & Answers

Sorry! Stupid question, but...

Hey everybody. I'm going through my system (Mac OS X 10.3.9, through the Terminal application) trying to get rid of instances of MySQL that I installed over each other. I was having trouble getting MySQL to work: it wasn't letting me set the password, then it wouldn't let me create new databases... (2 Replies)
Discussion started by: starscream
2 Replies

6. UNIX for Dummies Questions & Answers

One stupid question

Has anybody come across the situation when after openning the cover of HP9000 the PC will not start. We checked everything but did not manage to find any solution to that. The PS seems to be functionning (at lease we can hear it clicking). Please help us solving the problem. Thanks to everybody. (2 Replies)
Discussion started by: Andrey Malishev
2 Replies

7. Shell Programming and Scripting

How to check if two variable are empty strings at once? (bash)

I need to check if $1 or $2 are empty before continuing but I don't know if bash has any logic of the sort. This is what I'm looking for - except that "and" doesn't seem to work. if and ;then ... Thank you! :D (4 Replies)
Discussion started by: ph0enix
4 Replies

8. Shell Programming and Scripting

How to check the variable is empty with spacing

How to check the variable is empty or not? aaa=" " how to check aaa variable is empty or just spacing? If only spacing inside.. it will asume it is empty. some are 6 spacing, or 8 spacing.. as long as variable is empty with spacing.. anyone can help me? (2 Replies)
Discussion started by: ryanW
2 Replies

9. Shell Programming and Scripting

How to check a variable for empty and a newline

I have a variable with a new line. I want to check this variable for empty or a new line Can anyone advise (4 Replies)
Discussion started by: Muthuraj K
4 Replies

10. Shell Programming and Scripting

How to check whether a variable is empty or contains some value?

hi, i want to check whether a a variable contains some value or is empty in a shell script. so if the variable contains some value i want to do some job and if the variable doesnt contain any value then i need to skip that job. here is a sample script read_filenames.sh contains ... (5 Replies)
Discussion started by: Little
5 Replies
ENVSTORE(1)						    BSD General Commands Manual 					       ENVSTORE(1)

NAME
envstore -- save and restore environment variables SYNOPSIS
envstore command [args ...] DESCRIPTION
envstore can save and restore environment variables, thus transferring them between different shells. command must be one of clear Forget all stored variables eval Produce shell code for evaluation, restoring all saved variables list List saved variables in better readable format save variable [value] Save variable either with its current shell value or with value rm variable Remove variable from store Note: Only the first character of command is checked, so envstore e instead of envstore eval, envstore c for envstore clear, etc., are also valid. ENVIRONMENT
ENVSTORE_FILE The file in which the environment parameters are stored, /tmp/envstore-EUID by default, LIMITATIONS
Variable names or values must not contain null bytes or newlines. Due to limitations imposed by most shells, it is not possible to save parameters containing more than one consecutive whitespace. envstore will save and display them correctly, but unless you do IFS trickery, your shell will not be able to load them. The current maximum length (in bytes) is 255 bytes for the variable name and 1023 bytes for its content. AUTHOR
envstore was written by Daniel Friesel <derf@derf.homelinux.org>. Original idea and script by Maximilian Gass <mxey@ghosthacking.net>. SEE ALSO
envify(1) BSD
December 1, 2009 BSD
All times are GMT -4. The time now is 05:03 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy