Archive different folders based on their names


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Archive different folders based on their names
# 8  
Old 10-05-2010
MySQL

I made little modification on rcdcwayx code, and is working fine now:

Code:
rootpath="/somefolder"   # you can update here, if the backup folder are not under /
cd $rootpath 
ls -l|grep back_ |awk '/^d/ {print $NF}' |while read dir
 do
   cd ${rootpath}/${dir}
  ls -l |awk '/^d/ {print $NF}' |while read subdir
 do
 tar cvf - ${subdir} |gzip > ${subdir}_${dir#*_}.tar.gz # or replace by below command, if you have gtar 
# gtar zcvf ${subdir}_${dir#*_}.tar.gz ${subdir}
 done
 cd $rootpath
 done

Just "back_" folders are processed, all tars are created now in own "back" folders and contain only right subfolder. I can’t understand why cd command doesn’t work without $rootpath variable ("line 7: cd: back1: No such file or directory" are displayed and all script go crazy).

Still I don’t know how to delete archived files and subfolders and how to avoid archival of already archived folders on next script run. Maybe changing the name of main folder from “back_” to “back.” after archiving process end, may by a solution.

Thanks again for help.

Last edited by vilibit; 10-05-2010 at 10:02 AM.. Reason: Bad Formating - Again
# 9  
Old 10-08-2010
Bug

The final version:

Code:
cd $rootpath

ls -l|grep back_ |awk '/^d/ {print $NF}'  |while read dir
do
  cd ${rootpath}/${dir}
  ls -l |awk '/^d/ {print $NF}' |while read subdir
  do
     tar cvf - ${subdir} |gzip > ${subdir}_${dir#*_}.tar.gz   # or replace by below command, if you have gtar
#   gtar zcvf ${subdir}_${dir#*_}.tar.gz ${subdir}
     rm -rf $subdir
  done
  cd $rootpath
done
rename back_ back. back_*

All subfolders are deleted and main folders are renamed to not be procesed on next run.

Last edited by vilibit; 10-08-2010 at 05:32 AM..
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Allocating names to folders based on a file

Hi everyone, I have a problem and I would be gratful if you can help. I have set of folders with files in them. e.g. data1, data2, data3 and I have a json file with info ... looking like this I want to rename my files to replace the data with their gender to some processing and back to... (8 Replies)
Discussion started by: A-V
8 Replies

2. UNIX for Dummies Questions & Answers

Archive folders and sub folders

Hi Can i archive folder and folders in with the tar command My files are located in subfolders Eg: Folder1/Folder1_1/*.pdf Folder1/Folder1_2/*.pdf Folder1/Folder1_3/*.pdf so i would like to tar all the files in Folder1_1 and Folder1_2 only not Folder1_3 that should be done next... (2 Replies)
Discussion started by: cnrj
2 Replies

3. Shell Programming and Scripting

Files with same names in different folders

Hello, I am looking for a command line that can do some operations on two files that have the same names but in different folders. for example if folder A contains files 1.txt, 2.txt, 3.txt,.. folder B contains files 1.txt, 2.txt, 3.txt,.. If I would like to concatenate the two files... (6 Replies)
Discussion started by: Mohamed EL Hadi
6 Replies

4. OS X (Apple)

Remove leading spaces from file names and folders

Hi All, I have a vexing issue with leading spaces in file names. Basically, we're moving tons of data from our ancient afp file share to Box.com and Box forbids leading spaces in files or folders. The HFS file system seems to be perfectly fine with this, but almost all other Unix file systems... (1 Reply)
Discussion started by: prometheon123
1 Replies

5. Shell Programming and Scripting

Ordering Folders having Date as Names

Hi All, I have directories under /development/arun/weekly/ 20120421 20120414 . . . . I need to arrange these directories in descending order. folder name with recent date will be on top and then others. (1 Reply)
Discussion started by: Arun Mishra
1 Replies

6. Shell Programming and Scripting

Archive files to different target folders based on criteria

Hi All, I am creting archive script in which i need to split the source file's to different target folder's based on the input file name first character. Input1.txt -- will contains file names that are needs to be Archive. Input1.txt A1213355 B2255666 C2254555 A6655444 C5566445 ... (2 Replies)
Discussion started by: kmsekhar
2 Replies

7. UNIX for Dummies Questions & Answers

How to Archive Folders in T-Shell

Hi i am new to Unix Shell Programming... i m just a beginner and i m training myself in Unix.... I need a sample code to archive folders in my Windows OS using Unix commands... Can someone Help me? (1 Reply)
Discussion started by: aegan
1 Replies

8. UNIX for Dummies Questions & Answers

Copying multiple folders to local machine (don't know folder names)

Hi. I'm trying to copy multiple folders from the remote machine to the local machine. I wrote a batch file to run an ftp window. The problem I am having is that the only command to copy files is mget *, and this copies only files, not folders. For example, ftp ts555 cd ts555/test ' test... (5 Replies)
Discussion started by: leenyburger
5 Replies

9. Shell Programming and Scripting

script to archive certain folders in a hierarchy

I'm new to shell scripting and I'm having a tough time figuring out how to script something. Can anyone help? Here is my setup and what I want to do: A directory contains a list of projects by year (2000, 2001, etc) and customers (01-001) all of which have the same internal directory setup... (3 Replies)
Discussion started by: medazinol
3 Replies
Login or Register to Ask a Question