這是我的代碼昨天得到服務器日期。如何使用.bat文件和WinSCP將昨天的文件上傳到SFTP?
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set /A "DD=(%dt:~6,2%)-1"
set datestamp=%YYYY%%MM%%DD%
set RunDate=%datestamp%
不過,我想在此語法添加此條件:
"C:\Program Files (x86)\WinSCP\winscp.com" /console^
/command "open sftp://Username:Password]@port" "cd /Dir" "put Dir\.CSV file" pause exit
因此,這將是:
C:\Program Files (x86)\WinSCP\winscp.com /console /command
open sftp://USER:PASS]@IP
cd Dir
@echo off
setlocal
del Dir\Script.txt
echo User>>Dir\Script.txt
echo Pass>>Dir\Script.txt
echo passive>>Dir\Script.txt
echo prompt>>Dir\Script.txt
echo cd Dir>>Dir\Script.txt
echo binary>>Dir\Script.txt
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do
set
"dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set /A "DD=
(%dt:~6,2%)-1"
set datestamp=%YYYY%%MM%%DD%
set RunDate=%datestamp%
echo %RunDate%
echo put Dir_%RunDate%.csv>>Dir\Script.txt
echo close>>Dir\Script.txt
pause
exit /b
我試圖將變量%RunDate%
添加到任何.csv
文件(帶格式的昨天日期)以將其上載到SFTP。
目前尚不清楚,你想做的事。你想上傳所有'.csv'文件哪些文件名包括當前日期?即'aaa20171016.csv','bbb20171016.csv'等? –
嗨馬丁, 感謝您的答覆。我想上傳一個具有昨天日期值的文件。示例文件名:Data_Country_20171015.csv。 – MerCal
因此,昨天的日期總是隻有一個文件? –