Linux 我得到一个cron的scheme丢失错误

Linux 我得到一个cron的scheme丢失错误,linux,bash,ftp,cron,Linux,Bash,Ftp,Cron,当我使用此选项从ftp服务器下载文件时: wget ftp://blah:blah@ftp.haha.com/"$(date +%Y%m%d -d yesterday)-blah.gz" /myFolder/Documents/"$(date +%Y%m%d -d yesterday)-blah.gz" 它说“20131022-blah.gz已保存”(下载很好),但我得到了以下信息: /myFolder/Documents/20131022-blah.gz:缺少方案(我认为此错误会阻止它将文件

当我使用此选项从ftp服务器下载文件时:

wget ftp://blah:blah@ftp.haha.com/"$(date +%Y%m%d -d yesterday)-blah.gz" /myFolder/Documents/"$(date +%Y%m%d -d yesterday)-blah.gz"
它说
“20131022-blah.gz已保存”
(下载很好),但我得到了以下信息:

/myFolder/Documents/20131022-blah.gz:缺少方案(我认为此错误会阻止它将文件保存在/myFolder/Documents/)。


我不知道为什么这不起作用。

先将文件名保存在变量中:

OUT=$(date +%Y%m%d -d yesterday)-blah.gz
然后对输出文件使用
-O
开关:

wget ftp://blah:blah@ftp.haha.com/"$OUT" -O /myFolder/Documents/"$OUT"

  • 如果没有
    -O
    ,输出文件名看起来像是要获取的第二个文件/URL,但它缺少
    http://
    ftp://
    或告诉
    wget
    如何访问它的其他方案。(谢谢@chepner)

  • 如果
    wget
    需要时间下载一个大文件,则分钟数将发生变化,您的下载文件名将与保存的文件名不同


首先将文件名保存在变量中:

OUT=$(date +%Y%m%d -d yesterday)-blah.gz
然后对输出文件使用
-O
开关:

wget ftp://blah:blah@ftp.haha.com/"$OUT" -O /myFolder/Documents/"$OUT"

  • 如果没有
    -O
    ,输出文件名看起来像是要获取的第二个文件/URL,但它缺少
    http://
    ftp://
    或告诉
    wget
    如何访问它的其他方案。(谢谢@chepner)

  • 如果
    wget
    需要时间下载一个大文件,则分钟数将发生变化,您的下载文件名将与保存的文件名不同


在我的例子中,我让它与npm模块
http服务器一起工作

发现我在http://
之前有一个前导空格

所以这是错误的
”http://localhost:8080/archive.zip“


已更改为工作解决方案
“http://localhost:8080/archive.zip“

在我的例子中,我让它与npm模块
http服务器一起工作

发现我在http://
之前有一个前导空格

所以这是错误的
”http://localhost:8080/archive.zip“


已更改为工作解决方案
“http://localhost:8080/archive.zip“

如果没有
-O
,输出文件名看起来像是第二个要获取的文件/URL,但是它缺少
http://
ftp://
或其他一些告诉
wget
如何访问它的方案。@chepner:非常感谢,让我把它添加到答案中。好的,现在它工作了。。但是它是一个.tar.gz,我使用tar-zxvf“OUT”来解压文件。当我手动执行时,此操作有效。。但是,当我通过cron运行它时,它不起作用。。我应该在另一个线程中打开这些还是相关的?@ USER 883071.请为这个问题打开一个新的问题,因为这个问题似乎与这个问题无关。如果这个答案帮助你解决你的问题,请考虑把它标记为“被接受”,因此,未来面临类似问题的用户将能够很容易地看到它。如果没有
-O
,输出文件名看起来像是第二个要获取的文件/URL,但它缺少
http://
ftp://
或其他一些告诉
wget
如何访问它的方案。@chepner:非常感谢,让我把它添加到答案中。好的,现在它工作了。。但是它是一个.tar.gz,我使用tar-zxvf“OUT”来解压文件。当我手动执行时,此操作有效。。但是,当我通过cron运行它时,它不起作用。。我应该在另一个线程中打开这些还是相关的?@ USER 883071.请为这个问题打开一个新的问题,因为这个问题似乎与这个问题无关。如果这个答案帮助你解决你的问题,请考虑把它标记为“被接受”,所以将来面对类似问题的用户将能够很容易地看到它。