我正在處理一個批處理腳本,該腳本需要轉換的視頻文件並將它們通過電子郵件發送給用戶。但是,轉換完成後,腳本開始將它們上傳到服務器,批處理腳本再次啓動。此問題正在導致文件被多次轉換和上傳,它也會將重複的電子郵件發送給同一用戶。什麼可能導致此腳本重新啓動?FTP傳輸過程中的批量腳本循環
說明:當我說「再次啓動」或「重新啓動」時,意思是腳本的新實例在另一個完成之前啓動。
編輯:由於格式化問題,此腳本已更新如下,但問題仍然存在。
C:\ffmpeg\bin\ffmpeg.exe -i C:\projects\weatherRecorder\avi\%1.mpg -qscale 0 -y C:\projects\weatherRecorder\avi\%1.mp4
C:\ffmpeg\bin\ffmpeg.exe -i C:\projects\weatherRecorder\avi\%1.mpg -q:v 6 -y C:\projects\weatherRecorder\avi\%1.ogv
C:\ffmpeg\bin\ffmpeg.exe -i C:\projects\weatherRecorder\avi\%1.mpg -q:v 9 -y C:\projects\weatherRecorder\avi\%1.webm
(
echo option batch abort
echo option confirm off
echo open ftp://example.org:[email protected]/
echo put C:\projects\weatherRecorder\avi\%1.mp4 /domains/example.org/html/wfsb/video/
echo put C:\projects\weatherRecorder\avi\%1.ogv /domains/example.org/html/wfsb/video/
echo put C:\projects\weatherRecorder\avi\%1.webm /domains/example.org/html/wfsb/video/
echo put C:\projects\weatherRecorder\avi\%1.txt /domains/example.org/html/wfsb/video/
echo exit
) > ftpScript%1.txt
C:\winscp.com /script=ftpScript%1.txt
del C:\projects\weatherRecorder\avi\%1.mpg
del C:\projects\weatherRecorder\avi\%1.mp4
del C:\projects\weatherRecorder\avi\%1.ogv
del C:\projects\weatherRecorder\avi\%1.webm
"C:\xampp\php\php.exe" -f send.php %1
和腳本開始在這條線的新實例:
C:\winscp.com /script=ftpScript%1.txt
我看過類似的問題,它看起來像很多涉及到批處理腳本文件名是相同的命令在腳本中。在文件中存在FTP命令時的示例'FTP.bat'。我不相信這是問題,因爲文件名是'ftp_script.bat'。
請讓我知道,如果我可以提供任何其他信息來澄清此問題。
你通過記錄數量%1,讓你在一個時間試圖FTP多個流?如果是這樣,你的'del ftpScript * .txt'可能會刪除另一個傳輸的控制文件,這可能會使WINSCP沮喪,也許? –
%1是記錄的時間和日期。 '%1.mpg'會變成類似:'14-04-17-15-47.mpg'。在創建新文件之前,先前的任何控制文件都將被刪除。我不明白爲什麼WINCSP會感到困惑。你能否更詳細地向我解釋一下?謝謝! – notchris
您使用WINSCP.COM創建'ftp_result.txt',然後覆蓋它兩次...爲什麼? –