Problem statement: I want to unzip files from a folder like /home/a/zip_input where there will be 2 zip files like:
/home/a/zip_input
a_EOD-20121129.zip
b_EOD-20121129.zip
Also there will be 1 corresponding .done file for each each zip(basically once the zip is completely copied a .done file is created)
like:
a_EOD-20121129.zip.done
b_EOD-20121129.zip.done
I am trying to write a script to unzip the files which are having a corresponding .done file, and move the file to a location /home/b/file_input. After the file is moved compeltely I want to create a file with .done ext. For eample:
each zip is having one xml file like a_EOD-20121129.xml/b_EOD-20121129.xml
so the output folder will have something like:
a_EOD-20121129.xml
a_EOD-20121129.xml.done
b_EOD-20121129.xml
b_EOD-20121129.xml.done
What I have tried Till now:
for file in $(find . -name "*.zip" -type f)
do
unzip $file -d /home/b/file_input
rm $file
done
Which unzips a.zip/b.zip and creates the xml files.
Issue I am facing –
-
How to make the condition in script that only picks files having a corresponding .done file?
-
How to create a corresponding .done file after the file is unzipped and moved.(have to take the file name and create a file with same name appending .done)?
You can try the following script(Not tested):