Listing all the files names not starting as


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Listing all the files names not starting as
# 8  
Old 11-24-2008
Quote:
Originally Posted by Franklin52
It should work, post the output of ls -l within code brackets.

Regards

Code:
-rwxrwxrwx  1 oratest4 dba      8 2008-11-24 09:45 ERROR_ESRC_CHQ_GBP_1234.out
-rwxrwxrwx  1 oratest4 dba      8 2008-11-20 15:27 ESRC_CHQ_GBP_1234.out
-rwxrwxrwx  1 oratest4 dba   8878 2008-11-21 13:30 FTPED_FTPED_PAYMENT_FILES_TRANSFER.sh
-rwxrwxrwx  1 oratest4 dba   7920 2008-11-20 12:15 FTPED_FTPED_RCUK_FTP.sh
-rw-r--r--  1 oratest4 dba   7526 2008-11-24 15:13 ftp_script_new.sh
drwxrwxrwx  2 oratest4 dba 106496 2008-11-24 15:16 temp

# 9  
Old 11-24-2008
I get the desired output with the code. I've saved the contents of your output, added the lines abc.out and efg.out and this is what I get:

Code:
$ cat file
-rwxrwxrwx  1 oratest4 dba      8 2008-11-24 09:45 ERROR_ESRC_CHQ_GBP_1234.out
-rwxrwxrwx  1 oratest4 dba      8 2008-11-20 15:27 ESRC_CHQ_GBP_1234.out
-rwxrwxrwx  1 oratest4 dba   8878 2008-11-21 13:30 FTPED_FTPED_PAYMENT_FILES_TRANSFER.sh
-rwxrwxrwx  1 oratest4 dba   7920 2008-11-20 12:15 FTPED_FTPED_RCUK_FTP.sh
-rw-r--r--  1 oratest4 dba   7526 2008-11-24 15:13 ftp_script_new.sh
-rw-r--r--  1 oratest4 dba   7526 2008-11-24 15:13 abc.out
-rw-r--r--  1 oratest4 dba   7526 2008-11-24 15:13 efg.out
drwxrwxrwx  2 oratest4 dba 106496 2008-11-24 15:16 temp
$
$
$ awk '/^-/ && $NF !~ /^abc/ && $NF !~ /^efg/ && $NF ~ /.out/ {print $NF}' file
ERROR_ESRC_CHQ_GBP_1234.out
ESRC_CHQ_GBP_1234.out
$
$

Regards
# 10  
Old 11-24-2008
Surprisingly I just flipped some of the components as below and it worked!!


Code:
FILELIST=`ls -l |awk '/^-/ && $NF ~ /.out/ && $NF !~ /^FTPED/ && $NF !~ /^ERROR/ {print $NF}'`
  echo $FILELIST

# 11  
Old 11-27-2008
Sorry to be a bother again

I am using the below code to select only files of .out extension whose names don't start as given in the variables $FTPED_FILE_PREFIX and
$ERRORED_FILE_PREFIX

Code:
 
FILELIST=`ls -l |awk '/^-/ && $NF ~ /.out/ && $NF !~ /^$FTPED_FILE_PREFIX/ && $NF !~ /^$ERRORED_FILE_PREFIX/ {print $NF}'` # Select .out files which don't start as FTPED or ERROR

The above code works fine on command prompt but when run from shell script it lists all the files.However if I use the actual variable values(strings) instead of the variable..it works fine...

Am i doing anything wrong...
# 12  
Old 11-27-2008
The variables must be expanded by the shell so you have to "cut them out" the single brackets. The first line is your current awk code, replace the code with the second line:

Code:
awk '/^-/ && $NF ~ /.out/ && $NF !~ /^$FTPED_FILE_PREFIX/ && $NF !~ /^$ERRORED_FILE_PREFIX/ {print $NF}'
awk '/^-/ && $NF ~ /.out/ && $NF !~ /^'$FTPED_FILE_PREFIX'/ && $NF !~ /^'$ERRORED_FILE_PREFIX'/ {print $NF}'

Regards
# 13  
Old 11-28-2008
Quote:
Originally Posted by Franklin52
The variables must be expanded by the shell so you have to "cut them out" the single brackets. The first line is your current awk code, replace the code with the second line:

Code:
awk '/^-/ && $NF ~ /.out/ && $NF !~ /^$FTPED_FILE_PREFIX/ && $NF !~ /^$ERRORED_FILE_PREFIX/ {print $NF}'
awk '/^-/ && $NF ~ /.out/ && $NF !~ /^'$FTPED_FILE_PREFIX'/ && $NF !~ /^'$ERRORED_FILE_PREFIX'/ {print $NF}'

Regards

Wow that worked...thank u very much Frank...

I have yet another problem...sorry to be deluging you with questions....My shell script takes 11 parameters

when I assign $10 and S11 to different variables instead of storing the parameter values, it stores $1's value and a zero and $1's value and a one respectively..

I have tried using "S10",'S11'...but still no use..pls help
# 14  
Old 11-28-2008
Ok.. {} around the variable did the trick...
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Listing column names in CSV file

Hi, I have a .csv file that has ~600 columns and thousands of rows. I would like to create a numerical list of the column names (so that I can later easily select the columns I want to extract). The format that I would hope for is something like: 1 "ID" 2 "X" 3 "Y" .. 600 "Z" ... (4 Replies)
Discussion started by: aberg
4 Replies

2. Shell Programming and Scripting

Exclude certain file names while selectingData files coming in different names in a file name called

Data files coming in different names in a file name called process.txt. 1. shipments_yyyymmdd.gz 2 Order_yyyymmdd.gz 3. Invoice_yyyymmdd.gz 4. globalorder_yyyymmdd.gz The process needs to discard all the below files and only process two of the 4 file names available ... (1 Reply)
Discussion started by: dsravanam
1 Replies

3. Shell Programming and Scripting

Listing the file name and no of records in each files for the files created on a specific day

Hi, I want to display the file names and the record count for the files in the 2nd column for the files created today. i have written the below command which is listing the file names. but while piping the above command to the wc -l command its not working for me. ls -l... (5 Replies)
Discussion started by: Showdown
5 Replies

4. UNIX for Dummies Questions & Answers

[Solved] Listing files starting with p or f and with the exact length of 3 characters

Hello, I need some help. How can I list files starting with p or f and with the exact length of 3 characters? (2 Replies)
Discussion started by: airbebe
2 Replies

5. Shell Programming and Scripting

Get all File names starting with letter P

Hi, I have lets say 10 files , I need to process them one by one. So I need a command to get one file name at a time to process it into a variable Example Files P1111.dat P3344.dat S344.dat ... v_file_name = 'p111.dat' .. I will rename it to something after processing ... (1 Reply)
Discussion started by: prassu
1 Replies

6. UNIX for Advanced & Expert Users

script regarding listing long group names

Hello, When listing the file systems (using ls -ltr) , if the group names are longer the group name is getting truncated. Can someone help with the script which would display the truncated group name? I appreciate if someone could help in this regard. (1 Reply)
Discussion started by: mike12
1 Replies

7. Shell Programming and Scripting

Listing file names as soon as they are created

Hi, I have been looking for a method to list file names as soon as they are created. I have used the following command : find . -name "*.xml" -mmin -2 -exec ls --full-time {} \; | sort -k6 this finds all xml files created in the last 2 minutes and orders them by time. The problem is that... (7 Replies)
Discussion started by: phil.e.b
7 Replies

8. Shell Programming and Scripting

perl script for listing files and mailing the all files

Hi, I am new to perl: I need to write perl script to list all the files present in directory and mail should be come to my inbox with all the files present in that directory. advanced thanks for valuable inputs. Thanks Prakash GR (1 Reply)
Discussion started by: prakash.gr
1 Replies

9. UNIX for Dummies Questions & Answers

Listing full file names with the exact length of 3 characters

This is what I have to do: Display the full file name (including the full path) and file size of all files whose name (excluding the path) is exactly 3 characters long. This is the code I have: find / -printf "Name: %f Path: %h Size: %s (bytes)\n" 2>/dev/null | grep -E "Name: .{3,} Path" |... (7 Replies)
Discussion started by: Joesgrrrl
7 Replies

10. UNIX for Dummies Questions & Answers

Recursive directory listing without listing files

Does any one know how to get a recursive directory listing in long format (showing owner, group, permission etc) without listing the files contained in the directories. The following command also shows the files but I only want to see the directories. ls -lrtR * (4 Replies)
Discussion started by: psingh
4 Replies
Login or Register to Ask a Question