Solved

File Copy Script

Posted on 2011-03-09
11
382 Views
Last Modified: 2012-06-21
I had a question posted earlier about script to copy files and create a text document of the files that were copied:
I need a script to create a folder on a Log Server and then copy files from one Server into that folder. I need it to create a .txt file listing all the files copied but save that file in a different location. Here is the script I'm using now, so if we can just make additions to this it would be great!!!

@echo off
set T=%time:~0,5%
set dir=%date:/=-% %T::=-%
echo The target folder is "%dir%".
xcopy /s /c /y "D:\GCTI\Logs\KSC_SIP_Agent_1_Bac\Archive\*.*" "\\usmoksc5app55\logs\usmoksc5app10\%dir%\"

The answer was to add to the existing script:
 >> "\\mysharedlocation\mylog.log"

I need a way to make the log file created named for date and time as I will run this script 4 times daily and need to not overwrite any previous logs.

The working answer was to add to the script:
0
Comment
Question by:charlespliler
  • 6
  • 4
11 Comments
 
LVL 2

Expert Comment

by:cefranklin
ID: 35086955
Set an xcopy before to ouput the log file?

@echo off
set T=%time:~0,5%
set dir=%date:/=-% %T::=-%
echo The target folder is "%dir%".
xcopy /L "D:\GCTI\Logs\KSC_SIP_Agent_1_Bac\Archive\*.*" "\\usmoksc5app55"\\usmoksc5app55\logs\usmoksc5app10\%dir%\COPYLOG_%dir%.txt" 
xcopy /s /c /y "D:\GCTI\Logs\KSC_SIP_Agent_1_Bac\Archive\*.*" "\\usmoksc5app55\logs\usmoksc5app10\%dir%\" 

Open in new window

0
 

Author Comment

by:charlespliler
ID: 35087020
I just need the output log file to be named according to date and time it is created instead of log.log as file name, I need 3/9/11 13:20.log
0
 
LVL 2

Expert Comment

by:cefranklin
ID: 35087207
First off, you cannot use a "/" or ":" in file or folder names...
Second, use the %date:/=-% for the date and the %T::=%

%date:/=-% %T::=%.log

Also, I had an error in the line for your script:

xcopy /L "D:\GCTI\Logs\KSC_SIP_Agent_1_Bac\Archive\*.*" > "\\usmoksc5app55"\\usmoksc5app55\logs\usmoksc5app10\%dir%\%date:/=-% %T::=%.log"
0
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:charlespliler
ID: 35087480
Here is the script with the correct folder names etc, with the additions you gave me. I get a "network Path not Found error for the log creation but the file copy works just like it used to. Ideas???

@echo off
set T=%time:~0,5%
set dir=%date:/=-% %T::=-%
echo The target folder is "%dir%".
xcopy /L "D:\GCTI\Logs\*.*" >  "\\usmoksc5app55"\\usmoksc5app55\logs\usmoksc5app20\%dir%\%date:/=-% %T::=%.log"
 
xcopy /s /c /y "D:\GCTI\Logs\*.*" "\\usmoksc5app55\logs\usmoksc5app20\%dir%\"
0
 
LVL 2

Expert Comment

by:cefranklin
ID: 35087518
Your script is wrong... you have "\\usmoksc5app55 twice
0
 
LVL 2

Expert Comment

by:cefranklin
ID: 35087524
xcopy /L "D:\GCTI\Logs\*.*" >  "\\usmoksc5app55"\\usmoksc5app55\logs\usmoksc5app20\%dir%\%date:/=-% %T::=%.log"

should be

xcopy /L "D:\GCTI\Logs\*.*" >  "\\usmoksc5app55\logs\usmoksc5app20\%dir%\%date:/=-% %T::=%.log"
0
 

Author Comment

by:charlespliler
ID: 35087833
I copied it exactly as you posted but it says: The system can not find the path specified
0
 
LVL 2

Accepted Solution

by:
cefranklin earned 250 total points
ID: 35087876
Uhh, are you making the dir first?  I think the xcopy /s /c /y actually makes the dir but, the /L doesn't?

Try adding mkdir "\\usmoksc5app55\logs\usmoksc5app20\%dir%" before the xcopy /L

0
 

Author Closing Comment

by:charlespliler
ID: 35088024
That was it, no Directory to create the .log in. Thank you so much!!!!
0
 
LVL 2

Expert Comment

by:cefranklin
ID: 35088049
Glad I could help.
0
 
LVL 26

Expert Comment

by:pony10us
ID: 35088229
You might want to put an "IF NOT EXIST" in front of the "MKDIR ..." for safety reasons. That way if it does exist it won't try to create it but if it doesn't then it will.

IF NOT EXIST "\\usmoksc5app55\logs\usmoksc5app20\%dir%" MKDIR "\\usmoksc5app55\logs\usmoksc5app20\%dir%"

Just an afterthought.

:)
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Using dates in 'DOS' batch files has always been tricky as it has no built in ways of extracting date information.  There are many tricks using string manipulation to pull out parts of the %date% variable or output of the date /t command but these r…
Being a system administrator some time we require to do things remotely, one of them is installing software. Here I am going to tell you how to install software through wmic (Windows management instrument console). I am not at all saying that this i…
Attackers love to prey on accounts that have privileges. Reducing privileged accounts and protecting privileged accounts therefore is paramount. Users, groups, and service accounts need to be protected to help protect the entire Active Directory …

730 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