Linux 命令2

clear 命令用于清除终端屏幕上现有的文字内容,将之上滚:

wget:从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。

语法:wget(选项)(URL)
选项:
        -a<日志文件>:在指定的日志文件中记录资料的执行过程;
	-A<后缀名>:指定要下载文件的后缀名,多个后缀名之间使用逗号进行分隔;
	-b:进行后台的方式运行wget;
	-B<连接地址>:设置参考的连接地址的基地地址;
	-c:继续执行上次终端的任务;
	-C<标志>:设置服务器数据块功能标志on为激活,off为关闭,默认值为on;
	-d:调试模式运行指令;
	-D<域名列表>:设置顺着的域名列表,域名之间用“,”分隔;
	-e<指令>:作为文件“.wgetrc”中的一部分执行指定的指令;
	-h:显示指令帮助信息;
	-i<文件>:从指定文件获取要下载的URL地址;
	-l<目录列表>:设置顺着的目录列表,多个目录用“,”分隔;
	-L:仅顺着关联的连接;
	-r:递归下载方式;
	-nc:文件存在时,下载文件不覆盖原有文件;
	-nv:下载时只显示更新和出错信息,不显示指令的详细执行过程;
	-q:不显示指令执行过程;
	-nh:不查询主机名称;
	-v:显示详细执行过程;
	-V:显示版本信息;
	--passive-ftp:使用被动模式PASV连接FTP服务器;
	--follow-ftp:从HTML文件中下载FTP连接文件。    
例子:下载并以不同的文件名保存
    wget -O wordpress.zip http://www.linuxde.net/download.aspx?id=1080

which:查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

语法:which(选项)(命令)
选项:
    -n<文件名长度>:制定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名;
    -p<文件名长度>:与-n参数相同,但此处的<文件名长度>包含了文件的路径;
    -w:指定输出时栏位的宽度;
    -V:显示版本信息。
例子:which pwd

ln:用来为文件创件连接,连接类型分为硬连接和符号连接两种,默认的连接类型是硬连接。如果要创建符号连接必须使用"-s"选项。

语法:ln(选项)(参数)
选项:
        -b或--backup:删除,覆盖目标文件之前的备份;
	-d或-F或——directory:建立目录的硬连接;
	-f或——force:强行建立文件或目录的连接,不论文件或目录是否存在;
	-i或——interactive:覆盖既有文件之前先询问用户;
	-n或--no-dereference:把符号连接的目的目录视为一般文件;
	-s或——symbolic:对源文件建立符号连接,而非硬连接;
	-S<字尾备份字符串>或--suffix=<字尾备份字符串>:用"-b"参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,预设的备份字符串是符号“~”,用户可通过“-S”参数来改变它;
	-v或——verbose:显示指令执行过程;
	-V<备份方式>或--version-control=<备份方式>:用“-b”参数备份目标文件后,备份文件的字尾会被加上一个备份字符串,这个字符串不仅可用“-S”参数变更,当使用“-V”参数<备份方式>指定不同备份方式时,也会产生不同字尾的备份字符串;
	--help:在线帮助;
	--version:显示版本信息。
参数:
    源文件:指定连接的源文件。如果使用-s选项创建符号连接,则“源文件”可以是文件或者目录。创建硬连接时,则“源文件”参数只能是文件;
    目标文件:指定源文件的目标连接文件。
例子:将目录/usr/mengqc/mub1下的文件m2.c链接到目录/usr/liu下的文件a2.c
    cd /usr/mengqc
    ln /mub1/m2.c /usr/liu/a2.c

whereis:用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。

whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。

find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。 但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。

语法:whereis(选项)(参数)
选项:
    -b:只查找二进制文件;
    -B<目录>:只在设置的目录下查找二进制文件;
    -f:不显示文件名前的路径名称;
    -m:只查找说明文件;
    -M<目录>:只在设置的目录下查找说明文件;
    -s:只查找原始代码文件;
    -S<目录>只在设置的目录下查找原始代码文件;
    -u:查找不包含指定类型的文件。
参数:
    指令名:要查找的二进制程序、源文件和man手册页的指令名。
实例:将相关的文件都查找出来
    whereis tomcat

locate命令slocate命令都用来查找文件或目录。

locate命令其实是<span><a target="_blank" href="https://www.ancii.com/link/v1/W5Y30KTKpQNLnWPU3APn673ddE_E2rWLmgivpr5Ou8s/" rel="nofollow" title="find">find</a> -name</span>的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

语法:locate/slocate(选项)(参数)
选项:
    -i:忽略大小写
    -d<目录>或--database=<目录>:指定数据库所在的目录;
    -u:更新slocate数据库;
    --help:显示帮助;
    --version:显示版本信息。
参数:
    查找字符串:要查找的文件名中含有的字符串。
实例:搜索用户主目录下,所有以m开头的文件,并且忽略大小写:
    locate -i ~/m

du:查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。

语法:du [选项][文件]
选项:
        -a或-all 显示目录中个别文件的大小。
	-b或-bytes 显示目录或文件大小时,以byte为单位。
	-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
	-k或--kilobytes 以KB(1024bytes)为单位输出。
	-m或--megabytes 以MB为单位输出。
	-s或--summarize 仅显示总计,只列出最后加总的值。
	-h或--human-readable 以K,M,G为单位,提高信息的可读性。
	-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
	-L<符号链接>或--dereference<符号链接> 显示选项中所指定符号链接的源文件大小。
	-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
	-X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。
	--exclude=<目录或文件> 略过指定的目录或文件。
	-D或--dereference-args 显示指定符号链接的源文件大小。
	-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。
	-l或--count-links 重复计算硬件链接的文件。
实例:显示目录或者文件所占空间:
    [ test]# du

diff:比较给定的两个文件的不同。如果使用“-”代替“文件”参数,则要比较的内容将来自标准输入。diff命令是以逐行的方式,比较文本文件的异同处。如果该命令指定进行目录的比较,则将会比较该目录中具有相同文件名的文件,而不会对其子目录文件进行任何比较操作。

语法:diff(选项)(参数)
选项:
        -<行数>:指定要显示多少行的文本。此参数必须与-c或-u参数一并使用;
	-a或——text:diff预设只会逐行比较文本文件;
	-b或--ignore-space-change:不检查空格字符的不同;
	-B或--ignore-blank-lines:不检查空白行;
	-c:显示全部内容,并标出不同之处;
	-C<行数>或--context<行数>:与执行“-c-<行数>”指令相同;
	-d或——minimal:使用不同的演算法,以小的单位来做比较;
	-D<巨集名称>或ifdef<巨集名称>:此参数的输出格式可用于前置处理器巨集;
	-e或——ed:此参数的输出格式可用于ed的script文件;
	-f或-forward-ed:输出的格式类似ed的script文件,但按照原来文件的顺序来显示不同处;
	-H或--speed-large-files:比较大文件时,可加快速度;
	-l<字符或字符串>或--ignore-matching-lines<字符或字符串>:若两个文件在某几行有所不同,而之际航同时都包含了选项中指定的字符或字符串,则不显示这两个文件的差异;
	-i或--ignore-case:不检查大小写的不同;
	-l或——paginate:将结果交由pr程序来分页;
	-n或——rcs:将比较结果以RCS的格式来显示;
	-N或--new-file:在比较目录时,若文件A仅出现在某个目录中,预设会显示:Only in目录,文件A 若使用-N参数,则diff会将文件A 与一个空白的文件比较;
	-p:若比较的文件为C语言的程序码文件时,显示差异所在的函数名称;
	-P或--unidirectional-new-file:与-N类似,但只有当第二个目录包含了第一个目录所没有的文件时,才会将这个文件与空白的文件做比较;
	-q或--brief:仅显示有无差异,不显示详细的信息;
	-r或——recursive:比较子目录中的文件;
	-s或--report-identical-files:若没有发现任何差异,仍然显示信息;
	-S<文件>或--starting-file<文件>:在比较目录时,从指定的文件开始比较;
	-t或--expand-tabs:在输出时,将tab字符展开;
	-T或--initial-tab:在每行前面加上tab字符以便对齐;
	-u,-U<列数>或--unified=<列数>:以合并的方式来显示文件内容的不同;
	-v或——version:显示版本信息;
	-w或--ignore-all-space:忽略全部的空格字符;
	-W<宽度>或--width<宽度>:在使用-y参数时,指定栏宽;
	-x<文件名或目录>或--exclude<文件名或目录>:不比较选项中所指定的文件或目录;
	-X<文件>或--exclude-from<文件>;您可以将文件或目录类型存成文本文件,然后在=<文件>中指定此文本文件;
	-y或--side-by-side:以并列的方式显示文件的异同之处;
	--help:显示帮助;
	--left-column:在使用-y参数时,若两个文件某一行内容相同,则仅在左侧的栏位显示该行内容;
	--suppress-common-lines:在使用-y参数时,仅显示不同之处。
参数:
    文件1:指定要比较的第一个文件;
    文件2:指定要比较的第二个文件。
例子:将目录/usr/li下的文件"test.txt"与当前目录下的文件"test.txt"进行比较,输入如下命令:
    diff /usr/li test.txt     #使用diff指令对文件进行比较

free:显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。

语法:free(选项)
选项:
    -b:以Byte为单位显示内存使用情况;
    -k:以KB为单位显示内存使用情况;
    -m:以MB为单位显示内存使用情况;
    -o:不显示缓冲区调节列;
    -s<间隔秒数>:持续观察内存使用状况;
    -t:显示内存总和列;
    -V:显示版本信息。
实例:
free -m
                  total       used       free     shared    buffers     cached
Mem:          2016       1973         42          0        163       1497
-/+ buffers/cache:        312       1703
Swap:         4094          0       4094

第一部分Mem行解释:
    total:内存总数;
    used:已经使用的内存数;
    free:空闲的内存数;
    shared:当前已经废弃不用;
    buffers Buffer:缓存内存数;
    cached Page:缓存内存数。
第二部分(-/+ buffers/cache)解释:
    (-buffers/cache) used内存数:第一部分Mem行中的 used – buffers – cached
    (+buffers/cache) free内存数: 第一部分Mem行中的 free + buffers + cached
第三部分是指交换分区。

df:显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

语法:df(选项)(文件)
选项:
    -a或--all:包含全部的文件系统;
    --block-size=<区块大小>:以指定的区块大小来显示区块数目;
    -h或--human-readable:以可读性较高的方式来显示信息;
    -H或--si:与-h参数相同,但在计算时是以1000 Bytes为换算单位而非1024 Bytes;
    -i或--inodes:显示inode的信息;
    -k或--kilobytes:指定区块大小为1024字节;
    -l或--local:仅显示本地端的文件系统;
    -m或--megabytes:指定区块大小为1048576字节;
    --no-sync:在取得磁盘使用信息前,不要执行sync指令,此为预设值;
    -P或--portability:使用POSIX的输出格式;
    --sync:在取得磁盘使用信息前,先执行sync指令;
    -t<文件系统类型>或--type=<文件系统类型>:仅显示指定文件系统类型的磁盘信息;
    -T或--print-type:显示文件系统的类型;
    -x<文件系统类型>或--exclude-type=<文件系统类型>:不要显示指定文件系统类型的磁盘信息;
    --help:显示帮助;
    --version:显示版本信息。
实例:
    df -h

相关推荐