Articles of wget

为什么这个bash命令不会回显到一个variables中,我该怎么做才能改进?

我有一个我正在努力改进的bash脚本 ,并且由于丹尼斯·威廉姆森 ( Dennis Williamson)的帮助 ,已经提供了一个很好的解决scheme。 不幸的是,其中一条线不再回应我可以操作的variables,而是直接转储输出。 如果我解决这个问题,我会很高兴。 为什么这个bash命令不会回显到$ resultvariables中,我能做些什么来改进? result=$( time wget -q –output-document=/tmp/wget.$$.html http://domain.tomonitor.com 2>&1; ); 编辑:我试过的各种解决scheme result=$( { time (/usr/local/bin/wget -q –output-document=/tmp/wget.$$.html –header="Host: blogs.forbes.com" http://$host) } &2>1 ); result=$( { time (/usr/local/bin/wget -q –output-document=/tmp/wget.$$.html –header="Host: blogs.forbes.com" http://$host) } ); result=$( ( time (/usr/local/bin/wget -q –output-document=/tmp/wget.$$.html –header="Host: blogs.forbes.com" http://$host) ) ); EDIT2: 我正在回应这样一行: […]

无法wget到FTP服务器

我正试图从远程机器wget一个ftp服务器。 该命令不会越过'Logging in as anonymous' 。 这就是我所得到的。 wget ftp://hgdownload.cse.ucsc.edu/goldenPath/hg19/chromosomes/chr1.fa.gz –2013-09-29 22:07:53– ftp://hgdownload.cse.ucsc.edu/goldenPath/hg19/chromosomes/chr1.fa.gz => 'chr1.fa.gz' Resolving proxy.xyz.. *.*.*.* Connecting to proxy.xyz|*.*.*.*|:3128… connected. Logging in as anonymous … 当我尝试从远程机器访问由Firefox的网站,它工作正常。 我已经设置了我的ftp代理 export ftp_proxy="ftp://a.user:password@proxy:3128 任何人都可以帮我解决这个问题吗? 谢谢

curl始终返回相同的404页面

不pipe我为curl指定的URL是什么,我总是得到相同的HTML 404错误页面。 如果我使用–verbose选项,它看起来像curl总是连接到相同的IP地址。 $ curl –verbose http://www.edgeoftheweb.co.uk * About to connect() to www.edgeoftheweb.co.uk port 80 * Trying ::ffff:74.117.222.24… connected * Connected to www.edgeoftheweb.co.uk (::ffff:74.117.222.24) port 80 > GET / HTTP/1.1 > User-Agent: curl/7.15.5 (x86_64-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 > Host: www.edgeoftheweb.co.uk > Accept: */* > < HTTP/1.1 200 OK < Date: Thu, 15 Sep 2011 […]

nginx块curl和wget

我有nginxnetworking服务器。 我有一个丰富的内容网站,我发现一些恶意机器人正试图抓取我的内容。 我阻止任何curl或wget来这样的我的网站 如果($ http_user_agent〜*(curl | wget)){return 301 $ scheme://www.google.com/; } 但我发现我可以访问的内容,如果我改变了下面的curl请求中的用户代理 curl –user-agent“Googlebot / 2.1(+ http://www.google.com/bot.html)”http://example.com/mypage.php 要么 curl –user-agent“whatever”http://example.com/mypage.php 任何想法如何阻止使用Nginx的 curl或wget生成的任何请求,而不pipe已经发送的假的用户代理

pgrep wget:进程ID的细节是什么?

当inputpgrep wget ,它显示进程ID 10144 但是如何知道这个进程id的细节是什么

克隆守护进程Wget阻止

我没有cpanel Debian 7上的nginx 。 我正在调整我的Crontab是这样的: */45 * * * * wget "http://example.com/cron-url.php" >/dev/null 2>&1 上面的cron被403禁止了: –2014-12-10 05:40:01– http://example.com/cron-url.php Connecting to xyz.xx.xx.xxx:80… connected. HTTP request sent, awaiting response… 403 Forbidden 2014-12-10 05:40:01 ERROR 403: Forbidden. 在这里search和谷歌search后,我明白,我的服务器可能阻止wget。 我看了一下我的nginxconfiguration文件,我认为这应该是由于这个: if ($http_user_agent ~* LWP::Simple|BBBike|wget) { return 403; } 对于cron命令,我必须使用它的URL和绝对链接到脚本path不起作用。 现在,如果我需要让cron工作而不被阻塞,我该怎么办? 我想也许我需要从我自己的服务器允许wget,但不知道如何用nginx做到这一点。 有人可以帮我解决这个cron问题吗?

从wget下载 – 文件夹问题

我有一个网站 – http://myradio1.localhost目录目前是空的。 虚拟主机工作正常,没有问题。 这是我用来通过wget下载网站的命令: wget –user-agent =“Googlebot / 2.1(+ http://www.googlebot.com/bot.html)”-r –convert-links -p -P“C:\ www \ public_html \ myradio1”“ http://www.compassfm.co.uk “ 它完美地下载网站,除了一件事,下载时总是这样呈现: HTTP://myradio1.localhost/www.compassfm.co.uk 这不是我想要发生的事情。 我只是想下载到文件夹,所以它可以运行http://myradio1.localhost ,而不必在下载完成后将文件移出域文件夹。 我怎样才能让wget下载所有的文件,但基本上不创build域作为一个文件夹? 所有的帮助,非常感谢。

当需要点击button时从shell下载文件

我有一个链接到我想从shell下载的文件。 不幸的是,该URLredirect到一个软件许可协议页面,需要点击一个接受button。 这是好的,当我在一个标准的浏览器,但是当我在壳牌wget只会下载HTML页面,而不是实际的文件。 当条款必须首先被接受时,有哪些选项可用于将文件下载到shell中? 具体来说,我正在看下面的LSI下载页面: http://www.lsi.com/Pages/user/eula.aspx?file=http%3a%2f%2fwww.lsi.com%2fdownloads%2fPublic%2fSATA%2fSATA%2520Common%2520Files%2f3DM2_CLI-Linux_10.2.1_9 .5.4.zip&源= HTTP%3A%2F%2fwww.lsi.com%2fdownloads 我没有查看页面上的源代码,发现了一个链接到下面的位置,但是当使用wget时,它也拉起了eula页面。 http://www.lsi.com/downloads/Public/SATA/SATA%20Common%20Files/3DM2_CLI-Linux_10.2.1_9.5.4.zip 到目前为止,我提出的唯一select是: 将其下载到具有浏览器的其他计算机上,然后将其上传到只有shell的服务器。 缓慢而痛苦。 安装像Lynx的东西。 我不确定Lynx是否处理好下载,不喜欢在生产服务器上安装额外软件的想法。 继续分析EULA代码,以确定它是如何防止我的下载(假设它是JavaScript,而不是服务器端)。 有一个更简单的方法?

“wget –mirror”可选

我正在寻找一种替代方法来使用它,它不必使用FTP,但它应该提供与wget的“–mirror”选项相同的function,它只下载新的和更改的文件。 wget –mirror –preserve-permissions –directory-prefix=/hdd2/website-backups –exclude-directories=special,stats –ftp-user=user –ftp-password=pass ftp://ftp.domain.com 目前上面的命令是通过家庭服务器上的cron作业每隔几天远程站点的备份方式。 远程站点已经转移到一个新的主机与SSH可用,我已经有SSH公钥/私钥设置为SSH。 现在我想使用一些比wget / ftp更安全的自动备份,但是由于这个站点有很多图像文件,其中大部分是不会改变的,所以我不想把整个文档压缩起来,每次下载。

使用wgetrecursion下载时错误的文件名编码/解码

当我下载一个指定完整path+文件名的文件时,我使用wgetrecursion地从远程目录下载文件,创build文件夹和文件的人,使用特殊字符(如è或Ó ,文件正确下载,但是当我尝试使用选项-r下载包含所有文件和目录的文件夹时,文件名不会被正确编码或解码。 从我所搜集的内容来看,文件名在请求中是以ascii的forms发送的,而且我的机器和服务器都在$PATH上有UTF-8编码,所以它也不是问题。 当wget创build文件时,文件名中的è字符(我将用作示例)将保存为八进制字符代码中的\350 ,并显示为一个è 。 这只发生在recursion下载文件时,如果我使用完整的URL下载这个文件,文件名显示正确。 我已经花了相当多的时间在这里和那里查询Q / A,并且我已经尝试了我所见过的一切,从设置–local-encoding和–remote-encoding到UTF-8 , –restrict-file-names=nocontrol等 端口21和22是closures的,所以我不能通过SCP或FTP下载文件,很可能任何其他协议下载文件都会给出同样的错误,但我可以使用任何不常见的,我可以使用。 我也有这个主要的问题是,当我下载文件,当我尝试将它们复制到备份文件夹,有些文件有时会给我一个错误的文件没有find由于文件名被搞乱,现在即时通讯使用–restrict-file-names=ascii并保留–restrict-file-names=ascii的名称作为解决方法,但我需要将编码更改为UTF-8 ,我也不能在机器上安装任何应用程序,如convmv来自老板的订单)。 这是我一直用来下载文件的命令: wget –keep-session-cookies –cookies=on –no-check-certificate –restrict-file-names=nocontrol –convert-links –no-parent -r <URL> 这是如何保存文件名与recursion下载单个文件与所有文件: OT14-004 CEIP Pins del Vallès.vsd OT14-004 CEIP Pins del Vallès.vsd 我正在使用这台发行版的CentOS Linux release 7.0.1406 (Core)并与此版本的wget GNU Wget 1.14 built on linux-gnu