Woof(Web Offer One File的缩写)是一个简单的应用程序,用于在小型本地网络上的主机之间共享文件。它由一个微小的HTTP服务器组成,可以为指定的文件提供指定的次数(默认为一次),然后终止。
要使用woof,只需在单个文件上调用它,收件人就可以通过Web浏览器或使用命令行Web客户端访问您的共享文件,例如来自终端的cURL,HTTPie,wget或kurly(cURL替代) 。
与其他文件共享工具相比,woof的一个优点是,如果收件人安装了Web浏览器,它将在不同的操作系统或不同的设备(计算机,智能手机,平板电脑等)之间共享文件。
在本文中,我们将展示如何在Linux中安装woof并使用它在本地网络上共享文件。
如何在Linux中安装和使用Woof
在Debian和Ubuntu上,您可以使用apt或apt-get包管理器轻松地从发行版的默认存储库安装'woof'包,如图所示。
linuxidc@linuxidc:~/www.linuxidc.com$ sudo apt install woof
或者
linuxidc@linuxidc:~/www.linuxidc.com$ sudo apt-get install woof
在其他Linux发行版上,您可以使用wget命令下载woof脚本,并将其移动到/usr/bin目录,如下所示。
linuxidc@linuxidc:~/www.linuxidc.com$ wget
--2019-02-25 13:25:07--
正在解析主机 ()... 141.99.42.20
正在连接 ()|141.99.42.20|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 20284 (20K)
正在保存至: “woof”
woof 100%[===================>] 19.81K 66.9KB/s 用时 0.3s
2019-02-25 13:25:09 (66.9 KB/s) - 已保存 “woof” [20284/20284])
linuxidc@linuxidc:~/www.linuxidc.com$ sudo cp woof /usr/bin/
要共享文件,请将其作为参数提供,如图所示。
linuxidc@linuxidc:~/www.linuxidc.com$ woof ./linuxidc.com.jpg
Now serving on :8080/linuxidc.com.jpg
192.168.182.135 - - [25/Feb/2019 13:31:19] "GET /linuxidc.com.jpg HTTP/1.1" 200 -
然后,woof将生成一个URL(在这种情况下为:8080/),您的伙伴可以使用该URL访问该文件。
将URL发送给收件人。一旦收件人访问该文件,woof将关闭(参见下面的屏幕截图)。
通过Woof共享访问文件
注意:在上面的示例中,我们使用wget命令行下载程序来获取共享文件,它会自动为下载的文件指定一个不同的名称(例如index.html)。
或者如下
要指定自定义名称,请使用-O选项,如图所示。
linuxidc@linuxidc:~$ wget -O zidingyi :8080
或者,您也可以从Web浏览器访问共享文件,如图所示(单击“保存文件”进行下载)。
从Web浏览器下载共享文件
默认情况下,woof共享文件一次,在收件人下载后,woof终止。您可以使用-c选项设置woof在关闭之前共享文件的时间。
以下命令将在三次下载后终止woof。
linuxidc@linuxidc:~/www.linuxidc.com$ woof -c 3 ./www.linuxidc.com.zip
要共享目录,您可以创建一个包并使用(-z用于gzip压缩,或-j用于bzip2压缩,或-Z用于ZIP压缩)压缩它。例如:
linuxidc@linuxidc:~/www.linuxidc.com$ woof -c 2 -z ./linuxidc/
查看下载文件名,它应该是Gzip存档,如下面的屏幕截图所示。
下载压缩的Tar存档文件
此外,您可以使用-U标志告诉woof提供上传表单,允许文件上传。该文件将上传到发起woof的当前目录:
linuxidc@linuxidc:~/www.linuxidc.com$ woof -U
然后,您的合作伙伴可以使用生成的URL从浏览器访问上传表单,如图所示。
Woof文件上传表单
浏览并选择文件后,单击“上载”按钮上传文件。
Woof文件上传完成
您可以验证该文件应该上传到调用woof的同一目录。
验证文件上载
您可以通过运行以查看更多使用选项:
$ man woof
或者
$ woof -h