The directories you are searching, the strings you are matching, the names of the files you are processing in the directories you are searching, and the shell you are using seems to change with every post you make. We can't keep up with all of the changes you are making and we still do not have a clear description of what you are trying to do. (Especially whether some of the pathnames you are supplying are the names of files to be processed or the names of directories [AKA folders] containing files to be processed.)
But some problems with your code in post #26:
include (but might not be limited to):
You have said you are using the Korn shell, but there is nothing in this script that specifies that. Make the 1st line of your script be #!/bin/ksh.
We can't tell from what you have shown us whether the three pathnames you assigned to the shell variable folderVRZ are the names of directories (which you call folders) or are pathnames of three regular files in the directory /files05/home/chgtpst/GT/outb/CHTR/VRZ/9.
The test command [ 'grep FTRORD -l "$f"' ] ALWAYS evaluates to true because the argument being evaluated 'grep FTRORD -l "$f"' is a non-empty fixed string. It does not execute grep and it does not expand "$f" (shell variables are not expanded when they are surrounded by single quotes) to the name of a file (directory or regular file). And, assuming (based solely on the name of your variables) that you intend for $f to expand to the name of a directory, the grep utility looks for matches to a regular expression in the text file(s) named as its file operand(s); it does NOT search all of the files in a directory named as a file operand and it does not try to match filenames in a directory to your regular expression. The behavior of grep is only defined when the pathnames of the files you ask it to process are text files (and directories are not text files)!
I apologize for not noticing that you used /bin/sh when you ran my script instead of /bin/ksh) after you had told us at least three times that you were using the Korn shell.
I apologize for not mentioning that you would have to use /usr/xpg4/bin/grep instead of /usr/bin/grep to use the -q option.
I have absolutely no explanation for why you modified the script I suggested in post #21 to process the four files you described in post #20:
to:
and ran it in a directory where there are no filenames that end with the string .edi when you said you wanted to look for a different string in one of four existing files in a different directory.
If you had told us that some of the directories you want to search do not contain any files, we would have suggested different code, perhaps something more like:
Note that case matters in Solaris and other UNIX systems. The string "UNIX" and the string "unix" are NOT the same. (Case matters!)
If you were asked (as an EE) to create a circuit that is given +5V DC power and instead of +5V DC power the user connected it to 120V AC power, should we be disappointed if your circuit exploded? If you tell us you want to search for a string in a bunch of files that match a certain filename matching patter in a directory, don't be surprised if a grep command that we suggest doesn't do what you want if you ask it to process files matching a pattern that does not match any files in that directory. If you tell us you want to search for a string in a bunch of files in a directory, don't be surprised if a grep command that we suggest doesn't do what you want if you give it the name of a directory to process instead of a list of one or more files in that directory to process.
Computers can do some things very quickly. They usually do exactly what you ask them to do even if what you ask them to do is dangerous. In CS we have a frequently referenced acronym: GIGO (Garbage In, Garbage Out). If your specifications are not clear (GI), the results you get from running code written to meet what the programmer guesses you meant are likely to give you GO.
Please help us help you!
This User Gave Thanks to Don Cragun For This Post:
Hi guys,
I have a directory in UNIX having files with the below format, i need to pickup the latest file having recent timestamp embedded on it, then need to rename it to a standard file name.
Below is the file format:
filename_yyyymmdd.csv, i need to pick the latest and move it with the... (2 Replies)
Hi,
I have a script which will check the fiel existence, the lines are as below
if !(test -d ./data) then
mkdir data
fi
In the first line error occurs as below
generatelicense.sh: syntax error at line 2: `!' unexpected
Where as this script works fine in linux OS.
How to solve... (2 Replies)
ALL,
My shell script takes a employee file as input.
I have to identify the list of employees not in the input file and update their status in the database.
Approach I followed:
by traversing through the input file add all the emplid's to a variable.
update the status of employees not in... (2 Replies)
Hi, I 'm trying to learn the scripting language and am trying to create a script to open a C Program, allow the user to edit it, and then run it. What I have works but only when you enter the name to be compiled and the c program, but what if you only entered the 1 argument (cprogram.c) ? but I 'm... (3 Replies)
Hi,
I have the output (as below) which i want it to be in a table.
For e.g.
space utilization in PSE on path /logs is 0%
space utilization in PSE on path /logs/tuxedo/tuxlsp is 16%
space utilization in PSE on path /ldvarlsp/lsp/log is 37%
space utilization in PSE on path /home is 6%... (7 Replies)
Hi Friends,
I would like to read all the record from one txt file to other file txt
For example I have two txt file a.txt and b.txt. I need to read a.txt record by record and I need add the system date @ end of each record before moving it to b.txt. Could you please share the coding for... (4 Replies)
Hi,
How to add trailer record at the end of the flat file in the unix ksh shell scripting
can you please let me know the procedure
Regards
Srikanth (3 Replies)
I have input data looks like this which is a part of a csv file
7,1265,76548,"0102:04"
8,1266,76545,"0112:04"
I need to make the output data should look like this and the output data will be part of text file:
7|1265000 |7654899 |A|
8|12660000 |76545999 |B|
The logic behind the... (6 Replies)
Hi,
Want to know, is there any way to restrict a Solaris user to Single Login. Means a particular user can login once and if he or someone else tries to login with his ID then a message displayed "user already logged in" and denies his attempt.
Regard,
Jeet (1 Reply)