Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么在Cygwin Bash脚本上紧接着ftp时wget不能正常工作?_Bash_Ftp_Cygwin_Wget - Fatal编程技术网

为什么在Cygwin Bash脚本上紧接着ftp时wget不能正常工作?

为什么在Cygwin Bash脚本上紧接着ftp时wget不能正常工作?,bash,ftp,cygwin,wget,Bash,Ftp,Cygwin,Wget,如果我在命令行上单独运行脚本中下面列出的wget命令,它工作正常并下载我指定的所有文件。如果在脚本中直接使用ftp命令运行wget,它不会下载文件,但ftp命令会成功删除它们。我不知道为什么会这样。wget命令不应该在将控制权传递给ftp命令执行之前完全完成吗 我正在使用安装了Cygwin的Windows7。下面是我使用bash fileFetcher.sh运行的fileFetcher.sh的内容。对于脚本和输出,我已经编辑了一些内容来删除用户名、密码和主机名 另外,我想说的是,我并不真正理解我

如果我在命令行上单独运行脚本中下面列出的wget命令,它工作正常并下载我指定的所有文件。如果在脚本中直接使用ftp命令运行wget,它不会下载文件,但ftp命令会成功删除它们。我不知道为什么会这样。wget命令不应该在将控制权传递给ftp命令执行之前完全完成吗

我正在使用安装了Cygwin的Windows7。下面是我使用bash fileFetcher.sh运行的fileFetcher.sh的内容。对于脚本和输出,我已经编辑了一些内容来删除用户名、密码和主机名

另外,我想说的是,我并不真正理解我使用的脚本结构。我在另一个网站上找到了它,并为此脚本定制了它。它似乎可以让我在脚本中嵌入一个脚本。我不知道这是否是一个错误的来源

同样,这两个命令都可以很好地工作/单独工作/但是一旦它们进入脚本,它们就不能很好地协同工作

wget -r -l1 -nd --no-parent -A.tgz -t3 --user='username' --password='password' ftp://ftp.hostname.org/backups/
ftp -n -i -d ftp.hostname.org <<END_SCRIPT
quote USER username
quote PASS password
cd backups
mdelete *.tgz
ls
quit
END_SCRIPT
exit 0

输出中的
\r
(其中也有一个指示灯
%0D
)指示有问题。Cygwin shell脚本必须使用Unix行结尾(
\n
),而不是DOS/Windows行结尾(
\r\n

它不是应该是完美的吗,谢谢。我以后会找的。我在记事本++中编辑所有内容,但我使用的EOL标记没有视觉指示器:*(
$ bash fileFetcher.sh
--2012-02-07 23:00:46--  ftp://ftp.hostname.org/backups/%0D
       => `.listing'
Resolving ftp.hostname.org (ftp.hostname.org)... 200.205.124.20
Connecting to ftp.hostname.org (ftp.hostname.org)|200.202.137.60|:21... connected.
Logging in as username ... Logged in!
==> SYST ... done.    ==> PWD ... done.
==> TYPE I ... done.  ==> CWD (1) /backups ... done.
==> PASV ... done.    ==> LIST ... done.

[ <=>                                                                           ] 467          --.-K/s   in 0s

2012-02-07 23:00:47 (6.41 MB/s) - `.listing' saved [467]

Removed `.listing'.
--2012-02-07 23:00:47--  ftp://ftp.hostname.org/backups/%0D
       => `%0D'
==> CWD not required.
==> SIZE \r ... done.
==> PASV ... done.    ==> RETR \r ...
No such file `\r'.
---> USER $username
---> PASS $password
---> CWD backups
---> TYPE A
---> PORT 192,168,0,91,223,12
---> NLST *.tgz
---> TYPE A
---> DELE website backup 2012-02-07 20-18-48.tgz
---> DELE website backup 2012-02-07 20-18-49.tgz
---> DELE website backup 2012-02-07 20-18-50.tgz
---> PORT 192,168,0,91,223,13
---> NLST
.
..
---> QUIT