Sponsored Content
Top Forums Shell Programming and Scripting Perl : Delete all files except few Post 302885647 by bartus11 on Monday 27th of January 2014 04:46:39 PM
Old 01-27-2014
Put this into "script.pl":
Code:
#!/usr/bin/perl
use strict;
use warnings;
use Getopt::Std;
use File::Find;

our ($opt_d, $opt_e);
getopt("de");
die "exclude is not defined (no parameter for -e)" unless defined $opt_e;
our $dir = $opt_d;
die "$dir is not a directory (wrong parameter for -d)" unless -d $dir;
our @exclude = split /,/, $opt_e;

finddepth(\&wanted, "$dir");

sub wanted {
  if (( ! grep {$File::Find::name eq "$dir/$_"} @exclude) && (-f $_)) {
    unlink $_;
  }
}

Then run the script as:
Code:
./script.pl -d/path/to/test1 -e"dir1/abc.txt,dir2/test.xml,dir3/dfb.txt,dir4/text.xml"

This User Gave Thanks to bartus11 For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Delete all files if another files in the same directory has a matching occurence of a specific word

Hello, I have several files in a specific directory. A specific string in one file can occur in another files. If this string is in other files. Then all the files in which this string occured should be deleted and only 1 file should remain with the string. Example. file1 ShortName "Blue... (2 Replies)
Discussion started by: premier_de
2 Replies

2. Shell Programming and Scripting

perl script to check if empty files are created and delete them and run a shell script

I have a local linux machine in which the files are dumped by a remote ubuntu server. If the process in remote server has any problem then empty files are created in local machine. Is there any way using perl script to check if the empty files are being created and delete them and then run a shell... (2 Replies)
Discussion started by: hussa1n
2 Replies

3. Shell Programming and Scripting

delete last row in PERL

How to delete last row in the file in PERL. file1 has a.output b.output c.output d.output e.output expected output is a.output b.output c.output d.output (1 Reply)
Discussion started by: adaleru
1 Replies

4. Shell Programming and Scripting

How to delete newline with perl

input: donkey monkey dance drink output should be: donkey monkey (8 Replies)
Discussion started by: cola
8 Replies

5. Shell Programming and Scripting

delete a file using perl

Hi, How to delete a file (if exists) using perl script. I have used following script.. if ( -e $newfile) { open (FILE, ">$newfile") || die "Cannot Open File\n"; print FILE; close(FILE); } But it gives me error "Use of uninitialized value in print". please help. Thanks in... (1 Reply)
Discussion started by: arup1980
1 Replies

6. Shell Programming and Scripting

Delete files in directory using perl

Hello All I am implementing my task in Perl and i found an issue. What i want to do is to remove files from the directory which were made 20 days back using Perl script (9 Replies)
Discussion started by: parthmittal2007
9 Replies

7. Shell Programming and Scripting

Need help creating a script to FTP files to a server and then delete the files that were transfered.

I am trying to FTP files to a Windows server through my Linux machine. I have setup the file transfer with no problems but am having problem deleting those files from the Linux box. My current non-working solution is below. Any ideas, anyone?? :wall: Please be gentle, I'm fairly new to this... (4 Replies)
Discussion started by: jmalfhs
4 Replies

8. Shell Programming and Scripting

Perl Script to find the disk usage and to delete the files which is consuming more space

Hi All, I have written a script to check the file system usage and to delete the files which is consuming more space.Please check whether the script is corrcet #Script Starts here #!/usr/local/bin/perl #Program to find the disk space and to delete the older files #Checks the type of OS... (8 Replies)
Discussion started by: arunkarthick
8 Replies

9. Shell Programming and Scripting

Delete all files if another files in the same directory has a matching occurrence of a specific word

he following are the files available in my directory RSK_123_20141113_031500.txt RSK_123_20141113_081500.txt RSK_126_20141113_041500.txt RSK_126_20141113_081800.txt RSK_128_20141113_091600.txt Here, "RSK" is file prefix and 123 is a code name and rest is just timestamp of the file when its... (7 Replies)
Discussion started by: kridhick
7 Replies

10. Shell Programming and Scripting

Script needed to delete to the list of files in a directory based on last created & delete them

Hi My directory structure is as below. dir1, dir2, dir3 I have the list of files to be deleted in the below path as below. /staging/retain_for_2years/Cleanup/log $ ls -lrt total 0 drwxr-xr-x 2 nobody nobody 256 Mar 01 16:15 01-MAR-2015_SPDBS2 drwxr-xr-x 2 root ... (2 Replies)
Discussion started by: prasadn
2 Replies
CGEXEC(1)							 libcgroup Manual							 CGEXEC(1)

NAME
cgexec - run the task in given control groups SYNOPSIS
cgexec [-h] [-g <controllers>:<path>] [--sticky] command [arguments] DESCRIPTION
The cgexec program executes the task command with arguments arguments in the given control groups. -g <controllers>:<path> defines the control groups in which the task will be run. controllers is a list of controllers and path is the relative path to control groups in the given controllers list. This flag can be used multiple times to define multiple pairs of lists of controllers and relative paths. Instead of the list of all mounted controllers, the wildcard b"*b" can be used. If this option is not used, cgexec will automatically place the task in the right cgroup based on /etc/cgrules.conf. If /etc/cgrules.conf configuration file is used, there can be used template names. Then the control group name contains a template in destination tag (see cgrules.conf (5)) and if the cgroup does not exist in execution time, it is created, based on /etc/cgcon- fig.conf specification. If the specifications are not present the group is created with the default kernel values. -h, --help Display this help and exit. --sticky If running the task command with this option, the daemon of service cgred (cgrulesengd process) does not change both the task of the command and the child tasks. Without this option, the daemon does not change the task of the command but it changes the child tasks to the right cgroup based on /etc/cgrules.conf automatically. EXAMPLES
cgexec -g *:test1 ls runs command ls in control group test1 in all mounted controllers. cgexec -g cpu,memory:test1 ls -l runs command ls -l in control group test1 in controllers cpu and memory. cgexec -g cpu,memory:test1 -g swap:test2 ls -l runs command ls -l in control group test1 in controllers cpu and memory and control group test2 in controller swap. ENVIRONMENT VARIABLES
CGROUP_LOGLEVEL controls verbosity of the tool. Allowed values are DEBUG, INFO, WARNING or ERROR. FILES
/etc/cgrules.conf default libcgroup configuration file SEE ALSO
cgrules.conf (5) Linux 2009-03-15 CGEXEC(1)
All times are GMT -4. The time now is 12:52 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy