Sponsored Content
Top Forums Shell Programming and Scripting How to exclude some files from the loop on the directory? Post 302993537 by drysdalk on Friday 10th of March 2017 07:04:50 PM
Old 03-10-2017
Hi,

You could try a script like this, perhaps.

Code:
#!/bin/bash
for file in `/bin/ls files/`
do
        case "$file" in
                DB.DAILY*)
                        #We want to skip this
                        continue
                        ;;
                *)
                        #But we want to process everything else
                        echo "$file"
                        ;;
        esac
done

So the idea is that for every file that's not got a name starting with "DB.DAILY" we echo out its filename. If its name does start with "DB.DAILY" we ignore it and move on to the next file.

Here's a sample of it being run, so you can see the output.

Code:
$ ls files
daily.20170310  DB.DAILYxxxxxxx.YYYYMMDD.HHMMSS  LET.20170310  tba.20170310
$ ./script.sh
daily.20170310
LET.20170310
tba.20170310
$

Hope this helps.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Loop through files in a directory

Hi, I want to write bash script that will keep on looking for files in a directory and if any file exists, it processes them. I want it to be a background process, which keeps looking for files in a directory. Is there any way to do that in bash script? I can loop through all the files like... (4 Replies)
Discussion started by: rladda
4 Replies

2. AIX

loop through the directory for files and sort by date and process the first file

hello i have a requirement where i have a direcotry in which i get files in the format STOCKS.20080114.dat STOCKS.20080115.dat STOCKS.20080117.dat STOCKS.20080118.dat i need to loop through the directory and sort by create date descending order and i need to process the first file. ... (1 Reply)
Discussion started by: dsdev_123
1 Replies

3. Shell Programming and Scripting

Loop certain code to all files within directory

Hi all, Can somebody help me with this problem pls. I need to extract one specific line from each files in a folder and put the all lines extracted in a unique output file in the following format. line extracted, respective name of file, date of file. I´m, trying the part to extract... (3 Replies)
Discussion started by: cgkmal
3 Replies

4. Shell Programming and Scripting

exclude lines in a loop

I use while do - done loop in my shell script. It is working as per my expectations. But I do not want to process all the lines. I am finding it difficult to exclude certain lines. 1) I do not want to process blank lines as well as lines those start with a space " " 2) I do not want to... (2 Replies)
Discussion started by: shantanuo
2 Replies

5. Shell Programming and Scripting

loop through files in directory

hi all i have some files present in a directory i want to loop through all the files in the directory each time i loop i should change the in_file parameter in the control file and load it into a table using sql loader there is only one table where i have to load alll the files ... (3 Replies)
Discussion started by: rajesh_tns
3 Replies

6. UNIX Desktop Questions & Answers

Copy all files in 1 directory to another usinge for-in loop

I was looking to get some help with copying files in one directory to another using a for-in loop. My script file is called copyfile and here is what I have: for file in $(ls -a $1) do cp $file ~/dir-2 done When I run copyfile dir-1 this is what I get cp: omitting directory `.'... (1 Reply)
Discussion started by: Trinimini
1 Replies

7. UNIX for Dummies Questions & Answers

[Solved] Writing a loop to changing the names of files in a directory

Hi, I would like to write a loop to change the names of files in a directory. The files are called data1.txt through data1000.txt. I'd like to change their names to a1.txt through a1000.txt. How do I go about doing that? Thanks! (2 Replies)
Discussion started by: evelibertine
2 Replies

8. Shell Programming and Scripting

Loop through files in a directory

Hello How do I loop through files in a specific directory ? This script is not working! #! /bin/bash FILES=/usr/desktop/input/* For f in $FILES; do awk '-v A="$a" -v B="$b" {$6=($1-64)/2 ;$7=((10^($6/10))/A)^(1/B) ; print}' OFS="\t" $f > /root/Desktop/output/$f.txt; done ... (7 Replies)
Discussion started by: ali.seifaddini
7 Replies

9. Shell Programming and Scripting

Loop through files in directory

I am trying to loop through files in a directory, and sort each file. No matter what changes I make to the code, I get the following errors: 'aunch.sh: line 4: syntax error near unexpected token `do 'aunch.sh: line 4: `for f in ${FILES}/*; do #!/bin/bash FILES=$(pwd) for f in ${FILES}/*;... (1 Reply)
Discussion started by: ldorsey
1 Replies

10. Shell Programming and Scripting

Loop through files in directory

I am trying to loop through files in a directory, and sort each file. No matter what changes I make to the code, I get the following errors: 'aunch.sh: line 4: syntax error near unexpected token `do 'aunch.sh: line 4: `for f in ${FILES}/*; do #!/bin/bash FILES=$(pwd) for f in ${FILES}/*;... (6 Replies)
Discussion started by: ldorsey
6 Replies
NEWS.DAILY(8)						      System Manager's Manual						     NEWS.DAILY(8)

NAME
news.daily - do regular Usenet system administration SYNOPSIS
news.daily [ keyword... ] DESCRIPTION
News.daily performs a number of important Usenet administrative functions. This includes producing a status report, removing old news articles, processing log files, rotating the archived log files, renumbering the active file, removing any old socket files found in the ``firewall'' directory, and collecting the output. This program should be run under the news administrator's id, not as root. By default, news.daily performs all of its functions and mails the output to the news administrator, usenet. By specifying ``keywords'' on the command line, it is possible to modify the functions performed, as well as change the arguments given to expire(8) and expireover(8). News.daily should be run once a day, typically out of cron(8). It may be run more often, but such invocations should at least use the ``notdaily'' keyword to prevent the log files from being processed and rotated too fast. The shlock(1) program is used to prevent simultaneous executions. KEYWORDS
The following keywords may be used: delayrm This uses the ``-z'' flag when invoking expire and expireover. The names of articles to be removed are written to a temporary file, and then removed after expiration by calling expirerm(8). expctl=path Specify the file to use as the expire.ctl(5) file for expire. expdir=path By default, expire builds the new history(5) file and database in the same directory as the current files. Using this keyword spec- ifies a different local to build the new files (by passing the ''-d'' flag to expire), which will then be moved to the right loca- tion when finished. nostat This keyword disables the status report generated by innstat (see newslog(8)). Without this keyword, the status report is the first function performed, just prior to obtaining the news.daily lock. notdaily By default news.daily expects to be run only once a day. Use this keyword any extra times news.daily is run in the day and the nor- mal logfile processing (and rotation) will not be done. noexpire By default, expire is invoked to remove old news articles. Using this keyword disables this function. noexplog Expire normally appends information to /var/log/news/expire.log (see newslog(5)). Using this keyword causes the expire output to be handled as part of news.daily's output. It has no effect if the ``noexpire'' keyword is used. flags='expire args' By default, expire is invoked with the an argument of ``-v1''. Using this keyword changes the arguments to those specified. Be careful to use quotes if multiple arguments are needed. This keyword has no effect if the ``noexpire'' keyword is used. nologs After expiration, scanlogs(8) is invoked to process the log files. Using this keyword disables all log processing functions. norotate By default, log processing includes rotating and cleaning out log files. Using this keyword disables the rotating and cleaning aspect of the log processing: the logs files are only scanned for information and no contents are altered. This keyword has no effect if the ``nologs'' keyword is used. The ``norotate'' keyword is passed on to scanlogs if it is invoked. norenumber This keyword disables the ctlinnd(8) renumber operation. Normally, the low-water mark for all newsgroups (see active(5)) is reset. norm By default, any socket ctlinnd socket that has not been modified for two days will be removed. Using this keyword disables this function. nomail News.daily normally sends a mail message containing the results to the administrator. Using this keyword causes this message to be sent to stdout and stderr instead. Normally, all utilities invoked by the script have their stdout and stderr redirected into a file. If the file is empty, no message is sent. expireover The expireover program is called after expiration to purge the overview databases. expireoverflags='expireover args' If the ``expireover'' keyword is used, this keyword may be used to specify the flags to be passed to expireover. If the ``delayrm'' keyword is used, then the default value is ``-z'' and the list of deleted files; otherwise, the default value is ``-s''. /full/path The program specified by the given path is executed just before any expiration is done. A typical use is to specify an alternate expiration program and use the ``noexpire'' keyword. Multiple programs may be specified; they will be invoked in order. HISTORY
News.daily and this manual page written by Landon Curt Noll <chongo@toad.com> and Rich $alz <rsalz@uunet.uu.net>. This is revision 1.11, dated 1996/12/10. SEE ALSO
active(5), ctlinnd(8), expire(8), fastrm(8), newslog(5), newslog(8), innwatch.ctl(5), shlock(1). NEWS.DAILY(8)
All times are GMT -4. The time now is 03:30 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy