Output not in correct format - cd script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Output not in correct format - cd script
# 1  
Old 05-13-2014
Output not in correct format - cd script

I have a script that looks like this:

Code:
dirname2=/usr/tmp/filelist/*/*
for dirname2 in /tmp/filelist/*/*; do (cd $dirname2/catalog ||echo "file does not exist" && echo "$dirname2" |cut -d '/' -f 7,8 && echo $i && ls -la |awk 'NR>3 {SUM += $5} END {  print "Total number of kb " SUM }');done 2>>/tmp/allerrors

What happens is that it prints out what I need but I want the lines to be
so that the "files does not exist" has the path after it.

Example of what I need: "file does not exist -DBCRP/1374000000"

instead I am getting the path printed under the "file does not exist statement." How to make it like the above desired output?

DBCRP/1372000000

Total number of kb 6921804
DBCRP1373000000

Total number of kb 6926149
file does not exist
DBCRP/1374000000

Total number of kb 16240522
DBCRP/1375000000
# 2  
Old 05-13-2014
If a one-liner is more than three screens wide it probably shouldn't be a one-liner.

Code:
( cd /tmp/filelist
for dirname2 in */*
do
        if [ ! -d $dirname2/catalog ] 
        then
                echo "File does not exist $dirname2" >&2
        else
                ls -la "$dirname2/catalog" | awk '(NR>3) && !/^d/ {SUM += $5} END {  print "Total number of kb " SUM }'
        fi
done )

This User Gave Thanks to Corona688 For This Post:
# 3  
Old 05-13-2014
First, you set dirname2 to ALL subdirs and folders in /usr/tmp/filelist....
Second, you use dirname2 as each of ALL subdirs and fodlers in /tmp/filelist...
In both cases, dirname2 will be a file OR a folder, depending on which item currenrtly is 'parsed'.

BTW, a 1 liner is cool, yes, but NOT to do error checking.


Code:
for dirname2 in /tmp/filelist/*/*; do (cd $dirname2/catalog ||echo "file does not exist" && echo "$dirname2" |cut -d '/' -f 7,8 && echo $i && ls -la |awk 'NR>3 {SUM += $5} END {  print "Total number of kb " SUM }');done 2>>/tmp/allerrors

* Also the red parts do not work the way you use it.
You can do && and ||, but after the || there cannot be another &&, those need some pratice (or a subshell), i'd suggest to use a regular if statement until then.
* Orange is waaaay to long too...

hth, gn8

Fix that first please.

Dang, Corona688 was faster.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Extract the correct format of file Name

All, Objective : Extract the correct format of a file name. Please share the script command which will extract the correct format of the file after untarring. Example : If the file is of .csv format then extract filename.csv if the file is having .CSV then extract the same.CSV if the file... (1 Reply)
Discussion started by: Mahesh G
1 Replies

2. Shell Programming and Scripting

Need output of script on screen and file with correct return status of the called script.

Hi, I am trying to capture logs of the script in the file as well as on the screen. I have used exec and tee command for this. While using exec command I am getting the correct output in the file but, script output is not getting displayed on the screen as it get executed. Below is my sample... (14 Replies)
Discussion started by: Prathmesh
14 Replies

3. Shell Programming and Scripting

Display calendar in correct format using shell script

Hi All, I'm trying to print calendar using shell script and i'm able to print it. But the format is not good. Here is the script. #!/bin/bash echo $(date) echo "Hello $USER" echo Hostname $(hostname) echo Working in $(pwd) echo Here is this month calender echo $(cal) $ sh first.sh... (7 Replies)
Discussion started by: chandrakanth
7 Replies

4. Shell Programming and Scripting

Script to generate Excel file or to SQL output data to Excel format/tabular format

Hi , i am generating some data by firing sql query with connecting to the database by my solaris box. The below one should be the header line of my excel ,here its coming in separate row. TO_CHAR(C. CURR_EMP_NO ---------- --------------- LST_NM... (6 Replies)
Discussion started by: dani1234
6 Replies

5. Shell Programming and Scripting

Html output in correct format

Hi, I am running two scripts as below. In Script 1 i am getting correct output in proper HTML format while in script 2 i am not getting output in mail and only html code is getting printed.I want to get the output of script 2. Please guide. 1.IFILE=/home/home01/Report.csv if #Checks... (7 Replies)
Discussion started by: Vivekit82
7 Replies

6. Shell Programming and Scripting

perl script to check the mail ids in the correct format or not

Hi Folks, I have few mailids in a text file and need to check whether the mailid is in correct format or not. If just to check whether the string is a mailid or not there is a perl module Email::Valid to do the business or we can implement our own logic. But the mail_ids I am having is... (4 Replies)
Discussion started by: giridhar276
4 Replies

7. Shell Programming and Scripting

Not the correct output, works fine via CLI, not inside the script.

Guys, I need you help please. The script below is not working correclty for checking via a awk/if statement . Can you tell me what i am doing wrong in the script code "if($1 == "$RETENTION_LEVEL") " Syntax RETENTION_LEVEL=`echo $LINE | cut -f2 -d" "` echo " ==============... (4 Replies)
Discussion started by: Junes
4 Replies

8. Shell Programming and Scripting

Exit if date not in correct format

Can somone take a look at this script for me - I'm trying to get it to exit if the format of dateToLookFor is not in the format YYYYMMDD: function search { cd $logsloc echo "Enter date in format YYYYMMDD (enter to exit):" read dateToLookFor echo $dateToLookFor | grep -q ... (2 Replies)
Discussion started by: rich@ardz
2 Replies

9. Shell Programming and Scripting

AWK CSV to TXT format, TXT file not in a correct column format

HI guys, I have created a script to read 1 column in a csv file and then place it in text file. However, when i checked out the text file, it is not in a column format... Example: CSV file contains name,age aa,11 bb,22 cc,33 After using awk to get first column TXT file... (1 Reply)
Discussion started by: mdap
1 Replies

10. Shell Programming and Scripting

Script output format

Hi Gurus, 1. I have a script to run a SQL report. The script ran fine, but the format of the output is not satisfactory in that I see too much white space in between the lines in the output file (logfile). Please see the example below: 010192S.CD 01117CV000A.CD ... (6 Replies)
Discussion started by: syang68
6 Replies
Login or Register to Ask a Question