Hi,
i want to zip the files that generates automatically
every few minutes (files generated are in .arc
extension)....any body write a script for this...
thanks in advance

Answers were Sorted based on User's Feedback



Hi, i want to zip the files that generates automatically every few minutes (files generated are..

Answer / srinivas

Assuming the *.arc files are getting generated under every
5 minutes..

Create script.sh and cut paste the following contents
--------------------------
while true
do
for i in `ls *.arc` ;
do
ls *.arc 2> /dev/null
if [ $? -eq 0 ]
then
gzip $i
else
echo "No files to be zipped at this moment...Exiting"
exit 1
done
sleep 300
done
--------------------------

Hope this helps

-- Srini

Is This Answer Correct ?    2 Yes 0 No

Hi, i want to zip the files that generates automatically every few minutes (files generated are..

Answer / vipul dalwala

while true
do
find . -name *.arc -exec gzip {} \;
sleep 300
done

Is This Answer Correct ?    2 Yes 0 No

Hi, i want to zip the files that generates automatically every few minutes (files generated are..

Answer / vipul dalwala

while true
do
THIRDFILE=`ls -t | sed -n '3p'`
find . -name '*.arc' ! -newer ${THIRDFILE} -exec gzip {}
\;
sleep 300
done

Is This Answer Correct ?    1 Yes 0 No

Hi, i want to zip the files that generates automatically every few minutes (files generated are..

Answer / sandeep

Mr srinivas , i want last 2 files not to be zipped, rest
files should be zipped...

Is This Answer Correct ?    0 Yes 1 No

Hi, i want to zip the files that generates automatically every few minutes (files generated are..

Answer / narendrasairam

One way is to keep the code snippet in while loop with a
sleep time of 300 seconds (expecting 5 minutes time gap)


while true
do
FILE_EXIST_CHECK=`ls -l | grep ^- | wc -l`
if [ $FILE_EXIST_CHECK -ne 0 ];
then
if [ -f *.arc ];
then
ls *.arc > arc_files.lst
while read arc_filename
do
/usr/local/bin/gzip $arc_filename > /dev/null 2>&1
done < arc_files.lst
fi
else
echo " There are no .arc files existing...."
fi
sleep 300;
done

The other way is to schedule the job using crontab with a
time slice of minutes with out keeping in while true loop.

Is This Answer Correct ?    0 Yes 1 No

Post New Answer

More Shell Script Interview Questions

What is the first line of a shell script called?

0 Answers  


How do I stop script errors?

0 Answers  


What are the 3 standard streams in linux?

0 Answers  


What is gui scripting?

0 Answers  


What is a scripting language simple definition?

0 Answers  






What is the need of including script interpreter in your shell script?

2 Answers  


What are scripts in psychology?

0 Answers  


‎What is a shell? · ‎Types of shell · ‎what is shell scripting?

0 Answers  


What is another name for a bash shell script that you might see?

0 Answers  


What does egrep mean?

0 Answers  


There is a record with fields namely name,roll no.,salary,grade etc.Now,write a script to create a file with multiple records have same combination of fields but with unique roll numbers.The script should work for different names in the input file.

1 Answers   Wipro,


What is a file basename?

0 Answers  


Categories