Sponsored Content
Top Forums Shell Programming and Scripting Script to delete files with an input for directories and an input for path/file Post 302664055 by Chubler_XL on Thursday 28th of June 2012 07:35:17 PM
Old 06-28-2012
This should get you started you might want to implement more actions (like prompt) and perhaps control which actions occur with command line args check out getopts

Code:
if [ $# -ne 2 ]
then
   echo "usage: $0 list_file dir_file"
   exit 1
fi
LIST_FILE=$1
DIR_FILE=$2
if [ ! -f "$LIST_FILE" ]
then
   echo "unable to open list_file: $LIST_FILE"
   exit 2
fi
if [ ! -f "$DIR_FILE" ]
then
   echo "unable to open dir_file: $DIR_FILE"
   exit 3
fi
found=0
for action in list count del
do
    for del_dir in $(cat $DIR_FILE)
    do
        for del_path in $(cat $LIST_FILE)
        do
            [ -f ${del_dir}/${del_path} ] && case $action in
               count) let found=found+1 ;;
               list) echo "  ${del_dir}/${del_path}" ;;
               del) rm ${del_dir}/${del_path} ;;
            esac
        done
    done
    if [ $action = "count" ]
    then
        [ $found -eq 0 ] && echo "No files found to delete" && exit 5
        printf "OK to delete %d file(s) (Y/N)? " $found
        read ans
        [ "$ans" != "Y" -a "$ans" != "y" ] && exit 0
    fi
done

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

File path with space as external input to the program

Hello I am getting error when the file (Folder or Application) path having space is given as external input to the shell program. It works fine for the files which has no spaces in the file name Thans, (5 Replies)
Discussion started by: keshav.murthy@r
5 Replies

2. Shell Programming and Scripting

a remove script taken in input a file which contain a list of directories

Hi, I'm looking to delete some files from directories. I've just put in a file the location of these files. e.g: in file supprs.txt there is: /usr/host/t1.txt /etc/dev/u1.java /home/new/files/view.c Is it possible to take this file "supprs.txt" as a parameter in a shell command ? (2 Replies)
Discussion started by: yeclota
2 Replies

3. Shell Programming and Scripting

Reading specific contents from 1 input files and appending it to another input file

Hi guys, I am new to AWK and unix scripting. Please see below my problem and let me know if anyone you can help. I have 2 input files (example given below) Input file 2 is a standard file (it will not change) and we have to get the name (second column after comma) from it and append it... (5 Replies)
Discussion started by: sksahu
5 Replies

4. Shell Programming and Scripting

Write a new file from 2 files as input to the script

Hi- I am hoping someone can give me some pointers to get me started. I have a file which contains some dn's .e.g file 1 cn=bob,cn=user,dc=com cn=kev,cn=user,dc=com cn=john,cn=user,dc=com I have a second file e.g. file.template which looks something like :- dn: <dn> objectclass:... (5 Replies)
Discussion started by: sniper57
5 Replies

5. Shell Programming and Scripting

Need script to take input from file, match on it in file 2 and input data

All, I am trying to figure out a script to run in windows that will allow me to match on First column in file1 to 8th Column in File2 then Insert file1 column2 to file2 column4 then create a new file. File1: 12345 Sam 12346 Bob 12347 Bill File2:... (1 Reply)
Discussion started by: darkoth
1 Replies

6. UNIX for Dummies Questions & Answers

Bash script to delete file input on command line

1) I wrote a script and gave the desired permissions using "chmod 755 scriptname". Now if i edit the script file, why do i need to set the permission again? Didn't i set the permission attribute.. or if i edit the file, does the inode number of file changes? 2) I am running my unix on a server... (1 Reply)
Discussion started by: animesharma
1 Replies

7. Shell Programming and Scripting

Need to delete large set of files (i.e) close to 100K from a directory based on the input file

Hi all, I need a script to delete a large set of files from a directory under / based on an input file and want to redirect errors into separate file. I have already prepared a list of files in the input file. Kndly help me. Thanks, Prash (36 Replies)
Discussion started by: prash358
36 Replies

8. Shell Programming and Scripting

Find Files with a input in directories

So i have directories that store logs, 1 directorie for each day, with the name like this : 2012_07_01/ 2012_07_02/ and for each directorie we have the logs, inside them lives the logs for that day, and every log have this name pattern : ... (2 Replies)
Discussion started by: drd0spt
2 Replies

9. Shell Programming and Scripting

Script to delete files older than x days and also taking an input for multiple paths

Hi , I am a newbie!!! I want to develop a script for deleting files older than x days from multiple paths. Now I could reach upto this piece of code which deletes files older than x days from a particular path. How do I enhance it to have an input from a .txt file or a .dat file? For eg:... (12 Replies)
Discussion started by: jhilmil
12 Replies

10. Shell Programming and Scripting

Read input files and merge them in given order and write them to input one param or one file

Dear Friends, I am looking for a shell script to merge input files into one file .. here is my idea: 1st paramter would be outfile file (all input files content) read all input files and merge them to input param 1 ex: if I pass 6 file names to the script then 1st file name as output file... (4 Replies)
Discussion started by: hyd1234
4 Replies
Msgcat(3pm)						User Contributed Perl Documentation					       Msgcat(3pm)

NAME
Locale::Msgcat - Perl extension for blah blah blah SYNOPSIS
use Locale::Msgcat; $cat = new Locale::Msgcat; $rc = $cat->catopen(name, oflag); $msg = $cat->catgets(set_number, message_number, string); $rc = $cat->catclose(); DESCRIPTION
The Locale::Msgcat module allows access to the message catalog functions which are available on some systems. A new Locale::Msgcat object must first be created for each catalog which has to be open at a given time. The catopen operation opens the catalog whose name is given as argument. The oflag can be either 0 or NL_CAT_LOCALE (usually 1) which is the recommended value. The catgets message retrieves message_number for the set_number message set, and if not found returns string. The catclose function should be used when access to a catalog is not needed anymore. EXAMPLES
use Locale::Msgcat; $cat = new Locale::Msgcat; unless ($cat->catopen("whois.cat", 1)) { print STDERR "Can't open whois catalog. "; exit(1); } printf "First message, first set : %s ", $cat->catgets(1, 1, "not found"); unless ($cat->catclose()) { print STDERR "Can't close whois catalog. "; exit(1); } The above example would print the first message from the first message set found in the whois catalog, or if not found it would print "not found". AUTHOR
Christophe Wolfhugel, wolf@pasteur.fr SEE ALSO
catopen(3), catclose(3), catgets(3), perl(1). perl v5.14.2 1999-11-15 Msgcat(3pm)
All times are GMT -4. The time now is 08:51 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy