首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于自动执行ftp操作的linux脚本

用于自动执行ftp操作的linux脚本
EN

Stack Overflow用户
提问于 2012-09-26 16:59:00
回答 4查看 17.4K关注 0票数 1

我需要将文件从linux服务器传输到FTP服务器。

我的shell脚本是:

代码语言:javascript
复制
    #! /bin/ksh

    HOST='my_ip'
    USER='userid'
    PASSWD='password'
    FILE='file.txt'
    DIREC='/eir_log'
    ftp -in $HOST << EOMYF 
    user $USER $PASSWD
    binary
    mkdir $DIREC 
    cd $DIREC
    pwd
    quit
    EOMYF

非常简单的代码。但问题是,虽然我可以登录FTP服务器,但它不允许我在FTP服务器中创建一个新的目录。起初我认为我的脚本有一些错误,但即使我在ftp服务器上单独运行一个mkdir,它也会显示create directory failed。谁能让我知道可能的错误,或者如果我的代码中有任何错误,我遗漏了on.The pwd工作正常,这意味着通过脚本登录ftp站点没有问题。

提前感谢您的帮助

EN

回答 4

Stack Overflow用户

发布于 2012-09-26 17:05:07

看一看expect

一些帮助你入门的东西

代码语言:javascript
复制
#!/usr/bin/expect

set timeout 120
spawn ftp 192.168.0.210
expect "Name"
send "root\r"
expect "Password:"
send "pass\r"
expect "ftp> "
send "bye\r"
票数 4
EN

Stack Overflow用户

发布于 2012-09-26 17:02:09

也许lftp ( ftp脚本客户端)将会是你需要的(看看你的发行版的包)。创建目录时出错,可能与您尝试在其中创建目录的权限有关。

http://lftp.yar.ru/desc.html

票数 1
EN

Stack Overflow用户

发布于 2012-09-26 17:04:40

您是否尝试过使用SCP (安全复制)?

scp -r /dir/to/"file.txt“用户名@主机名

*如果您位于要发送的文件/文件夹所在的目录中,则无需定义完整的文件路径

如果您想在不输入密码的情况下使用scp,请参阅本文。http://www.thegeekstuff.com/2008/06/perform-ssh-and-scp-without-entering-password-on-openssh/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12598071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档