centos 建立目录,为文档建立一级目录

大家好,感谢邀请,今天来为大家分享一下centos 建立目录的问题,以及和为文档建立一级目录的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!

centos java进程 怎么被启动的

1.查进程

ps命令查找与进程相关的PID号:

ps a显示现行终端机下的所有程序,包括其他用户的程序。

ps-A显示所有程序。

ps c列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。

ps-e此参数的效果和指定"A"参数相同。

ps e列出程序时,显示每个程序所使用的环境变量。

ps f用ASCII字符显示树状结构,表达程序间的相互关系。

ps-H显示树状结构,表示程序间的相互关系。

ps-N显示所有的程序,除了执行ps指令终端机下的程序之外。

ps s采用程序信号的格式显示程序状况。

ps S列出程序时,包括已中断的子程序资料。

ps-t<终端机编号>指定终端机编号,并列出属于该终端机的程序的状况。

ps u以用户为主的格式来显示程序状况。

ps x显示所有程序,不以终端机来区分。

最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。

ps aux| grep program_filter_word,ps-ef|grep tomcat

ps-ef|grep java|grep-v grep显示出所有的java进程,去处掉当前的grep进程。

2.杀进程

使用kill命令结束进程:kill xxx

常用:kill-9 324

Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall-9 NAME

3.进入到进程的执行文件所在的路径下,执行文件./文件名

附:

这是本人花了两天时间整理得来的,一些最常用的地球人都知道的命令就省去啦!最后提供pdf手册下载

1.更改档案拥有者

命令: chown [-cfhvR] [--help] [--version] user[:group] file...

功能:更改文件或者文件夹的拥有者

参数格式:

user:新的档案拥有者的使用者 IDgroup:新的档案拥有者的使用者群体(group)

-c:若该档案拥有者确实已经更改,才显示其更改动作

-f:若该档案拥有者无法被更改也不要显示错误讯息

-h:只对于连结(link)进行变更,而非该 link真正指向的档案

-v:显示拥有者变更的详细资料

-R:对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)

例如:chown-R oracle:oinstall/oracle/u01/app/oracle

更改目录拥有者为oracle

2.修改权限

命令:chmod(change mode)

功能:改变文件的读写和执行权限。有符号法和八进制数字法。

选项:(1)符号法:

命令格式:chmod{u|g|o|a}{+|-|=}{r|w|x} filename

u(user)表示用户本人。

g(group)表示同组用户。

o(oher)表示其他用户。

a(all)表示所有用户。

+用于给予指定用户的许可权限。

-用于取消指定用户的许可权限。

=将所许可的权限赋给文件。

r(read)读许可,表示可以拷贝该文件或目录的内容。

w(write)写许可,表示可以修改该文件或目录的内容。

x(execute)执行许可,表示可以执行该文件或进入目录。

(2)八进制数字法:

命令格式:chmod abc file

其中a,b,c各为一个八进制数字,分别表示User、Group、及Other的权限。

4(100)表示可读。

2(010)表示可写。

1(001)表示可执行。

若要rwx属性则4+2+1=7;

若要rw-属性则4+2=6;

若要r-x属性则4+1=5。

例如:# chmod a+rx filename

让所有用户可以读和执行文件filename。

# chmod go-rx filename

取消同组和其他用户的读和执行文件filename的权限。

# chmod 741 filename

让本人可读写执行、同组用户可读、其他用户可执行文件filename。

# chmod-R 755/home/oracle

递归更改目录权限,本人可读写执行、同组用户可读可执行、其他用户可读可执行

3.修改文件日期

命令:touch

格式:touch filenae

功能:改变文件的日期,不对文件的内容做改动,若文件不存在则建立新文件。

例如:% touch file

4.链接文件

命令:ln(link)

格式:ln [option] filename linkname

ln [option] directory pathname

功能:为文件或目录建立一个链。其中,filename和directory是源文件名和

源目录名;linkname和pathname分别表示与源文件或源目录名相链接的

文件或目录。

选项:-s为文件或目录建立符号链接。不加-s表示为文件或目录建立硬链接

注释:链接的目地在于,对一个文件或目录赋予两个以上的名字,使其可以出

现在不同的目录中,既可以使文件或目录共享,又可以节省磁盘空间。

例如:% ln-s filename linkname

5.显示日期

命令:date

例如:% date

6.显示日历

命令:cal(calendar)

格式:cal [month] year

功能:显示某年内指定的日历

例如:% cal 1998

7.显示文件头部

命令:head

格式:head [option] filename

功能:显示文件的头部

选项:缺省显示文件的头10行。

-i显示文件的开始 i行。

例如:% head filename

8.显示文件尾部

命令:tail

格式:tail [option] filename

功能:显示文件的尾部

选项:缺省显示文件的末10行。

-i显示文件最后 i行。

+i从文件的第i行开始显示。

例如:% tail filename

9.显示用户标识

命令:id

格式:id [option] [user]

功能:显示用户标识及用户所属的所有组。

选项:-a显示用户名、用户标识及用户所属的所有组

注释:

例如:% id username

10.查看当前登录的用户

命令:users

11.显示都谁登录到机器上

命令:who

格式:who

功能:显示当前正在系统中的所有用户名字,使用终端设备号,注册时间。

例如:% who

12.显示当前终端上的用户名

命令:whoami

格式:whoami

功能:显示出当前终端上使用的用户。

例如:% whoami

13.寻找文件

命令:find

格式:find pathname [option] expression

功能:在所给的路经名下寻找符合表达式相匹配的文件。

选项:-name表示文件名

-user用户名,选取该用户所属的文件

-size按大小查找,以block为单位,一个block是512B

-mtime n按最后一次修改时间查找,选取n天内被修改的文件

-perm按权限查找

-type按文件类型查找

-atime按最后一次访问时间查找

例如:% find./-name'*abc*'-print

14.搜索文件中匹配符

命令:grep

格式:grep [option] pattern filenames

功能:逐行搜索所指定的文件或标准输入,并显示匹配模式的每一行。

选项:-i匹配时忽略大小写

-v找出模式失配的行

例如:% grep-i'java*'./test/run.sh

15.统计文件字数

命令:wc [option] filename

功能:统计文件中的文件行数、字数和字符数。

选项:-l统计文件的行数

-w统计文件的单词数

-c统计文件的字符数

注释:若缺省文件名则指标准输入

例如:% wc-c./test/run.sh

16.显示磁盘空间

命令:df(disk free)

格式:df [option]

功能:显示磁盘空间的使用情况,包括文件系统安装的目录名、块设备名、总

字节数、已用字节数、剩余字节数占用百分比。

选项:

-a:显示全部的档案系统和各分割区的磁盘使用情形

-i:显示i-nodes的使用量

-k:大小用k来表示(默认值)

-t:显示某一个档案系统的所有分割区磁盘使用量

-x:显示不是某一个档案系统的所有分割区磁盘使用量

-T:显示每个分割区所属的档案系统名称

-h:表示使用「Human-readable」的输出,也就是在档案系统大小使用 GB、MB等易读的格式。

注释:

例如:% df-hi

17.查询档案或目录的磁盘使用空间

命令:du(disk usage)

格式:du [option] [filename]

功能:以指定的目录下的子目录为单位,显示每个目录内所有档案所占用的磁盘空间大小

选项:

-a:显示全部目录和其次目录下的每个档案所占的磁盘空间

-b:大小用bytes来表示(默认值为k bytes)

-c:最后再加上总计(默认值)

-s:只显示各档案大小的总合

-x:只计算同属同一个档案系统的档案

-L:计算所有的档案大小

-h:表示档案系统大小使用 GB、MB等易读的格式。

例如:% du-a

% du-sh/etc只显示该目录的总合

% du/etc| sort-nr| more统计结果用sort指令进行排序,

sort的参数-nr表示要以数字排序法进行反向排序。

18.显示进程

命令:ps

格式:ps [option]

功能:显示系统中进程的信息。包括进程ID、控制进程终端、执行时间和命令。

选项:

-a显示所有进程信息

-U uidlist列出这个用户的所有进程

-e显示当前运行的每一个进程信息

-f显示一个完整的列表

-x显示包括没有终端控制的进程状况。

注释:

例如:% ps-ef

% ps-aux然后再利用一个管道符号导向到grep去查找特定的进程,然后再对特定的进程进行操作。

19.终止进程

命令:kill

格式:kill [option] pid

功能:向指定的进程送信号或终止进程。kill指令的用途是送一个signal给某一个process,

因为大部份送的都是用来杀掉 process的 SIGKILL或 SIGHUP,因此称为 kill

选项:-9强行终止进程

注释:pid标示进程号,可由ps命令得到。

例如:% kill-9 pid

你也可以用 kill-l来察看可代替 signal号码的数目字。kill的详细情形请参阅 man kill。

20.查看自己的IP地址

命令:ifconfig

格式:ifconfig-a

21.查看路由表

命令:netstat

格式:netstat-rn

22.远程登录

命令:telnet

格式:telnet hostname

23.文件传输

命令:ftp(file transfer program)

格式:ftp hostname

功能:网络文件传输及远程操作。

选项:ftp命令:

cd [dirname]进入远程机的目录

lcd [dirname]设置本地机的目录

dir/ls显示远程的目录文件

bin以二进制方式进行传输

asc以文本文件方式进行传输

get/mget从远程机取一个或多个文件

put/mput向远程机送一个或多个文件

prompt打开或关闭多个文件传送时的交互提示

close关闭与远程机的连接

quit退出ftp

!/exit ftp登陆状态下,!表示暂时退出ftp状态回到本地目录,exit表示返回ftp状态

注释:

例如:% ftp hostname

24.查看自己的电子邮件

命令:mailx

格式:mailx

选项:

delete删除

next下一个

quit退出

reply回复

25.回忆命令

命令:history

格式:history

功能:帮助用户回忆执行过的命令。

选项:

注释:

例如:% history

26.网上对话

命令:talk

格式:talk username

功能:在网上与另一用户进行对话。

选项:

注释:对话时系统把终端分为上下两部分,上半部显示自己键入信息,下半部

显示对方用户键入的信息。键入delete或Ctrl+C则结束对话。

例如:% talk username

27.允许或拒绝接受信息

命令:mesg(message)

格式:mesg [n/y]

功能:允许或拒绝其它用户向自己所用的终端发送信息。

选项:n拒绝其它用户向自己所用的终端写信息

y允许其它用户向自己所用的终端写信息(缺省值)

注释:

例如:% mesg n

28.给其他用户写信息

命令:write

格式:write username [ttyname]

功能:给其他用户的终端写信息。

选项:

注释:若对方没有拒绝,两用户可进行交谈,键入EOF或Ctrl+C则结束对话。

例如:write username

29.创建、修改、删除用户和群组

a.创建群组:

例如: groupadd oinstall创建群组名为oinstall的组

groupadd-g 344 dba

创建组号是344的组,此时在/etc/passwd文件中产生一个组ID(GID)是344的项目。

b.修改群组:

groupmod:该命令用于改变用户组帐号的属性

groupmod–g新的GID用户组帐号名

groupmod–n新组名原组名:此命令由于改变用户组的名称

c.删除群组:

groupdel组名:该命令用于删除指定的组帐号

d.新建用户:

命令: useradd [-d home] [-s shell] [-c comment] [-m [-k template]]

[-f inactive] [-e expire ] [-p passwd] [-r] name

主要参数

-c:加上备注文字,备注文字保存在passwd的备注栏中。

-d:指定用户登入时的启始目录。

-D:变更预设值。

-e:指定账号的有效期限,缺省表示永久有效。

-f:指定在密码过期后多少天即关闭该账号。

-g:指定用户所属的群组。

-G:指定用户所属的附加群组。

-m:自动建立用户的登入目录。

-M:不要自动建立用户的登入目录。

-n:取消建立以用户名称为名的群组。

-r:建立系统账号。

-s:指定用户登入后所使用的shell。

-u:指定用户ID号。

举例:# useradd-g oinstall-G dba oracle创建Oracle用户

e.删除用户

命令: userdel用户名

删除指定的用户帐号

userdel–r用户名(userdel用户名;rm用户名):删除指定的用户帐号及宿主目录

例:#useradd-g root kkk//把kkk用户加入root组里

f.修改用户

命令: usermod

修改已有用户的信息

usermod–l旧用户名新用户名:修改用户名

usermod–L用户名:用于锁定指定用户账号,使其不能登陆系统

usermod–U用户名:对锁定的用户帐号进行解锁

passwd–d用户名:使帐号无口令,即用户不需要口令就能登录系统

例:#usermod-l user2 user1//把用户user2改名为user1

30.启动、关闭防火墙

永久打开或则关闭

chkconfig iptables on

chkconfig iptables off

即时生效:重启后还原

service iptables start

service iptables stop

或者:

/etc/init.d/iptables start

/etc/init.d/iptables stop

31.启动VSFTP服务

即时启动:/etc/init.d/vsftpd start

即时停止:/etc/init.d/vsftpd stop

开机默认VSFTP服务自动启动:

方法一:(常用\方便)

[root@localhost etc]# chkconfig--list|grep vsftpd(查看情况)

vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off

[root@localhost etc]# chkconfig vsftpd on(执行ON设置)

或者:方法二:

修改文件/etc/rc.local,把行/usr/local/sbin/vsftpd&插入文件中,以实现开机自动启动。

centos6.5安装wps提示缺libc.so.6(GLIBC_2.15)(64bit),怎办

1.试图运行程序,提示"libc.so.6: version `GLIBC_2.14' not found",原因是系统的glibc版本太低,软件编译时使用了较高版本的glibc引起的:

[ghui@StuOS bin]$ pwd

/var/VMdisks/cross/mingw32/bin

[ghui@StuOS bin]$ ls

lrelease QtCore4.dll QtNetwork4.dll QtSql4.dll QtXml4.dll

moc QtDeclarative4.dll QtOpenGL4.dll QtSvg4.dll rcc

phonon4.dll QtGui4.dll QtScript4.dll QtTest4.dll uic

qmake QtMultimedia4.dll QtScriptTools4.dll QtWebKit4.dll

[ghui@StuOS bin]$./qmake

./qmake:/lib64/libc.so.6: version `GLIBC_2.14' not found(required by./qmake)

2.查看系统glibc支持的版本:

[ghui@StuOS bin]$ strings/lib64/libc.so.6|grep GLIBC_

GLIBC_2.2.5

GLIBC_2.2.6

GLIBC_2.3

GLIBC_2.3.2

GLIBC_2.3.3

GLIBC_2.3.4

GLIBC_2.4

GLIBC_2.5

GLIBC_2.6

GLIBC_2.7

GLIBC_2.8

GLIBC_2.9

GLIBC_2.10

GLIBC_2.11

GLIBC_2.12

GLIBC_PRIVATE

[ghui@StuOS bin]$ rpm-qa|grep glibc

glibc-static-2.12-1.80.el6_3.6.x86_64

glibc-headers-2.12-1.80.el6_3.6.x86_64

glibc-common-2.12-1.80.el6_3.6.x86_64

glibc-devel-2.12-1.80.el6_3.6.x86_64

glibc-static-2.12-1.80.el6_3.6.i686

glibc-devel-2.12-1.80.el6_3.6.i686

glibc-2.12-1.80.el6_3.6.i686

glibc-2.12-1.80.el6_3.6.x86_64

3.可以看到最高只支持2.12版本,所以考虑编译解决这个问题:

a.到下载最新版本,我这里下载了glibc-2.14.tar.xz这个版本,解压到任意目录准备编译

b.这里解压到/var/VMdisks/glibc-2.14/

[ghui@StuOS bin]$ cd/var/VMdisks/glibc-2.14/

[ghui@StuOS glibc-2.14]$ pwd

/var/VMdisks/glibc-2.14

[ghui@StuOS glibc-2.14]$ ls

abilist config.h.in intl README.libm

abi-tags config.log io resolv

aclocal.m4 config.make.in libc-abis resource

aout configure libidn rt

argp configure.in libio Rules

assert conform LICENSES scripts

autom4te.cache CONFORMANCE locale setjmp

bits COPYING localedata shadow

BUGS COPYING.LIB login shlib-versions

build cppflags-iterator.mk mach signal

CANCEL-FCT-WAIVE crypt Makeconfig socket

CANCEL-FILE-WAIVE csu Makefile soft-fp

catgets ctype Makefile.in stdio-common

ChangeLog debug Makerules stdlib

ChangeLog.1 dirent malloc streams

ChangeLog.10 dlfcn manual string

ChangeLog.11 elf math sunrpc

ChangeLog.12 extra-lib.mk misc sysdeps

ChangeLog.13 extra-modules.mk NAMESPACE sysvipc

ChangeLog.14 FAQ NEWS termios

ChangeLog.15 FAQ.in nis test-skeleton.c

ChangeLog.16 gmon NOTES time

ChangeLog.17 gnulib nptl timezone

ChangeLog.2 grp nptl_db tls.make.c

ChangeLog.3 gshadow nscd version.h

ChangeLog.4 hesiod nss Versions.def

ChangeLog.5 hurd o-iterator.mk wcsmbs

ChangeLog.6 iconv po wctype

ChangeLog.7 iconvdata posix WUR-REPORT

ChangeLog.8 include PROJECTS

ChangeLog.9 inet pwd

conf INSTALL README

c.在glibc源码目录建立构建目录,并cd进入构建目录

[ghui@StuOS glibc-2.14]$ mkdir build

[ghui@StuOS glibc-2.14]$ cd build

d.运行configure配置,make&& sudo make install

[ghui@StuOS build]$../configure--prefix=/opt/glibc-2.14

[ghui@StuOS build]$ make-j4

[ghui@StuOS build]$ sudo make install

[sudo] password for ghui:

4.临时修改环境变量

[ghui@StuOS bin]$ export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH

[ghui@StuOS glibc-2.14]$ cd/var/VMdisks/cross/mingw32/bin/

[ghui@StuOS bin]$./qmake

Usage:./qmake [mode] [options] [files]

QMake has two modes, one mode for generating project files based on

some heuristics, and the other for generating makefiles. Normally you

shouldn't need to specify a mode, as makefile generation is the default

mode for qmake, but you may use this to test qmake on an existing project

...

linux wget 命令用法详解

Linux wget是一个下载文件的工具,它用在命令行下。对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器。如果我们使用虚拟主机,处理这样的事务我们只能先从远程服务器下载到我们电脑磁盘,然后再用ftp工具上传到服务器。这样既浪费时间又浪费精力,那不没办法的事。而到了Linux VPS,它则可以直接下载到服务器而不用经过上传这一步。wget工具体积小但功能完善,它支持断点下载功能,同时支持FTP和HTTP下载方式,支持代理服务器和设置起来方便简单。下面我们以实例的形式说明怎么使用wget。

1、使用wget下载单个文件

以下的例子是从网络下载一个文件并保存在当前目录

wget

在下载的过程中会显示进度条,包含(下载完成百分比,已经下载的字节,当前下载速度,剩余下载时间)。

2、使用wget-O下载并以不同的文件名保存

wget默认会以最后一个符合”/”的后面的字符来命令,对于动态链接的下载通常文件名会不正确。

错误:下面的例子会下载一个文件并以名称download.php?id=1080保存

wget

即使下载的文件是zip格式,它仍然以download.php?id=1080命令。

正确:为了解决这个问题,我们可以使用参数-O来指定一个文件名:

wget-O wordpress.zip

3、使用wget–limit-rate限速下载

当你执行wget的时候,它默认会占用全部可能的宽带下载。但是当你准备下载一个大文件,而你还需要下载其它文件时就有必要限速了。

wget–limit-rate=300k

4、使用wget-c断点续传

使用wget-c重新启动下载中断的文件:

wget-c

对于我们下载大文件时突然由于网络等原因中断非常有帮助,我们可以继续接着下载而不是重新下载一个文件。需要继续中断的下载时可以使用-c参数。

5、使用wget-b后台下载

对于下载非常大的文件的时候,我们可以使用参数-b进行后台下载。

wget-b

Continuing in background, pid 1840.

Output will be written to `wget-log’.

你可以使用以下命令来察看下载进度

tail-f wget-log

6、伪装代理名称下载

有些网站能通过根据判断代理名称不是浏览器而拒绝你的下载请求。不过你可以通过–user-agent参数伪装。

wget–user-agent=”Mozilla/5.0(Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16(KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16″下载链接

7、使用wget–spider测试下载链接

当你打算进行定时下载,你应该在预定时间测试下载链接是否有效。我们可以增加–spider参数进行检查。

wget–spider URL

如果下载链接正确,将会显示

wget–spider URL

Spider mode enabled. Check if remote file exists.

HTTP request sent, awaiting response… 200 OK

Length: unspecified [text/html]

Remote file exists and could contain further links,

but recursion is disabled— not retrieving.

这保证了下载能在预定的时间进行,但当你给错了一个链接,将会显示如下错误

wget–spider url

Spider mode enabled. Check if remote file exists.

HTTP request sent, awaiting response… 404 Not Found

Remote file does not exist— broken link!!!

你可以在以下几种情况下使用spider参数:

定时下载之前进行检查

间隔检测网站是否可用

检查网站页面的死链接

8、使用wget–tries增加重试次数

如果网络有问题或下载一个大文件也有可能失败。wget默认重试20次连接下载文件。如果需要,你可以使用–tries增加重试次数。

wget–tries=40 URL

9、使用wget-i下载多个文件

首先,保存一份下载链接文件

cat filelist.txt

url1

url2

url3

url4

接着使用这个文件和参数-i下载

wget-i filelist.txt

10、使用wget–mirror镜像网站

下面的例子是下载整个网站到本地。

wget–mirror-p–convert-links-P./LOCAL URL

–miror:开户镜像下载

-p:下载所有为了html页面显示正常的文件

–convert-links:下载后,转换成本地的链接

-P./LOCAL:保存所有文件和目录到本地指定目录

11、使用wget–reject过滤指定格式下载

你想下载一个网站,但你不希望下载图片,你可以使用以下命令。

wget–reject=gif url

12、使用wget-o把下载信息存入日志文件

你不希望下载信息直接显示在终端而是在一个日志文件,可以使用以下命令:

wget-o download.log URL

13、使用wget-Q限制总下载文件大小

当你想要下载的文件超过5M而退出下载,你可以使用以下命令:

wget-Q5m-i filelist.txt

注意:这个参数对单个文件下载不起作用,只能递归下载时才有效。

14、使用wget-r-A下载指定格式文件

可以在以下情况使用该功能

下载一个网站的所有图片

下载一个网站的所有视频

下载一个网站的所有PDF文件

wget-r-A.pdf url

15、使用wget FTP下载

你可以使用wget来完成ftp链接的下载。

使用wget匿名ftp下载

wget ftp-url

使用wget用户名和密码认证的ftp下载

wget–ftp-user=USERNAME–ftp-password=PASSWORD url

wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上。它有以下功能和特点:

(1)支持断点下传功能;这一点,也是网络蚂蚁和FlashGet当年最大的卖点,现在,Wget也可以使用此功能,那些网络不是太好的用户可以放心了;

(2)同时支持FTP和HTTP下载方式;尽管现在大部分软件可以使用HTTP方式下载,但是,有些时候,仍然需要使用FTP方式下载软件;

(3)支持代理服务器;对安全强度很高的系统而言,一般不会将自己的系统直接暴露在互联网上,所以,支持代理是下载软件必须有的功能;

(4)设置方便简单;可能,习惯图形界面的用户已经不是太习惯命令行了,但是,命令行在设置上其实有更多的优点,最少,鼠标可以少点很多次,也不要担心是否错点鼠标;

(5)程序小,完全免费;程序小可以考虑不计,因为现在的硬盘实在太大了;完全免费就不得不考虑了,即使网络上有很多所谓的免费软件,但是,这些软件的广告却不是我们喜欢的;

wget虽然功能强大,但是使用起来还是比较简单的,基本的语法是:wget [参数列表] URL。下面就结合具体的例子来说明一下wget的用法。

1、下载整个http或者ftp站点。

wget

这个命令可以将首页下载下来。使用-x会强制建立服务器上一模一样的目录,如果使用-nd参数,那么服务器上下载的所有内容都会加到本地当前目录。

wget-r

这个命令会按照递归的方法,下载服务器上所有的目录和文件,实质就是下载整个网站。这个命令一定要小心使用,因为在下载的时候,被下载网站指向的所有地址同样会被下载,因此,如果这个网站引用了其他网站,那么被引用的网站也会被下载下来!基于这个原因,这个参数不常用。可以用-l number参数来指定下载的层次。例如只下载两层,那么使用-l 2。

要是您想制作镜像站点,那么可以使用-m参数,例如:wget-m

这时wget会自动判断合适的参数来制作镜像站点。此时,wget会登录到服务器上,读入robots.txt并按robots.txt的规定来执行。

2、断点续传。

当文件特别大或者网络特别慢的时候,往往一个文件还没有下载完,连接就已经被切断,此时就需要断点续传。wget的断点续传是自动的,只需要使用-c参数,例如:

wget-c

使用断点续传要求服务器支持断点续传。-t参数表示重试次数,例如需要重试100次,那么就写-t 100,如果设成-t 0,那么表示无穷次重试,直到连接成功。-T参数表示超时等待时间,例如-T 120,表示等待120秒连接不上就算超时。

3、批量下载。

如果有多个文件需要下载,那么可以生成一个文件,把每个文件的URL写一行,例如生成文件download.txt,然后用命令:wget-i download.txt

这样就会把download.txt里面列出的每个URL都下载下来。(如果列的是文件就下载文件,如果列的是网站,那么下载首页)

4、选择性的下载。

可以指定让wget只下载一类文件,或者不下载什么文件。例如:

wget-m–reject=gif

表示下载,但是忽略gif文件。–accept=LIST可以接受的文件类型,–reject=LIST拒绝接受的文件类型。

5、密码和认证。

wget只能处理利用用户名/密码方式限制访问的网站,可以利用两个参数:

–http-user=USER设置HTTP用户

–http-passwd=PASS设置HTTP密码

对于需要证书做认证的网站,就只能利用其他下载工具了,例如curl。

6、利用代理服务器进行下载。

如果用户的网络需要经过代理服务器,那么可以让wget通过代理服务器进行文件的下载。此时需要在当前用户的目录下创建一个.wgetrc文件。文件中可以设置代理服务器:

http-proxy= 111.111.111.111:8080

ftp-proxy= 111.111.111.111:8080

分别表示http的代理服务器和ftp的代理服务器。如果代理服务器需要密码则使用:

–proxy-user=USER设置代理用户

–proxy-passwd=PASS设置代理密码

这两个参数。

使用参数–proxy=on/off使用或者关闭代理。

wget还有很多有用的功能,需要用户去挖掘。

附录:

命令格式:

wget [参数列表] [目标软件、网页的网址]

-V,–version显示软件版本号然后退出;

-h,–help显示软件帮助信息;

-e,–execute=COMMAND执行一个“.wgetrc”命令

-o,–output-file=FILE将软件输出信息保存到文件;

-a,–append-output=FILE将软件输出信息追加到文件;

-d,–debug显示输出信息;

-q,–quiet不显示输出信息;

-i,–input-file=FILE从文件中取得URL;

-t,–tries=NUMBER是否下载次数(0表示无穷次)

-O–output-document=FILE下载文件保存为别的文件名

-nc,–no-clobber不要覆盖已经存在的文件

-N,–timestamping只下载比本地新的文件

-T,–timeout=SECONDS设置超时时间

-Y,–proxy=on/off关闭代理

-nd,–no-directories不建立目录

-x,–force-directories强制建立目录

–http-user=USER设置HTTP用户

–http-passwd=PASS设置HTTP密码

–proxy-user=USER设置代理用户

–proxy-passwd=PASS设置代理密码

-r,–recursive下载整个网站、目录(小心使用)

-l,–level=NUMBER下载层次

-A,–accept=LIST可以接受的文件类型

-R,–reject=LIST拒绝接受的文件类型

-D,–domains=LIST可以接受的域名

–exclude-domains=LIST拒绝的域名

-L,–relative下载关联链接

–follow-ftp只下载FTP链接

-H,–span-hosts可以下载外面的主机

-I,–include-directories=LIST允许的目录

-X,–exclude-directories=LIST拒绝的目录

中文文档名在平常的情况下会被编码,但是在–cut-dirs时又是正常的,

wget-r-np-nH–cut-dirs=3

测试.txt

wget-r-np-nH-nd

%B4%FA%B8%D5.txt

wget“*”

%B4%FA%B8%D5.txt

由於不知名的原因,可能是为了避开特殊档名, wget会自动将抓取档名的部分用 encode_string处理过,所以该 patch就把被 encode_string处理成“%3A”这种东西,用 decode_string还原成“:”,并套用在目录与档案名称的部分,decode_string是 wget内建的函式。

wget-t0-c-nH-x-np-b-m-P/home/sunny/NOD32view/ wget.log

阅读剩余
THE END