I am writing a nightly build script in bash.
Everything is fine and dandy except for one little snag:
#!/bin/bash for file in "$PATH_TO_SOMEWHERE"; do if [ -d $file ] then # do something directory-ish else if [ "$file" == "*.txt" ] # this is the snag then # do something txt-ish fi fi done;
My problem is determining the file extension and then acting accordingly. I know the issue is in the if-statement, testing for a txt file.
How can I determine if a file has a .txt suffix?
I think you want to say "Are the last four characters of $file equal to
.txt?" If so, you can use the following:Note that the space between
file:and-4is required, as the ‘:-‘ modifier means something different.