ftp上传文件shell
Linux下用shell编程实现ftp自动登录上传文件,代码如下:
####把本地/home/databachup/a.shupftp/home/databackup下####
#!/bin/bash
ftp-n<<!
openFTP服务器IP地址
userFTP账户FTP密码
binary
cd/home/data
lcd/home/databackup
prompt
puta.sha.sh#要上传的文件
close
bye
!
Ⅱ 用shell 脚本登陆远程ftp 1.如何确认ftp连接成功2.如何确认文件是否上传成功3.如何返回一些参数信息
在上传的机器写个验证脚本。用cron定时执行。
Ⅲ shell脚本实现定时生成个以当前时间命名的TXT文件,然后ftp上传到另一台服务器上,这个怎么写啊
#!/bin/bash
#----------请自定义如下内容----------
user=root#FTP用户名
password=root#密码
remoteDir=/tmp#远程服务器FTP目录
#------------------------------------
currTime=$(date"+%Y%m%d%H%M%S")
filename=${currTime}.txt
touch$filename
sync
ftp-in<<-EOF
user$user$password
cd$remoteDir
bin
put$filename
bye
EOF
Ⅳ shell脚本ftp到远程目录
1.下载远程电信机房中机器上已打包好的数据.这个不难,一条语句搞定.
复制代码代码如下:
wget
ftp://user_name:password@ip_address:port/dir/file_name
2.定时任务,需要写个脚本,并加入定时任务中.
a.脚本.假设你计划将远程的文件备份到/var/www/html/back目录下,到这个目录下,新建文件,内容如下
复制代码代码如下:
!#/bin/sh
cd
/var/www/html/back/
wget
ftp(上面那条语句)
保存为bak.sh
b.加入定时任务.直接vi
/etc/crontab
在最后一行加入如下语句
复制代码代码如下:
30
18
*
*
*
root
/var/www/html/back/bak.sh(脚本保存的位置)
这样每天下午6:30本地的centos机器自动会将远程FTP的文件备份到/var/www/html/back中了.
Ⅳ linux系统用shell写个脚本ftp上传下载文件,文件名带日期。
这个不是一句话搞定的
vi xxxx.sh 写一个脚本
#/bin/bash
DATE=`date "%Y%M%D"`
DIR=/xxxxx/xxx
cd $DIR
lftp -pxxx [email protected]
cd xxxxx
get $DATE.txt
exit
chmod +x xxxx.sh
然后 sh xxxx.sh
大致的结构这样,具体的你要好好研究一下shell才可以。
Ⅵ 编译一个shell脚本,ftp到主机 新建目录 拷贝文件 删除目录 退出
首先,脚本并不需要知道本身所在主机的IP,所以,用不到10.10.141.91这个源地址。
再次,ftp命令中不支持直接在服务器端新建文件,只能先在本地新建后上传。其实,ftp客户端软件,如CuteFTP也都是这么做的,只是你觉察不到。
#!/bin/bash
host="10.10.142.72"
username="xxxx"
#这里写你的FTP登录用户名
password="xxxxxxx"
#这里写你的FTP登录密码
file1="testexam1"
file2="testexam2"
touch
$file1
touch
$file2
(
ftp
-ni
$host
<<EOF
quote
USER
$username
quote
PASS
$password
cd
/home/query
#切换服务器目录
binary
put
$file1
put
$file2
lcd
/home/query
#切换本地目录
get
$file1
delete
$file1
bye
EOF
)
>/dev/null
2>err.log
Ⅶ 求助:使用SHELL语言编写一个脚本实现ftp功能,将一个文件从本地a目录取到服务器b目录。
下面这个是我一直在用的,会检查ftp错误。
#!/bin/sh
ftp_put()
{
# -n:不使用auto-login;-i:不使用交互式提示输入
ftp -n -i $ipAddr <<EOF
quote USER $username
quote PASS $password
cd b
lcd a
binary
put $myfile
bye
EOF
}
ipAddr=ftp地址
username=你的ftp用户名
password=你的ftp密码
myfile=你要传的文件名(只要名称无需路径)
putErrlog=用于记录ftp错误的日志文件
ftp_put >/dev/null 2>$putErrlog #ftp错误导入日志文件
bytes=`wc -c $putErrlog | awk '{print $1}'` #检查错误日志文件的字节大小
if [ $bytes -ne 0 ]; then #大小不为0说明发生了错误,之后可以手动打开文件检查错误原因
echo "FTP put failed!"
exit 1
else
echo "FTP put successfully!"
fi
exit 0