removing file


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users removing file
# 1  
Old 02-11-2002
removing file

Hi All

Can u tell me how to delete files (on unix)which is
exactly one month old or for that matter of a
particular date.
# 2  
Old 02-11-2002
Hi,

I think u should find the files using find with an option of +mtime ( or +atime ) and use rm command on its output.

Check the man pages of find and this is available with examples.
# 3  
Old 02-12-2002
is there any speed difference between the two ? also do both rcp or ftp use the same type of protocol ??
# 4  
Old 02-12-2002
There is no speed difference - the difference is in the 'time' of the file. -atime will give the files accessed n days ago while -ctime gives you files in which the status was changed n days ago.

Experiment with the files you are looking at -
% find ./ -name "*" -atime 20 -ls
or % find ./ -name "*" -ctime 20 -ls

Once you get the numbers and files correct in your list, then
use something like the following
find ./ -name "*" -atime 30 -exec rm {} \;
(it is very important you get the last part correct since unknown errors could occur ) Also realize if you are dealing with removing a month's worth of files, this does it by days, you want to be careful of short months (such as this month).
thehoghunter
# 5  
Old 02-12-2002
homework???

Maybe its just me, but this looks a lot like a homework question.


If this is homework, please do a "man" on the find command. Or get a copy of the "Unix in a Nutshell" by O'Reilly.
# 6  
Old 02-12-2002
CPU & Memory Alternative and a little info

do:

find . /a/b/c/log -name \*.log -mtime +10 | xargs rm

use mtime which is time last modified. if you use atime it means accessed. if someone looks at the file every day it will
never be deleted.

| xargs is more efficient because it does the action once on all files found vs. exec()ing an rm for each file.

you need to quote the * with ' or \ because the shell will expand the star to mean all files in . when in " type quotes.

Also take a look at the program below as a solution:
Code:
#!/usr/bin/perl

@list2delete = `find /a/b/c/log -name \*.log -mtime +20 `;

$total = @list2delete;
if ($total !=0)
{
  foreach $i (@list2delete)
  {
    chomp $i;
    print "DELETING: $i\n";
    unlink $i;
  }
  print "$total files were removed\n";
}
else
{
  print "No Files to delete\n";
}

Smilie

added code tags for readability --oombera

Last edited by oombera; 02-20-2004 at 02:32 PM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

File Management: Removing of files from Server2 IF the same file is removed from Server1.

Hi Folks, I have a requirement of file management on different servers. Source Server is SERVER-A. Two servers will fetch files from SERVER-A: SERVER1 and SERVER2. 4th SERVER is SERVER-B, It will fetch files from SERVER1. If SERVER1 goes DOWN, SERVER-B will fetch pending files from... (2 Replies)
Discussion started by: Raza Ali
2 Replies

2. UNIX for Dummies Questions & Answers

Removing PATTERN from txt without removing lines and general text formatting

Hi Everybody! First post! Totally noobie. I'm using the terminal to read a poorly formatted book. The text file contains, in the middle of paragraphs, hyphenation to split words that are supposed to be on multiple pages. It looks ve -- ry much like this. I was hoping to use grep -v " -- "... (5 Replies)
Discussion started by: AxeHandle
5 Replies

3. Linux

File conversion and removing special characters from a file in Linux

I have a .CSV file when I check for the special characters in the file using the command cat -vet filename.csv, i get very lengthy lines with "^@", "^I^@" and "^@^M" characters in between each alphabet in all of the records. Using the code below file filename.csv I get the output as I have a... (2 Replies)
Discussion started by: dhruuv369
2 Replies

4. Programming

[Solved] Removing duplicates from the file and saving as new file

Dear All I have 200 data files and each files has many duplicates. I am looking for the automated awk script such that it checks and removes the duplicates from the each file and saving them as new files for all 200 files in the respective folder. For example my data looks like this.. ... (12 Replies)
Discussion started by: bala06
12 Replies

5. Shell Programming and Scripting

Removing part of a file name and appending into a single file

I have two files like ABC_DEF_yyyyymmdd_hhmiss_XXX.txt and ABC_DEF_yyyyymmdd_hhmiss_YYY.txt. The date part is going to be changing everytime. How do i remove this date part of the file and create a single file like ABC_DEF_XXX.txt. (8 Replies)
Discussion started by: varlax
8 Replies

6. UNIX for Dummies Questions & Answers

Help removing multiple lines from one file with a list from a second file!

I am trying to remove the lines listed in example File A from File B to achieve File C. Both files are much larger than the examples below. (File B has up to 6,000 lines). I have searched the forums and I have not been able to find an answer to this particular question. I tried grep -v -f... (2 Replies)
Discussion started by: pezziza
2 Replies

7. Shell Programming and Scripting

rename file by removing some part of the file name

I am special requirements to rename file. I have files with names like below: 1_firstname1_lastname1.html 2_firstname2_lastname2.html 3_fistname3_lastname2.html I would like these file to be renamed as below firstname1_lastname1.html firstname2_lastname2.html... (5 Replies)
Discussion started by: McLan
5 Replies

8. UNIX for Dummies Questions & Answers

Help removing strings from one file that match any of the values in a second file.

Hello, I have a file that lists a few hundred values. Example: abca abcb abcc abcd I have a 2nd file with a few thousand lines. I need to remove every line from the 2nd file that contains any of the values listed in first file. Example of strings to delete: line1 *abca* end of... (1 Reply)
Discussion started by: upstate_boy
1 Replies

9. UNIX for Dummies Questions & Answers

Removing a file name (-T-G1)

I have a list below in my directory: -T-G1 How can I remove it??? Thanks! (3 Replies)
Discussion started by: bobo
3 Replies

10. UNIX for Dummies Questions & Answers

removing a line from a file and then placing into another file

grep `whoami` $1 >> file this lets me take out the username from a file and then i move it to a file but i need it to do one step at a time because i want the occurences to be numbered like 1)HOME=/home/joe.bloggs 2)LOGNAME=joe.bloggs instead of just HOME=/home/joe.bloggs... (1 Reply)
Discussion started by: iago
1 Replies
Login or Register to Ask a Question