使用 shell 脚本与程序交互
Using a shell script to interact with programs
我需要使用 shell 脚本通过 FTP 上传文件。
我可以通过脚本与 FTP 交互吗?我的脚本在 http://pastebin.com/A76fsaM3
cd MyLocalUploadDir
ftp
open ftp.server.com
myusername
mypassword
put LocalIteam.TXT
这行得通吗?在 shell 脚本中是否有另一种与 FTP 交互的方法?感谢您的帮助!
有关与 FTP 交互的信息,请参阅 http://www.tldp.org/HOWTO/FTP-3.html。
您需要使用 here-doc。否则,ftp
之后的行将不会用作程序的输入。
cd MyLocalUploadDir
ftp <<EOF
open ftp.server.com
myusername
mypassword
put LocalIteam.TXT
quit
EOF
您还可以使用 .netrc
文件避免将用户名和密码放入脚本中。
而不是使用 ftp
程序,您可以使用 curl
在一行中完成。
curl --upload-file MyLocalUploadDir/LocalIteam.TXT 'ftp://myusername:mypassword@ftp.server.com/'
您还可以使用 --netrc
选项 curl
告诉它从 .netrc
文件中获取用户名和密码。
我需要使用 shell 脚本通过 FTP 上传文件。 我可以通过脚本与 FTP 交互吗?我的脚本在 http://pastebin.com/A76fsaM3
cd MyLocalUploadDir
ftp
open ftp.server.com
myusername
mypassword
put LocalIteam.TXT
这行得通吗?在 shell 脚本中是否有另一种与 FTP 交互的方法?感谢您的帮助!
有关与 FTP 交互的信息,请参阅 http://www.tldp.org/HOWTO/FTP-3.html。
您需要使用 here-doc。否则,ftp
之后的行将不会用作程序的输入。
cd MyLocalUploadDir
ftp <<EOF
open ftp.server.com
myusername
mypassword
put LocalIteam.TXT
quit
EOF
您还可以使用 .netrc
文件避免将用户名和密码放入脚本中。
而不是使用 ftp
程序,您可以使用 curl
在一行中完成。
curl --upload-file MyLocalUploadDir/LocalIteam.TXT 'ftp://myusername:mypassword@ftp.server.com/'
您还可以使用 --netrc
选项 curl
告诉它从 .netrc
文件中获取用户名和密码。