我可以使用 wget 在我的系统中复制文件吗?

我可以使用 wget 在我的系统中复制文件吗?

我想在自己的系统中移动/复制大量文件,并且想使用wget命令及其-c开关来实现可恢复传输。copy( cp) 或 move( mv) 命令不为我提供此选项。

是否可以将wget这些文件从一个目录复制到我自己的系统中的另一个目录?

答案1

是的,但是您需要设置一个网络服务器来提供您需要复制的文件。

尝试一下这样的方法。在终端上,启动一个简单的 Web 服务器:

cd /etc/
python -m SimpleHTTPServer

然后打开另一个终端并执行:

wget http://localhost:8000/passwd 

passwd 文件将被下载到您的当前目录。您实际上是将其从 /etc/ 复制到您的主目录。

我不确定你为什么要这样做,但原则上,正如你所看到的,这是可能的。

答案2

改用其他方式可能更有意义rsync。例如:

rsync -aP /source ~/destination

-P或标志--partial可防止在发生中断时删除未完成的文件。如果再次运行相同的命令,将恢复任何未完成的传输。

这样,您就不需要再为所需的本地 Web 服务器操心了wget

答案3

尽管我强烈推荐rsync,但您可以curl在不运行 HTTP 服务器的情况下使用:

curl -O -C - file:///path/to/some/file

curl与 不同wget,但功能同样强大,甚至更强大。在任何系统上使用它都很方便。

man curl

   -C, --continue-at <offset>
          Continue/Resume  a  previous  file transfer at the given offset.
          Use  "-C  -" to tell curl to automatically find out where/how to
          resume the transfer
   -O, --remote-name
          Write  output to a local file named like the remote file we get.

答案4

这是可能的。您需要有一个 Web 服务器,例如 apache 或 nginx。如果是 apache,要复制文件,您可以这样做

wget http://localhost/path/to/file/starting/from/var/www/因为 apache 服务器的主目录是 /var/www

相关内容