Another script question.


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Another script question.
# 1  
Old 12-03-2000
Hi,
First off I usually script in the bash shell.
Ok, in my script I am checking to see if the filename has a .txt extension.
So I was trying:
Code:
if [ ! -e "*txt" ]
then
    echo "Must contain a valid .txt extension"
fi

and
Code:
if [ "-f" -eq *[txt] ]
then
    echo "Must contain a valid .txt extension"
fi

But no go the first example sort of works but it always echo out the statement.

added code tags for readability --oombera

Last edited by oombera; 02-19-2004 at 02:58 AM..
# 2  
Old 12-03-2000
Hi again,
OK - I figured it out on my own, this is funny when this happens!
Code:
if [ "-f" = "*txt" ]
then
    echo 
fi

But thanks for trying!

added code tags for readability --oombera

Last edited by oombera; 02-19-2004 at 02:58 AM..
# 3  
Old 12-04-2000
Actually this isn't really working:

I used:
Code:
if [ ! -e "$1" ]
then
    echo "Database file \"$1\" does not exist!"
    exit 1
elif [ ! -e "$1" ]
then
    echo "Database file \"$1\" does not exist!"
    exit 1
fi

Even if the file in my dir has is a .txt it prompt for a txt extension.
Code:
if [ ! -e "$1" ]
then
    echo "Database file \"$1\" does not exist!"
    exit 1
elif [ ! -e "$1" ]
then
    echo "Database file \"$1\" does not exist!"
    exit 1
fi

theA

added code tags for readability --oombera

Last edited by oombera; 02-19-2004 at 02:59 AM..
# 4  
Old 12-04-2000
Maybe you could do something like this to check for an extension:

Code:
echo $1 | grep ".txt$" 1>/dev/null
status=$?

if [ $status -eq 0 ] 
then
	echo "found .txt extension"
else
	echo "not found"
fi

Not sure if that is what you are asking...?
# 5  
Old 12-04-2000
This is wat I have, I used "elif" before but it worked the same. Ok the first 2 if statements work but the last 2 don't. For example here are the files in your dir:
10 11.txt 12 14.txt

When you run this script: (called script1)

script1 10 - it doesn't prompt for txt extension!

It should now say "Must have txt extension!"

I don't know what I am doing wrong, this seems so simple but I can't hack it!

Please help,

theA
Code:
if [ "$#" -eq 0 ]
then
    echo "Name required!"
    exit 1
fi

if [ "$#" -gt 1 ]
then
    echo "Only one please!!"
    exit 1
fi

if [ ! -e "$1" ]
then
    echo "Database file \"$1\" does not exist!"
    exit 1
fi

if [ "-f" = ".txt$" ]
then
echo "Database files must contain a "txt" extension!"
    exit 1

fi

added code tags for readability --oombera

Last edited by oombera; 02-19-2004 at 02:59 AM..
# 6  
Old 12-05-2000
This works for me in bash:
Code:
if [ ! -e $1 ]
then 
  echo "Database file \"$1\" does not exist!" 
  exit 1 
fi 

if [ ! `echo $1 | grep ".txt$"` ] 
then 
  echo "Database files must contain a "txt" extension!" 
  exit 1 
fi

added code tags for readability --oombera

Last edited by oombera; 02-19-2004 at 02:59 AM..
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

C first Script Question

Gents for 2013 I have embarked on learning C and just wrote my first script and need some help. In the learning process, I am trying to understand where I went wrong with my script. The flow of the script is as such: Enter a number --> check if it is a number --> if it is not a number,print what... (4 Replies)
Discussion started by: metallica1973
4 Replies

2. Shell Programming and Scripting

Script question

I know some tricks like this : echo " E"; sleep 0.1; clear; echo " Er"; sleep 0.1; clear; echo " Err"; sleep 0.1; clear; echo " Erro"; sleep 0.1; clear; echo " Error ";... (2 Replies)
Discussion started by: hakermania
2 Replies

3. Shell Programming and Scripting

script question

How can I include a counter in this if statement so only sends out 5 notifications. # the if statement will check for the lines status, if status is down sends email if then LIST="user@email.com" mail -s "rje_lines_down" $LIST < ${tmpfile} #sends an email to list fi thanks... (2 Replies)
Discussion started by: d4n3lu
2 Replies

4. UNIX for Dummies Questions & Answers

Script Question

I have a script that will calculate some information about the current directory that I run the script in. How can I have it where it gets an argument from the user(such as a directory) and the script calculate the information for the given directory? Any help is greatly appreciated. (8 Replies)
Discussion started by: tr32
8 Replies

5. Shell Programming and Scripting

Script question

I am trying to write a script to check the STIG our unix boxes. I want to put in checks to determine if certain files or directories are there. For example: If /opt/SUNWexplo exists echo "Sun Explorer exists" else echo "Sun Explorer is not installed" I am sure I could write... (2 Replies)
Discussion started by: rkruck
2 Replies

6. Shell Programming and Scripting

Script Question

Here is my problem. I have a txt file with a list of user names in both upper case and lower case. I need to remove the names from the passwd file. I want to be able to run a script that looks at my txt list and then removes those names from the passwd file. It would be nice if it backed up the... (3 Replies)
Discussion started by: wgartin
3 Replies

7. Shell Programming and Scripting

script question

Anyone know why this won't work? #!/usr/bin/ksh for db in `cat /etc/oratab|egrep ':N|:Y' | grep -v \* | cut -f1 -d":"` do echo "************************" echo "database is $db" echo "************************" done I am getting an error on the line... (7 Replies)
Discussion started by: ace2000
7 Replies

8. UNIX for Dummies Questions & Answers

Script question

Can anyone help with these scripts? Im new to this and struggling. Thank you for your help. Pre-requisites Create a file with x amount of lines in it, the content of your choice. (Have already done this) Script 1 Write a script that takes two arguments. The first being a line of text,... (3 Replies)
Discussion started by: beginner1
3 Replies

9. Shell Programming and Scripting

script question

I'm using solaris and i have an old script that an ex employee wrote but i can't seem to get it working. well is just one part of the script if ($?MC_PROD_DIR == 0) setenv MC_PROD_DIR $HOME/PRODUCTION source $MC_PROD_DIR/scripts/localenv ** i understand what this part of the script is... (1 Reply)
Discussion started by: fusionjd
1 Replies

10. UNIX for Dummies Questions & Answers

script question

Correct me if i'm wrong, but by adding "#!/bin/ksh" at the start of a script will force it to run in the korn shell no matter which shell you are currently using?? (2 Replies)
Discussion started by: shad0w75
2 Replies
Login or Register to Ask a Question