Need Help in Script

 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers Need Help in Script
# 1  
Old 01-16-2017
Need Help in Script

Hi Team,

Please help me to resolve the error in my script

Code:
[root@selvahost ~]# echo $0
-bash


num=`wc -l /root/demp/hehe.txt`
[root@selvahost ~]# echo $num
6 /root/demp/hehe.txt


cat backtickwithif.sh

#! /bin/bash
num=`wc -l /root/demp/hehe.txt`
echo $num
#if [ $num -gt 150 ]
if [ "$num" -gt "150" ]
then
echo "Condition Success"
else
echo "Condition failed"
echo ; fi


 ./backtickwithif.sh
6 /root/demp/hehe.txt
./backtickwithif.sh: line 6: [: 6 /root/demp/hehe.txt: integer expression expected
Condition failed

If i use other condition in the script if [ $num -gt 150 ] then I get different error message


Code:
 ./backtickwithif.sh
6 /root/demp/hehe.txt
./backtickwithif.sh: line 5: [: too many arguments
Condition failed


Last edited by Scrutinizer; 01-16-2017 at 01:29 AM.. Reason: code tags
# 2  
Old 01-16-2017
Hi, try:
Code:
num=$(wc -l < /root/demp/hehe.txt)

By using the redirect, variable num will only contain the number. Otherwise variable num will contain both the number and the filename, which leads to the errors.
I used a different form of command substitution (which I think is preferable), instead of backquotes.

Last edited by Scrutinizer; 01-16-2017 at 01:46 AM..
This User Gave Thanks to Scrutinizer For This Post:
# 3  
Old 01-19-2017
Hi - you probably don't need this now, but here is another way :-

Code:
num=`cat testfile | wc -l`
echo $num
if [ $num -gt 150 ]
then
  echo "Condition Success"
else
  echo "Condition Failed"
fi

This results in the following output when the input file contains 6 lines :-

Code:
[root@cooker test1]# ./chkfile.run
6
Condition Failed

Login or Register to Ask a Question

Previous Thread | Next Thread

5 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to block first bash script until second bash script script launches web server/site?

I'm new to utilities like socat and netcat and I'm not clear if they will do what I need. I have a "compileDeployStartWebServer.sh" script and a "StartBrowser.sh" script that are started by emacs/elisp at the same time in two different processes. I'm using Cygwin bash on Windows 10. My... (3 Replies)
Discussion started by: siegfried
3 Replies

2. Shell Programming and Scripting

Shell script works fine as a standalone script but not as part of a bigger script

Hello all, I am facing a weird issue while executing a code below - #!/bin/bash cd /wload/baot/home/baotasa0/sandboxes_finance/ext_ukba_bde/pset sh UKBA_publish.sh UKBA 28082015 3 if then echo "Param file conversion for all the areas are completed, please check in your home directory"... (2 Replies)
Discussion started by: ektubbe
2 Replies

3. UNIX for Dummies Questions & Answers

Calling a script from master script to get value from called script

I am trying to call a script(callingscript.sh) from a master script(masterscript.sh) to get string type value from calling script to master script. I have used scripts mentioned below. #masterscript.sh ./callingscript.sh echo $fileExist #callingscript.sh echo "The script is called"... (2 Replies)
Discussion started by: Raj Roy
2 Replies

4. Shell Programming and Scripting

Script will keep checking running status of another script and also restart called script at night

I am using blow script :-- #!/bin/bash FIND=$(ps -elf | grep "snmp_trap.sh" | grep -v grep) #check snmp_trap.sh is running or not if then # echo "process found" exit 0; else echo "process not found" exec /home/Ketan_r /snmp_trap.sh 2>&1 & disown -h ... (1 Reply)
Discussion started by: ketanraut
1 Replies

5. Shell Programming and Scripting

create a shell script that calls another script and and an awk script

Hi guys I have a shell script that executes sql statemets and sends the output to a file.the script takes in parameters executes sql and sends the result to an output file. #!/bin/sh echo " $2 $3 $4 $5 $6 $7 isql -w400 -U$2 -S$5 -P$3 << xxx use $4 go print"**Changes to the table... (0 Replies)
Discussion started by: magikminox
0 Replies
Login or Register to Ask a Question