Solved

Cron to copy and append date to .html file

Posted on 1998-09-16
14
260 Views
Last Modified: 2010-04-21
I've written a cron to do the following:
Copy my analog.html file from one dir to another and saving the analog.html file with the date appended. As such 091698_analog.html. Here's what I have so far.
cp $dir1/analog.html $dir2/'date'+%m%d%y''_$analog.html
It does copy the file to the new dir but the file name ends up as %m%d%y_analog.html
What can I change to ensure the date is appended to the file name?
Any help appreciated
Thanks =PC=
0
Comment
Question by:smelt
  • 7
  • 6
14 Comments
 
LVL 51

Expert Comment

by:ahoffmann
ID: 2006994
cp $dir1/analog.html $dir2/`date '+%m%d%y'`_analog.html
0
 

Author Comment

by:smelt
ID: 2006995
Actually I tried this first and the file name returned as just _analog.html  No Date
Any other suggestions?
0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 2006996
did you try full pathnames?

cp $dir1/analog.html $dir2/`/bin/date '+%m%d%y'`_analog.html
0
 

Author Comment

by:smelt
ID: 2006997
Yes, I've tried full path.
This is what I have:
cp $ /home/httpd/html/analog/analog.html $ /home/httpd/html/analog/backup/`date '+%m%d%y'`_analog.html

Do I need to run the date first? It seems like it's not running the date, just appending the %m%d%y to the filename. I've tried the date %m%d%y from the command line and it runs as it should.
Running Red Hat Linux release 5.1 (Manhattan)    

0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 2006998
what are the  $  (dollar) signs iin your cp command for ?

date enclosed in backtics (graves) should work.

Is your command in crontab, or does crontab call a script to
do this? If it is a script, which shell is used?
0
 

Author Comment

by:smelt
ID: 2006999
Currently the command is in crontab.
I've tried with and without the {$}
I'll try the (date)enclosed and see what happens.

0
 

Author Comment

by:smelt
ID: 2007000
I tried the (date) and no go.
Basically I need to ensure that the file would be copied to the new dir with a name change so as not to copy over an existing analog.html file. I'd like to keep a running log so that I can compare. Even if it were some sort of incremental routine so that the file is copied and named 1_analog.html and the next time cron runs it names it 2_analog.html
Is there another way other than date?
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 3

Accepted Solution

by:
junfeb earned 200 total points
ID: 2007001
Try this -
cp tmp/analog.html tmp1/`date +'%m%d%y'`_analog.html
 
here tmp and tmp1 are two directories

cp tmp/analog.html tmp1/(backquote)date (space)+(singlequote)%m%d%y(singlequote)(backquote)_analog.html.

This would create a file named
091798_analog.html

I hope this is what you want.

Thanks.
0
 

Author Comment

by:smelt
ID: 2007002
Thanks It works.
I'm happy:)
0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 2007003
Hmm, I can't see any difference between junfeb's answer and mine,
except that the + is not inside the quotes (which should not make
a difference.
Could you please explain?
0
 

Author Comment

by:smelt
ID: 2007004
I did try the + inside the quotes. It did not work. I've tried many times with quotes, without, spacing, brackets. It just so happens that junfebs' response worked.
Initially my first attempt was the same as junfebs but the quote was on the wrong side of the + sign...
0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 2007005
Whis OS are you using?
0
 

Author Comment

by:smelt
ID: 2007006
Red Hat Linux release 5.1 (Manhattan)   It Rocks!
0
 
LVL 51

Expert Comment

by:ahoffmann
ID: 2007007
Strange.
Could you test with another shell (which one do you have?).

I'm just wondering.
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Introduction Regular patching is part of a system administrator's tasks. However, many patches require that the system be in single-user mode before they can be installed. A cluster patch in particular can take quite a while to apply if the machine…
Why Shell Scripting? Shell scripting is a powerful method of accessing UNIX systems and it is very flexible. Shell scripts are required when we want to execute a sequence of commands in Unix flavored operating systems. “Shell” is the command line i…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
In a previous video, we went over how to export a DynamoDB table into Amazon S3.  In this video, we show how to load the export from S3 into a DynamoDB table.

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now