Remove files in directories


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Remove files in directories
# 1  
Old 03-26-2015
Remove files in directories

I am trying to remove files from a couple of directories after a process completes. Below is what I have so far, but the command does not run and cygwin closes too fast to read the error. Also, is it possible to have the printf be displayed until the files are removed then printf in italics is displayed and the program exits? Thank you Smilie.

Code:
 
remove() {
    printf "\n\n"
    printf "Removing old files, please wait ";
  # annovar directory
  my $filename = qw[ 'C:\Users\cmccabe\Desktop\annovar\out_position.txt', 'C:\Users\cmccabe\Desktop\annovar\out_parse.txt' ];
  unlink $filename or die "Couldn't unlink($filename) : ($!)($^E)";
  
  # python directory
  my $filename = qw[ 'C:/Users/cmccabe/Desktop/Python27/${id}.txt', 'C:/Users/cmccabe/Desktop/Python27/out_name.txt' ];
  unlink $filename or die "Couldn't unlink($filename) : ($!)($^E)";
  printf "\n Old files removed, Goodbye! \n\n"; sleep 2 && exit
}

# 2  
Old 03-26-2015
1. How are you invoking this perl sub-routine? If this is in a perl script, then are you invoking it on cygwin command line?

2. $id is not defined anywhere in the scope of remove() routine.

3. Just for the sake of debugging, you could have some mechanism to wait until the user enters an input and quit after that.
# 3  
Old 03-26-2015
I am invoking the sub-routine as part of a bash menu. Basically, the user is prompted with a Yes/No selection and a No response leads to the sub-routine: Is there a better way to remove files after a script completes?

I modified it a bit and it runs now but the files still remain in the directory and are not removed. $id.txt is a variable in the python directory that represents the id that the user types in. Thank you Smilie.

Code:
remove() {
    printf "\n\n"
    printf "Removing old files, please wait ";
	
  # annovar directory
  my $filename = qw[ 'C:\Users\cmccabe\Desktop\annovar\out_position.txt' ];
  my $filename = qw[ 'C:\Users\cmccabe\Desktop\annovar\out_parse.txt' ];
  unlink $filename or die "Couldn't unlink($filename) : ($!)($^E)";
  
  # python directory
  cd cd 'C:'
  my $filename = qw[ C:/Users/cmccabe/Desktop/Python27/$id.txt ];
  my $filename = qw [ C:/Users/cmccabe/Desktop/Python27/out_name.txt ];
  unlink $filename or die "Couldn't unlink($filename) : ($!)($^E)";
  
  printf "\n Old files removed, Goodbye! \n\n"; sleep 2 && exit
}

# 4  
Old 03-26-2015
Remembering well your other threads in which you built shell scripts with only a few python commands, I'd second balajesuri"s assumption that you mix shell/perl/python commands. Why don't you just use the rm command in shell?
# 5  
Old 03-26-2015
Something like:

Code:
 
# delete old samples
rm 'C:\Users\cmccabe\Desktop\annovar\out_position.txt'
rm 'C:\Users\cmccabe\Desktop\annovar\out_parse.txt'


Thank you Smilie.

Last edited by cmccabe; 03-26-2015 at 04:50 PM..
# 6  
Old 03-26-2015
Yes. And check the exit codes after each rm to output an error msg if need be.
# 7  
Old 03-26-2015
Code:
 # delete old samples
rm 'C:\Users\cmccabe\Desktop\annovar\out_position.txt' || :
rm 'C:\Users\cmccabe\Desktop\annovar\out_parse.txt' || :

This will make the delete run if there are errors, right? Is there a way to return what files couldn't be removed? Thank you Smilie.
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Archiving and moving files into directories, creating directories, etc.

how can i move "dataName".sql.gz into a folder called 'database' and then move "$fileName".tar.gz * .htaccess into a folder called 'www' with the entire gzipped file being "$fileName".tar.gz? Is this doable or overly complex. so mydemo--2015-03-23-1500.tar.gz > database -... (5 Replies)
Discussion started by: wyclef
5 Replies

2. AIX

How to remove ISMP files when the directories have been deleted?

Hello all, I've been asked to help with some cleanup on a couple of systems that were running some Websphere apps. I need to remove the following filesets: mqsi61.cfgmgrc 6.1.0.2 COMMITTED Config. Manager Component mqsi61.cfgmgrf 6.1.0.2 COMMITTED Config.... (4 Replies)
Discussion started by: ZekesGarage
4 Replies

3. Shell Programming and Scripting

How to list all the files, directories and sub-directories in the current path except one directory?

Can anyone come up with a unix command that lists all the files, directories and sub-directories in the current directory except a folder called log.? Thank you in advance. (7 Replies)
Discussion started by: Manjunath B
7 Replies

4. UNIX for Dummies Questions & Answers

List directories and sub directories recursively excluding files

Hi, Please help me, how to get all the direcotries, its sub directories and its sub directories recursively, need to exclude all the files in the process. I wanted to disply using a unix command all the directories recursively excluding files. I tried 'ls -FR' but that display files as... (3 Replies)
Discussion started by: pointers
3 Replies

5. UNIX for Dummies Questions & Answers

remove all directories and sub-directories

Please could someone advise me the unix command to remove all directories and sub-directories with files within the directory structures. Thank you (6 Replies)
Discussion started by: venhart
6 Replies

6. Shell Programming and Scripting

read list of filenames from text file and remove these files in multiple directories

I have a large list of filenames from an Excel sheet, which I then translate into a simple text file. I'd like to use this list, which contains various file extensions , to archive these files and then remove them recursively through multiple directories and subdirectories. So far, it looks like... (5 Replies)
Discussion started by: fxvisions
5 Replies

7. Shell Programming and Scripting

Need to remove files older than 30 days except directories

Hi, I need to remove files (*.trc) which are older than 30 days from one location. My problem is there I do not want to visit any of the directories at that location. I want to search files at that particular location only (need to skip directorys at that location). maxdepth option is there... (6 Replies)
Discussion started by: malaymaru
6 Replies

8. Shell Programming and Scripting

How to Remove Ctrl M characters in files from directories and its subdirectories

Hi, How to recursively remove Ctrl M characters in files from a directory and its sub directory ? I know unix2dos command is there but to remove in bunch of files ... ? Thanks (7 Replies)
Discussion started by: skdp
7 Replies

9. Shell Programming and Scripting

Check all files in directories for string and remove.. possible?

Say I am in /var/adm/bin and I want to search through all the various scripts and such in that directory for a string, say, xxx@yyy.com I want to find every file with that in there and replace it with a single space. Is that possible? Or, is it possible to search every file and get a list... (7 Replies)
Discussion started by: LordJezo
7 Replies
Login or Register to Ask a Question