我想创建一个bash脚本或PHP脚本来从ftp服务器下载CSV文件,并在downloadind文件后添加* .bak扩展名。我将每隔10分钟由cron作业自动执行。
我从:
开始#!/bin/bash
HOST=XXX.YYY.ZZZ.OOO
USERFTP=user
PASSWORD=xxx
PORT=2222
cd /home/sysadmin/testftp
ftp -inv $HOST 2222 <<EOF
quote USER $USERFTP
quote PASS $PASSWORD
cd /home/ftp/
我需要包含这个&#34;用于&#34;环
for f in $(ls) do
if [ $(echo $f|egrep '\.(csv|CSV)$') ]
then
mget $f
mv $f $f.bak
fi
done`
我不知道如何将循环包含在bash脚本中,或者它是否更容易创建php脚本?
<?php
$local_file = 'local.zip';
$server_file = 'server.zip';
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
$local_file
if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
echo "Le fichier $local_file a été écris avec succès\n";
} else {
echo "error\n";
}
ftp_close($conn_id);
?>
如何将for循环包含在php脚本中?
问候: - )
答案 0 :(得分:-1)
#!/bin/bash
curlftpfs user@ftp.server.com:2222 /mnt/ftp
cd /mnt/ftp
for f in $(ls) do
if [ $(echo $f|egrep '\.(csv|CSV)$') ]
then
scp $f scp -i ~/.ssh/id_rsa sysadmin@10.100.0.100:/home/ipad
mv $f $f.bak
fi
fusermount -u /mnt/ftp
done
对你有用吗?