In Bourne shell /bin/sh you will need to extract the heading of the file to test against. The if will only accept a literal value to compare to. You might consider the following:-
It might look a bit scary, but what the extra line does is to slice up the string. You could do this with cut but that spawns another process, so it can cost a lot of time if this is in a loop for lots of files.
The % and # markers are then followed by descriptions of how to split the line. The second part ${file##???} cuts the first three characters. It seems odd, but given that is what you want, it is the fed back in to the first part which then excludes everything from the string apart from what was worked out in part 2.
So, for a file name of xyz12345678, part 2 evaluates to 12345678, so part 1 the removes this from the end of the whole file name and you are left with xyz You can then use this in your if statement.
I hope that this helps,
Robin
Liverpool/Blackburn
UK
I'm trying to figure out how to build a small shell script that will find old .shtml files in every /tgp/ directory on the server and delete them if they are older than 10 days...
The structure of the paths are like this:
/home/domains/www.domain2.com/tgp/
/home/domains/www.domain3.com/tgp/... (1 Reply)
Hi,
I need to search through a file to find the last one occurence of my data.
File1 is like this:
sososo
abc123
ssssss
abc456
ssssss
abc345
I need to loop through to identify the last occurence of "abc".
So "abc345" is the record that I need.
Can someone give me some ideas? (9 Replies)
hi,
I want to search all files in the current working direcotry and to print in comma (,) seperated output. But I have two patterns to search for.
Files will be in ABC20100508.DAT format.
Search should happen on the format (ABC????????.DAT) along with date(20100508).
I can do a
ls... (2 Replies)
I'm sure this is by design, but using something like
for f in dir/*
do echo $f
done
produces unexpected (to me) results if run against an empty directory. I'd have expected it to not execute the loop, but it actually calls it with f set to 'dir/*'.
Now I know that I'm trying to protect... (2 Replies)
How can i grep for a pattern with wildcard using grep?
I want to identify all the lines that start with SAM and end in .PIPE
IN.TXT
SAM_HEADER.PIPE
SAM_DETAIL.PIPE
SAM_INVOICE.PIPE
Can i do something like
grep SAM*.PIPE IN.TXT (2 Replies)
Hello,
I am using sed in a for loop to replace text in a 100MB file. I have about 55,000 entries to convert in a csv file with two entries per line. The following script works to search file.txt for the first field from conversion.csv and then replace it with the second field. While it works fine,... (15 Replies)
Hi Experts,
We are developing a script which will wait for the trigger file(with datetime in the trigger file name).
But the problem is when I use 'while' loop to wait for the file, it waits for the filename with wilcard in it that is wait for 'Trigger*.done' file. :eek:
Below is the script
... (4 Replies)
Hello All,
I hope this is the right area. If not, Kindly let me know and I will report in the appropriate spot.
I am needing to find a search pattern that will make the * act as Wildcard in the search pattern instead of being literal.
The example I am using is bzgrep "to=<*@domain.com>"... (5 Replies)
I am using a perl script to reverse and complement sequences if a string is found. The script works as expected as standalone but I would like to use it in my bash file. However, I am not getting my expected result.
My test.txt file
>Sample_72... (8 Replies)
Discussion started by: Xterra
8 Replies
LEARN ABOUT OPENDARWIN
set_color
set_color(1) fish set_color(1)NAME
set_color - set_color - set the terminal color
set_color - set the terminal color
Synopsis
set_color [-v --version] [-h --help] [-b --background COLOR] [COLOR]
Description
Change the foreground and/or background color of the terminal. COLOR is one of black, red, green, brown, yellow, blue, magenta, purple,
cyan, white and normal.
o -b, --background Set the background color
o -c, --print-colors Prints a list of all valid color names
o -h, --help Display help message and exit
o -o, --bold Set bold or extra bright mode
o -u, --underline Set underlined mode
o -v, --version Display version and exit
Calling set_color normal will set the terminal color to whatever is the default color of the terminal.
Some terminals use the --bold escape sequence to switch to a brighter color set. On such terminals, set_color white will result in a grey
font color, while set_color --bold white will result in a white font color.
Not all terminal emulators support all these features. This is not a bug in set_color but a missing feature in the terminal emulator.
set_color uses the terminfo database to look up how to change terminal colors on whatever terminal is in use. Some systems have old and
incomplete terminfo databases, and may lack color information for terminals that support it. Download and install the latest version of
ncurses and recompile fish against it in order to fix this issue.
Version 1.23.1 Sun Jan 8 2012 set_color(1)