问题描述
我试图通过wget连接到服务器:
wget http://<user>:<pass>@serveradress
但wget回应:无效的端口
我知道服务器在端口80接受传入流量。我该如何解决这个问题?
最佳解决办法
Wget将<pass>@serveraddress
解释为端口。要指定用户名和密码,请使用--user
和--password
开关:
wget --user user --password pass http://example.com/
来自man wget
:
--user=user
--password=password
Specify the username user and password password for both FTP and HTTP file retrieval. These parameters can be overridden using the
--ftp-user
and--ftp-password
options for FTP connections and the--http-user
and--http-password
options for HTTP connections.
次佳解决办法
你有3个选项,除了胆量之外,这里没有特定的顺序:
1 /任何人都可以看到密码(使用命令history
)
me@machine:~$ wget --user=remote_user --password=SECRET ftp://ftp.example.com/file.ext
密码也将在ps,top,htop和类似中可见。
2 /密码对于任何看着你肩膀的人都是可见的
me@machine:~$ wget --user=remote_user --password=SECRET ftp://ftp.example.com/file.ext
注意命令前的空格,它可以防止将它保存到历史记录中
密码也将在ps,top,htop和类似中可见。
3 /密码对包括您在内的任何人都不可见
me@machine:~$ wget --user=remote_user --ask-password ftp://ftp.example.com/file.ext
Password for user `remote_user': [SECRET (not visible)]