diff --git a/command/alias.md b/command/alias.md index 071b29d9f8..ca1a4dd391 100644 --- a/command/alias.md +++ b/command/alias.md @@ -5,7 +5,7 @@ alias ## 补充说明 -**alias命** 用来设置指令的别名。我们可以使用该命令可以将一些较长的命令进行简化。使用alias时,用户必须使用单引号`''`将原来的命令引起来,防止特殊字符导致错误。 +**alias命令** 用来设置指令的别名。我们可以使用该命令可以将一些较长的命令进行简化。使用alias时,用户必须使用单引号`''`将原来的命令引起来,防止特殊字符导致错误。 alias命令的作用只局限于该次登入的操作。若要每次登入都能够使用这些命令别名,则可将相应的alias命令存放到bash的初始化文件`/etc/bashrc`中。 @@ -27,7 +27,7 @@ alias(选项)(参数) ### 实例 -**alias 的基本使用方法为:** + **alias 的基本使用方法为:** ``` alias 新的命令='原命令 -选项/参数' @@ -37,7 +37,7 @@ alias 新的命令='原命令 -选项/参数' 要删除一个别名,可以使用 unalias 命令,如 unalias l。 -**查看系统已经设置的别名:** + **查看系统已经设置的别名:** ``` alias -p @@ -48,4 +48,7 @@ alias ls='ls --color=tty' alias mv='mv -i' alias rm='rm -i' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/apachectl.md b/command/apachectl.md index e7f11f2aaf..9656af2d57 100644 --- a/command/apachectl.md +++ b/command/apachectl.md @@ -5,7 +5,7 @@ Apache服务器前端控制工具 ## 补充说明 -**apachectl命** 是Apache的Web服务器前端控制工具,用以启动、关闭和重新启动Web服务器进程。 +**apachectl命令** 是Apache的Web服务器前端控制工具,用以启动、关闭和重新启动Web服务器进程。 ### 语法 @@ -22,4 +22,7 @@ apachectl(参数) * restart:重新启动Apache服务器; * start:启动Apache服务器; * status:显示服务器摘要的状态信息; -* stop:停止Apache服务器。 \ No newline at end of file +* stop:停止Apache服务器。 + + + \ No newline at end of file diff --git a/command/arpwatch.md b/command/arpwatch.md index 178b36a938..c3fb1a220a 100644 --- a/command/arpwatch.md +++ b/command/arpwatch.md @@ -5,7 +5,7 @@ arpwatch ## 补充说明 -**arpwatch命** 用来监听网络上arp的记录。 +**arpwatch命令** 用来监听网络上arp的记录。 ### 语法 @@ -20,4 +20,7 @@ arpwatch(选项) -f<记录文件>:设置存储ARP记录的文件,预设为/var/arpwatch/arp.dat; -i<接口>:指定监听ARP的接口,预设的接口为eth0; -r<记录文件>:从指定的文件中读取ARP记录,而不是从网络上监听。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/badblocks.md b/command/badblocks.md index 7da52b7601..a334c53484 100644 --- a/command/badblocks.md +++ b/command/badblocks.md @@ -5,7 +5,7 @@ badblocks ## 补充说明 -**badblock命** 用于查找磁盘中损坏的区块。 硬盘是一个损耗设备,当使用一段时间后可能会出现坏道等物理故障。电脑硬盘出现坏道后,如果不及时更换或进行技术处理,坏道就会越来越多,并会造成频繁死机和数据丢失。最好的处理方式是更换磁盘,但在临时的情况下,应及时屏蔽坏道部分的扇区,不要触动它们。badblocks就是一个很好的检查坏道位置的工具。 +**badblock命令** 用于查找磁盘中损坏的区块。 硬盘是一个损耗设备,当使用一段时间后可能会出现坏道等物理故障。电脑硬盘出现坏道后,如果不及时更换或进行技术处理,坏道就会越来越多,并会造成频繁死机和数据丢失。最好的处理方式是更换磁盘,但在临时的情况下,应及时屏蔽坏道部分的扇区,不要触动它们。badblocks就是一个很好的检查坏道位置的工具。 ### 语法 @@ -61,7 +61,7 @@ badblocks -b 4096 -c 1 /dev/hda1 -o hda-badblocks-list.1 63000 51000 ### 其他 -**1、fsck使用badblocks的信息** + **1、fsck使用badblocks的信息** badblocks只会在日志文件中标记出坏道的信息,但若希望在检测磁盘时也能跳过这些坏块不检测,可以使用fsck的-l参数: @@ -69,7 +69,7 @@ badblocks只会在日志文件中标记出坏道的信息,但若希望在检 fsck.ext3 -l /tmp/hda-badblock-list.final /dev/hda1 ``` -**2、在创建文件系统前检测坏道** + **2、在创建文件系统前检测坏道** badblocks可以随e2fsck和mke2fs的-c删除一起运行(对ext3文件系统也一样),在创建文件系统前就先检测坏道信息: @@ -79,4 +79,7 @@ mkfs.ext3 -c /dev/hda1 代码表示使用-c在创建文件系统前检查坏道的硬盘。 -这个操作已经很清楚地告知我们可以采用`mkfs.ext3 -c`选项用`read-only`方式检查硬盘。这个命令会在格式化硬盘时检查硬盘,并标出错误的硬盘“block”。用这个方法格式化硬盘,需要有相当大的耐心,因为命令运行后,会一个个用读的方式检查硬盘。 \ No newline at end of file +这个操作已经很清楚地告知我们可以采用`mkfs.ext3 -c`选项用`read-only`方式检查硬盘。这个命令会在格式化硬盘时检查硬盘,并标出错误的硬盘“block”。用这个方法格式化硬盘,需要有相当大的耐心,因为命令运行后,会一个个用读的方式检查硬盘。 + + + \ No newline at end of file diff --git a/command/bind.md b/command/bind.md index 5ff86cddc8..fa48becd6f 100644 --- a/command/bind.md +++ b/command/bind.md @@ -5,7 +5,7 @@ bind ## 补充说明 -**bind命** 用于显示和设置命令行的键盘序列绑定功能。通过这一命令,可以提高命令行中操作效率。您可以利用bind命令了解有哪些按键组合与其功能,也可以自行指定要用哪些按键组合。 +**bind命令** 用于显示和设置命令行的键盘序列绑定功能。通过这一命令,可以提高命令行中操作效率。您可以利用bind命令了解有哪些按键组合与其功能,也可以自行指定要用哪些按键组合。 ### 语法 @@ -53,4 +53,7 @@ Press any keys - Ctrl-D will terminate this program ^M 13 0015 0x0d 字母M ^C 3 0003 0x03 Ctrl-C ^D 4 0004 0x04 Ctrl-D 退出 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/bunzip2.md b/command/bunzip2.md index 2c4e132e11..beb2c6744c 100644 --- a/command/bunzip2.md +++ b/command/bunzip2.md @@ -5,7 +5,7 @@ bunzip2 ## 补充说明 -**bunzip2命** 解压缩由bzip2指令创建的”.bz2"压缩包。对文件进行压缩与解压缩。此命令类似于“gzip/gunzip”命令,只能对文件进行压缩。对于目录只能压缩目录下的所有文件,压缩完成后,在目录下生成以“.bz2”为后缀的压缩包。bunzip2其实是bzip2的符号链接,即软链接,因此压缩解压都可以通过bzip2实现。 +**bunzip2命令** 解压缩由bzip2指令创建的”.bz2"压缩包。对文件进行压缩与解压缩。此命令类似于“gzip/gunzip”命令,只能对文件进行压缩。对于目录只能压缩目录下的所有文件,压缩完成后,在目录下生成以“.bz2”为后缀的压缩包。bunzip2其实是bzip2的符号链接,即软链接,因此压缩解压都可以通过bzip2实现。 ### 语法 @@ -35,4 +35,7 @@ bunzip2(选项)(参数) bzip2 -9vk /opt/etc.zip /opt/var.zip /opt/backup.zip ``` -压缩完毕后,在`/opt`下就会生成相应的etc.zip.bz2、var.zip.bz2和backup.zip.bz2文件。 \ No newline at end of file +压缩完毕后,在`/opt`下就会生成相应的etc.zip.bz2、var.zip.bz2和backup.zip.bz2文件。 + + + \ No newline at end of file diff --git a/command/bzip2.md b/command/bzip2.md index b279b49174..b199e9f4f3 100644 --- a/command/bzip2.md +++ b/command/bzip2.md @@ -5,7 +5,7 @@ bzip2 ## 补充说明 -**bzip2命** 用于创建和管理(包括解压缩)“.bz2”格式的压缩包。我们遇见Linux压缩打包方法有很多种,以下讲解了Linux压缩打包方法中的Linux bzip2命令的多种范例供大家查看,相信大家看完后会有很多收获。 +**bzip2命令** 用于创建和管理(包括解压缩)“.bz2”格式的压缩包。我们遇见Linux压缩打包方法有很多种,以下讲解了Linux压缩打包方法中的Linux bzip2命令的多种范例供大家查看,相信大家看完后会有很多收获。 ### 语法 @@ -36,7 +36,7 @@ bzip2(选项)(参数) ### 实例 -**压缩指定文件filename:** + **压缩指定文件filename:** ``` bzip2 filename @@ -46,7 +46,7 @@ bzip2 -z filename 这里,压缩的时候不会输出,会将原来的文件filename给删除,替换成filename.bz2.如果以前有filename.bz2则不会替换并提示错误(如果想要替换则指定-f选项,例如`bzip2 -f filename`;如果filename是目录则也提醒错误不做任何操作;如果filename已经是压过的了有bz2后缀就提醒一下,不再压缩,没有bz2后缀会再次压缩。 -**解压指定的文件filename.bz2:** + **解压指定的文件filename.bz2:** ``` bzip2 -d filename.bz2 @@ -56,7 +56,7 @@ bunzip2 filename.bz2 这里,解压的时候没标准输出,会将原来的文件filename.bz2给替换成filename。如果以前有filename则不会替换并提示错误(如果想要替换则指定`-f`选项,例如`bzip2 -df filename.bz2`。 -**压缩解压的时候将结果也输出:** + **压缩解压的时候将结果也输出:** ``` $bzip2 -v filename @@ -70,7 +70,7 @@ filename: 0.119:1, 67.200 bits/byte, -740.00% saved, 5 in, 42 out. 这里,加上`-v`选项就会输出了,只用压缩举例了,解压的时候同理`bzip2 -dv filename.bz2`不再举例了。 -**模拟解压实际并不解压:** + **模拟解压实际并不解压:** ``` bzip2 -tv filename.bz2 @@ -84,7 +84,7 @@ filename.bz2: ok 这里,`-t`指定要进行模拟解压,不实际生成结果,也就是说类似检查文件,当然就算目录下面有filename也不会有什么错误输出了,因为它根本不会真的解压文件。为了在屏幕上输出,这里加上`-v`选项了,如果是真的解压`bzip2 -dv filename.bz2`则输出的是把"ok"替换成了"done"。 -**压缩解压的时候,除了生成结果文件,将原来的文件也保存:** + **压缩解压的时候,除了生成结果文件,将原来的文件也保存:** ``` bzip2 -k filename @@ -92,7 +92,7 @@ bzip2 -k filename 这里,加上`-k`就保存原始的文件了,否则原始文件会被结果文件替代。只用压缩举例了,解压的时候同理`$bzip2 -dk filename.bz2`不再举例了。 -**解压到标准输出:** + **解压到标准输出:** ``` bzip2 -dc filename.bz2 @@ -106,7 +106,7 @@ hahahhaahahha 这里,使用`-c`指定到标准输出,输出的是文件filename的内容,不会将filename.bz2删除。 -**压缩到标准输出:** + **压缩到标准输出:** ``` bzip2 -c filename @@ -116,10 +116,13 @@ bzip2: For help, type: `bzip2 --help'. 这里,使用`-c`指定压缩到标准输出不删除原有文件,不同的是,压缩后的文件无法输出到标准输出。 -**使用bzip2的时候将所有后面的看作文件(即使文件名以'-'开头):** + **使用bzip2的时候将所有后面的看作文件(即使文件名以'-'开头):** ``` bzip2 -- -myfilename ``` -这里主要是为了防止文件名中`-`产生以为是选项的歧义。 \ No newline at end of file +这里主要是为了防止文件名中`-`产生以为是选项的歧义。 + + + \ No newline at end of file diff --git a/command/bzip2recover.md b/command/bzip2recover.md index 602a339cb4..35494107d5 100644 --- a/command/bzip2recover.md +++ b/command/bzip2recover.md @@ -5,7 +5,7 @@ bzip2recover ## 补充说明 -**bzip2recover命** 可用于恢复被破坏的“.bz2”压缩包中的文件。 +**bzip2recover命令** 可用于恢复被破坏的“.bz2”压缩包中的文件。 bzip2是以区块的方式来压缩文件,每个区块视为独立的单位。因此,当某一区块损坏时,便可利用bzip2recover,试着将文件中的区块隔开来,以便解压缩正常的区块。通常只适用在压缩文件很大的情况。 @@ -17,4 +17,7 @@ bzip2recover(参数) ### 参数 -文件:指定要恢复数据的.bz2压缩包。 \ No newline at end of file +文件:指定要恢复数据的.bz2压缩包。 + + + \ No newline at end of file diff --git a/command/cat.md b/command/cat.md index c7acad4bf9..e14a1137c9 100644 --- a/command/cat.md +++ b/command/cat.md @@ -1,34 +1,44 @@ - cat === - -显示文件的内容。 + +连接文件并打印到标准输出设备上 ## 补充说明 -cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令。 +**cat命令** 连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令。 -## 语法 +注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。因此,一般用more等命令分屏显示。为了控制滚屏,可以按Ctrl+S键,停止滚屏;按Ctrl+Q键可以恢复滚屏。按Ctrl+C(中断)键可以终止该命令的执行,并且返回Shell提示符状态。 + +### 语法 ``` cat(选项)(参数) ``` -## 参数 +### 选项 -- -n或-number:有1开始对所有输出的行数编号; -- -b或--number-nonblank:和-n相似,只不过对于空白行不编号; -- -s或--squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行; -- -A:显示不可打印字符,行尾显示“$”; -- -e:等价于"-vE"选项; -- -t:等价于"-vT"选项; - - -## 例子 - -```bash -cat m1 # (在屏幕上显示文件ml的内容) -cat m1 m2 # (同时显示文件ml和m2的内容) -cat m1 m2 > file # (将文件ml和m2合并后放入文件file中) +``` +-n或-number:有1开始对所有输出的行数编号; +-b或--number-nonblank:和-n相似,只不过对于空白行不编号; +-s或--squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行; +-A:显示不可打印字符,行尾显示“$”; +-e:等价于"-vE"选项; +-t:等价于"-vT"选项; ``` +### 参数 + +文件列表:指定要连接的文件列表。 + +### 实例 + +设ml和m2是当前目录下的两个文件 + +``` +cat m1 (在屏幕上显示文件ml的内容) +cat m1 m2 (同时显示文件ml和m2的内容) +cat m1 m2 > file (将文件ml和m2合并后放入文件file中) +``` + + + \ No newline at end of file diff --git a/command/cd.md b/command/cd.md index a5f9648a46..c676dd588a 100644 --- a/command/cd.md +++ b/command/cd.md @@ -5,7 +5,7 @@ cd ## 补充说明 -**cd命** 用来切换工作目录至dirname。 其中dirName表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的home directory(也就是刚login时所在的目录)。另外,`~`也表示为home directory的意思,`.`则是表示目前所在的目录,`..`则表示目前目录位置的上一层目录。 +**cd命令** 用来切换工作目录至dirname。 其中dirName表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的home directory(也就是刚login时所在的目录)。另外,`~`也表示为home directory的意思,`.`则是表示目前所在的目录,`..`则表示目前目录位置的上一层目录。 ### 语法 @@ -30,4 +30,7 @@ cd - 返回进入此目录之前所在的目录; cd .. 返回上级目录(若当前目录为“/“,则执行完后还在“/";".."为上级目录的意思); cd ../.. 返回上两级目录; cd !$ 把上个命令的参数作为cd参数使用。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/chattr.md b/command/chattr.md index fc66c84184..fb1968b1d5 100644 --- a/command/chattr.md +++ b/command/chattr.md @@ -5,7 +5,7 @@ chattr ## 补充说明 -**chattr命** 用来改变文件属性。这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式: +**chattr命令** 用来改变文件属性。这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式: ``` a:让文件或目录仅供附加用途; @@ -49,4 +49,7 @@ chattr +i /etc/fstab ``` chattr +a /data1/user_act.log -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/chfn.md b/command/chfn.md index 692b310bc8..855937667c 100644 --- a/command/chfn.md +++ b/command/chfn.md @@ -5,7 +5,7 @@ chfn ## 补充说明 -**chfn命** 用来改变finger命令显示的信息。这些信息都存放在/etc目录里的passwd文件里。若不指定任何选项,则chfn命令会进入问答式界面。 +**chfn命令** 用来改变finger命令显示的信息。这些信息都存放在/etc目录里的passwd文件里。若不指定任何选项,则chfn命令会进入问答式界面。 ### 语法 @@ -61,4 +61,7 @@ Name[]:linuxde ### 提供 finger 时的资料 Office[]:NCCU Office Phone[]: [del] Home Phone[]: [del] -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/chgrp.md b/command/chgrp.md index adc8c9a606..10f2628214 100644 --- a/command/chgrp.md +++ b/command/chgrp.md @@ -5,7 +5,7 @@ chgrp ## 补充说明 -**chgrp命** 用来改变文件或目录所属的用户组。该命令用来改变指定文件所属的用户组。其中,组名可以是用户组的id,也可以是用户组的组名。文件名可以 是由空格分开的要改变属组的文件列表,也可以是由通配符描述的文件集合。如果用户不是该文件的文件主或超级用户(root),则不能改变该文件的组。 +**chgrp命令** 用来改变文件或目录所属的用户组。该命令用来改变指定文件所属的用户组。其中,组名可以是用户组的id,也可以是用户组的组名。文件名可以 是由空格分开的要改变属组的文件列表,也可以是由通配符描述的文件集合。如果用户不是该文件的文件主或超级用户(root),则不能改变该文件的组。 在UNIX系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用chgrp指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码皆可。 @@ -37,4 +37,7 @@ chgrp(选项)(参数) ``` chgrp -R mengxin /usr/meng -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/chkconfig.md b/command/chkconfig.md index 25dd8f88c7..0ba339f545 100644 --- a/command/chkconfig.md +++ b/command/chkconfig.md @@ -5,7 +5,7 @@ chkconfig ## 补充说明 -**chkconfig命** 检查、设置系统的各种服务。这是Red Hat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。 +**chkconfig命令** 检查、设置系统的各种服务。这是Red Hat公司遵循GPL规则所开发的程序,它可查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。 ### 语法 @@ -62,4 +62,7 @@ chkconfig mysqld on #设定mysqld在各等级为on,“各等级” 1. 服务脚本必须存放在`/etc/ini.d/`目录下; 2. `chkconfig --add servicename`在chkconfig工具服务列表中增加此服务,此时服务会被在`/etc/rc.d/rcN.d`中赋予K/S入口了; -3. `chkconfig --level 35 mysqld on`修改服务的默认启动等级。 \ No newline at end of file +3. `chkconfig --level 35 mysqld on`修改服务的默认启动等级。 + + + \ No newline at end of file diff --git a/command/chmod.md b/command/chmod.md index e82e7bbac5..a326f14991 100644 --- a/command/chmod.md +++ b/command/chmod.md @@ -5,7 +5,7 @@ chmod ## 补充说明 -**chmod命** 用来变更文件或目录的权限。在UNIX系统家族里,文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分,另有3种特殊权限可供运用。用户可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。 +**chmod命令** 用来变更文件或目录的权限。在UNIX系统家族里,文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分,另有3种特殊权限可供运用。用户可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。 权限范围的表示法如下: @@ -69,4 +69,7 @@ chmod a+x f01  //对文件f01的u,g,o都设置可执行属性 ``` chown user:market f01  //把文件f01给uesr,添加到market组 ll -d f1 查看目录f1的属性 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/chown.md b/command/chown.md index 519429e74b..3c681dd147 100644 --- a/command/chown.md +++ b/command/chown.md @@ -5,7 +5,7 @@ chown ## 补充说明 -**chown命** 改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户D,用户组可以是组名或组id。文件名可以使由空格分开的文件列表,在文件名中可以包含通配符。 +**chown命令** 改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户D,用户组可以是组名或组id。文件名可以使由空格分开的文件列表,在文件名中可以包含通配符。 只有文件主和超级用户才可以便用该命令。 @@ -40,4 +40,7 @@ chown(选项)(参数) ``` chown -R liu /usr/meng -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/chroot.md b/command/chroot.md index 4022581417..eb263a2e1b 100644 --- a/command/chroot.md +++ b/command/chroot.md @@ -5,19 +5,19 @@ chroot ## 补充说明 -**chroot命** 用来在指定的根目录下运行指令。chroot,即 change root directory (更改 root 目录)。在 linux 系统中,系统默认的目录结构都是以`/`,即是以根 (root) 开始的。而在使用 chroot 之后,系统的目录结构将以指定的位置作为`/`位置。 +**chroot命令** 用来在指定的根目录下运行指令。chroot,即 change root directory (更改 root 目录)。在 linux 系统中,系统默认的目录结构都是以`/`,即是以根 (root) 开始的。而在使用 chroot 之后,系统的目录结构将以指定的位置作为`/`位置。 在经过 chroot 命令之后,系统读取到的目录和文件将不在是旧系统根下的而是新根下(即被指定的新的位置)的目录结构和文件,因此它带来的好处大致有以下3个: -**增加了系统的安全性,限制了用户的权力:** + **增加了系统的安全性,限制了用户的权力:** 在经过 chroot 之后,在新根下将访问不到旧系统的根目录结构和文件,这样就增强了系统的安全性。这个一般是在登录 (login) 前使用 chroot,以此达到用户不能访问一些特定的文件。 -**建立一个与原系统隔离的系统目录结构,方便用户的开发:** + **建立一个与原系统隔离的系统目录结构,方便用户的开发:** 使用 chroot 后,系统读取的是新根下的目录和文件,这是一个与原系统根下文件不相关的目录结构。在这个新的环境中,可以用来测试软件的静态编译以及一些与系统不相关的独立开发。 -**切换系统的根目录位置,引导 Linux 系统启动以及急救系统等:** + **切换系统的根目录位置,引导 Linux 系统启动以及急救系统等:** chroot 的作用就是切换系统的根位置,而这个作用最为明显的是在系统初始引导磁盘的处理过程中使用,从初始 RAM 磁盘 (initrd) 切换系统的根位置并执行真正的 init。另外,当系统出现一些问题时,我们也可以使用 chroot 来切换到一个临时的系统。 @@ -41,7 +41,7 @@ chroot(选项)(参数) ### 实例 -**将target作为根目录(运行其中的`/bin/sh`):** + **将target作为根目录(运行其中的`/bin/sh`):** ``` chroot target /bin/sh @@ -64,7 +64,7 @@ chroot target /bin/ls 注意,自己在本地编译一个程序生成a.out之后,拷进`target/bin/`中这样运行却不行,因为它包含了动态连接的库,需要用ldd查看a.out需要那些动态库,将这些库拷贝到新根的对应路径下才能执行。 -**用chroot运行自己编译的一个程序:** + **用chroot运行自己编译的一个程序:** 准备chroot的根目录: @@ -116,4 +116,7 @@ su chroot newRoot /a.out ``` -这样就能够正确运行a.out了,因为a.out使用到了其他的动态连接库,所以需要将库拷贝到newRoot中,如果没有其他库那么直接拷贝a.out就能运行。例如静态编译后的busybox,其安装目录中的`/bin/busybox`就没有依赖其他库。 \ No newline at end of file +这样就能够正确运行a.out了,因为a.out使用到了其他的动态连接库,所以需要将库拷贝到newRoot中,如果没有其他库那么直接拷贝a.out就能运行。例如静态编译后的busybox,其安装目录中的`/bin/busybox`就没有依赖其他库。 + + + \ No newline at end of file diff --git a/command/chsh.md b/command/chsh.md index b41485a717..853f49c93f 100644 --- a/command/chsh.md +++ b/command/chsh.md @@ -5,7 +5,7 @@ chsh ## 补充说明 -**chsh命** 用来更换登录系统时使用的shell。若不指定任何参数与用户名称,则chsh会以应答的方式进行设置。 +**chsh命令** 用来更换登录系统时使用的shell。若不指定任何参数与用户名称,则chsh会以应答的方式进行设置。 ### 语法 @@ -28,7 +28,7 @@ chsh(选项)(参数) ### 实例 -**查看系统安装了哪些shell的两种方法:** + **查看系统安装了哪些shell的两种方法:** 第一种: @@ -52,7 +52,7 @@ rocrocket@localhost ~ /etc/shells 其实`chsh -l`也是来查看这个文件。 -**查看当前正在使用的shell:** + **查看当前正在使用的shell:** ``` rocrocket@localhost ~ $SHELL @@ -61,7 +61,7 @@ rocrocket@localhost ~ $SHELL 注意SHELL一定要是大写。可以看到,目前使用的shell是`/bin/bash` -**把我的shell改成zsh:** + **把我的shell改成zsh:** ``` [rocrocket@localhost ~]$ chsh -s /bin/zsh @@ -80,11 +80,14 @@ rocrocket:x:500:500:rocrocket,China:/rocrocket/PSB/home:/bin/zsh 你可以发现输出内容的最后部分已经变成了`/bin/zsh`了,下次重启的时候,linux就会读取这一命令来启动shell了! -**把shell修改回/bin/bash:** + **把shell修改回/bin/bash:** ``` [rocrocket@localhost ~]$ chsh -s /bin/bash Changing shell for rocrocket. Password: Shell changed. -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/cksum.md b/command/cksum.md index e9e9b8d218..7e130486e8 100644 --- a/command/cksum.md +++ b/command/cksum.md @@ -5,7 +5,7 @@ cksum ## 补充说明 -**cksum命** 是检查文件的CRC是否正确,确保文件从一个系统传输到另一个系统的过程中不被损坏。这种方法要求校验和在源系统中被计算出来,在目的系统中又被计算一次,两个数字进行比较,如果校验和相等,则该文件被认为是正确传输了。 +**cksum命令** 是检查文件的CRC是否正确,确保文件从一个系统传输到另一个系统的过程中不被损坏。这种方法要求校验和在源系统中被计算出来,在目的系统中又被计算一次,两个数字进行比较,如果校验和相等,则该文件被认为是正确传输了。 注意:CRC是指一种排错检查方法,即循环冗余校验法。 @@ -44,4 +44,7 @@ cksum testfile1 #对指定文件进行CRC校验 上面的输出信息中,"1263453430"表示校验码,"78"表示字节数。 -注意:如果文件中有任何字符被修改,都将改变计算后CRC校验码的值。 \ No newline at end of file +注意:如果文件中有任何字符被修改,都将改变计算后CRC校验码的值。 + + + \ No newline at end of file diff --git a/command/cmp.md b/command/cmp.md index 5a5e336b09..d9e6c1a9e5 100644 --- a/command/cmp.md +++ b/command/cmp.md @@ -5,7 +5,7 @@ cmp ## 补充说明 -**cmp命** 用来比较两个文件是否有差异。当相互比较的两个文件完全一样时,则该指令不会显示任何信息。若发现有差异,预设会标示出第一个不通之处的字符和列数编号。若不指定任何文件名称或是所给予的文件名为“-”,则cmp指令会从标准输入设备读取数据。 +**cmp命令** 用来比较两个文件是否有差异。当相互比较的两个文件完全一样时,则该指令不会显示任何信息。若发现有差异,预设会标示出第一个不通之处的字符和列数编号。若不指定任何文件名称或是所给予的文件名为“-”,则cmp指令会从标准输入设备读取数据。 ### 语法 @@ -57,4 +57,7 @@ cmp testfile testfile1 #比较两个文件 testfile testfile1 #有差异:第8字节,第2行 ``` -注意:在比较结果中,只能够显示第一比较结果。 \ No newline at end of file +注意:在比较结果中,只能够显示第一比较结果。 + + + \ No newline at end of file diff --git a/command/col.md b/command/col.md index e3bdf61ac4..317d0b1c93 100644 --- a/command/col.md +++ b/command/col.md @@ -5,7 +5,7 @@ col ## 补充说明 -**col命** 是一个标准输入文本过滤器,它从标注输入设备读取文本内容,并把内容显示到标注输出设备。在许多UNIX说明文件里,都有RLF控制字符。当我们运用shell特殊字符`>`和`>>`,把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col命令则能有效滤除这些控制字符。 +**col命令** 是一个标准输入文本过滤器,它从标注输入设备读取文本内容,并把内容显示到标注输出设备。在许多UNIX说明文件里,都有RLF控制字符。当我们运用shell特殊字符`>`和`>>`,把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col命令则能有效滤除这些控制字符。 ### 语法 @@ -20,4 +20,7 @@ col(选项) -f:滤掉RLF字符,但允许将HRLF字符呈现出来; -x:以多个空格字符来表示跳格字符; -l<缓冲区列数>:预设的内存缓冲区有128列,用户可以自行指定缓冲区的大小。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/colrm.md b/command/colrm.md index 2963a4e7f0..5db362582e 100644 --- a/command/colrm.md +++ b/command/colrm.md @@ -5,7 +5,7 @@ colrm ## 补充说明 -**colrm命** 用于删除文件中的指定列。colrm命令从标准输入设备读取书记,转而输出到标准输出设备。如果不加任何参数,则colrm命令不会过滤任何一行。 +**colrm命令** 用于删除文件中的指定列。colrm命令从标准输入设备读取书记,转而输出到标准输出设备。如果不加任何参数,则colrm命令不会过滤任何一行。 ### 语法 @@ -16,4 +16,7 @@ colrm(参数) ### 参数 * 起始列号:指定要删除的指定列; -* 结尾列号:指定要删除的结尾列。 \ No newline at end of file +* 结尾列号:指定要删除的结尾列。 + + + \ No newline at end of file diff --git a/command/comm.md b/command/comm.md index f2a990ed4a..9fbdfcfefa 100644 --- a/command/comm.md +++ b/command/comm.md @@ -5,7 +5,7 @@ comm ## 补充说明 -**comm命** 可以用于两个文件之间的比较,它有一些选项可以用来调整输出,以便执行交集、求差、以及差集操作。 +**comm命令** 可以用于两个文件之间的比较,它有一些选项可以用来调整输出,以便执行交集、求差、以及差集操作。 * 交集:打印出两个文件所共有的行。 * 求差:打印出指定文件所包含的且不相同的行。 @@ -71,7 +71,7 @@ eee 输出的第一列只包含在aaa.txt中出现的行,第二列包含在bbb.txt中出现的行,第三列包含在aaa.txt和bbb.txt中相同的行。各列是以制表符(\t)作为定界符。 -**交集** + **交集** 打印两个文件的交集,需要删除第一列和第二列: @@ -81,7 +81,7 @@ bbb ccc ``` -**求差** + **求差** 打印出两个文件中不相同的行,需要删除第三列: @@ -100,7 +100,7 @@ jjj sed 's/^\t//' 是将制表符(\t)删除,以便把两列合并成一列。 -**差集** + **差集** 通过删除不需要的列,可以得到aaa.txt和bbb.txt的差集: @@ -123,4 +123,7 @@ aaa hhh ttt jjj -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/compress.md b/command/compress.md index aa23b6c2c8..bbdc131a99 100644 --- a/command/compress.md +++ b/command/compress.md @@ -5,7 +5,7 @@ compress ## 补充说明 -**compress命** 使用“Lempress-Ziv”编码压缩数据文件。compress是个历史悠久的压缩程序,文件经它压缩后,其名称后面会多出".Z"的扩展名。当要解压缩时,可执行uncompress指令。事实上uncompress是指向compress的符号连接,因此不论是压缩或解压缩,都可通过compress指令单独完成。 +**compress命令** 使用“Lempress-Ziv”编码压缩数据文件。compress是个历史悠久的压缩程序,文件经它压缩后,其名称后面会多出".Z"的扩展名。当要解压缩时,可执行uncompress指令。事实上uncompress是指向compress的符号连接,因此不论是压缩或解压缩,都可通过compress指令单独完成。 ### 语法 @@ -62,4 +62,7 @@ root@localhost tmp -l -rw-r--r-- 1 root root 2605 Jul 27 11:46 man.config.back.Z ``` -这个`-c`的选项比较有趣!会将压缩过程的资料输出到屏幕上,而不是写入成为file.Z文件。所以,我们可以透过资料流重导向的方法将资料输出成为另一个档名。 \ No newline at end of file +这个`-c`的选项比较有趣!会将压缩过程的资料输出到屏幕上,而不是写入成为file.Z文件。所以,我们可以透过资料流重导向的方法将资料输出成为另一个档名。 + + + \ No newline at end of file diff --git a/command/cp.md b/command/cp.md index f0da1a9410..120085a483 100644 --- a/command/cp.md +++ b/command/cp.md @@ -1,69 +1,71 @@ cp === - -将一个或多个源文件或者目录复制到指定的目的文件或目录。 + +将源文件或目录复制到目标文件或目录中 ## 补充说明 **cp命令** 用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。 -## 语法 +### 语法 -```bash +``` cp(选项)(参数) ``` -## 选项 +### 选项 -- -a:此参数的效果和同时指定"-dpR"参数相同; -- -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录; -- -f:强行复制文件或目录,不论目标文件或目录是否已存在; -- -i:覆盖既有文件之前先询问用户; -- -l:对源文件建立硬连接,而非复制文件; -- -p:保留源文件或目录的属性; -- -R/r:递归处理,将指定目录下的所有文件与子目录一并处理; -- -s:对源文件建立符号连接,而非复制文件; -- -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件; -- -S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀; -- -b:覆盖已存在的文件目标前将目标文件备份; -- -v:详细显示命令执行的操作。 +``` +-a:此参数的效果和同时指定"-dpR"参数相同; +-d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录; +-f:强行复制文件或目录,不论目标文件或目录是否已存在; +-i:覆盖既有文件之前先询问用户; +-l:对源文件建立硬连接,而非复制文件; +-p:保留源文件或目录的属性; +-R/r:递归处理,将指定目录下的所有文件与子目录一并处理; +-s:对源文件建立符号连接,而非复制文件; +-u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件; +-S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀; +-b:覆盖已存在的文件目标前将目标文件备份; +-v:详细显示命令执行的操作。 +``` -## 参数 +### 参数 -* 源文件:制定源文件列表。默认情况下,cp命令不能复制目录,如果要复制目录,则必须使用`-R`选项; -* 目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录。 +* 源文件:制定源文件列表。默认情况下,cp命令不能复制目录,如果要复制目录,则必须使用`-R`选项; +* 目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录。 -## 实例 +### 实例 如果把一个文件复制到一个目标文件中,而目标文件已经存在,那么,该目标文件的内容将被破坏。此命令中所有参数既可以是绝对路径名,也可以是相对路径名。通常会用到点`.`或点点`..`的形式。例如,下面的命令将指定文件复制到当前目录下: -```bash +``` cp ../mary/homework/assign . ``` 所有目标文件指定的目录必须是己经存在的,cp命令不能创建目录。如果没有文件复制的权限,则系统会显示出错信息。 -将文件 file 复制到目录`/usr/men/tmp`下,并改名为file1 +将文件file复制到目录`/usr/men/tmp`下,并改名为file1 -```bash +``` cp file /usr/men/tmp/file1 ``` 将目录`/usr/men`下的所有文件及其子目录复制到目录`/usr/zh`中 -```bash +``` cp -r /usr/men /usr/zh ``` 交互式地将目录`/usr/men`中的以m打头的所有.c文件复制到目录`/usr/zh`中 -```bash +``` cp -i /usr/men m*.c /usr/zh ``` 我们在Linux下使用cp命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按Y来确定执行覆盖。文件数量不多还好,但是要是几百个估计按Y都要吐血了,于是折腾来半天总结了一个方法: -```bash +``` cp aaa/* /bbb 复制目录aaa下所有到/bbb目录下,这时如果/bbb目录下有和aaa同名的文件,需要按Y来确认并且会略过aaa目录下的子目录。 @@ -76,3 +78,6 @@ cp -r -a aaa/* /bbb \cp -r -a aaa/* /bbb 成功,没有提示按Y、传递了目录属性、没有略过目录。 ``` + + + \ No newline at end of file diff --git a/command/cpio.md b/command/cpio.md index d7d7760cea..58110f085d 100644 --- a/command/cpio.md +++ b/command/cpio.md @@ -5,7 +5,7 @@ cpio ## 补充说明 -**cpio命** 主要是用来建立或者还原备份档的工具程序,cpio命令可以复制文件到归档包中,或者从归档包中复制文件。 +**cpio命令** 主要是用来建立或者还原备份档的工具程序,cpio命令可以复制文件到归档包中,或者从归档包中复制文件。 ### 语法 @@ -60,13 +60,13 @@ cpio(选项) ### 实例 -**将`/etc`下的所有普通文件都备份到`/opt/etc.cpio`,使用以下命令:** + **将`/etc`下的所有普通文件都备份到`/opt/etc.cpio`,使用以下命令:** ``` find /etc –type f | cpio –ocvB >/opt/etc.cpio ``` -**将系统上所有资料备份到磁带机内,使用以下命令:** + **将系统上所有资料备份到磁带机内,使用以下命令:** ``` find / -print | cpio -covB > /dev/st0 @@ -74,7 +74,7 @@ find / -print | cpio -covB > /dev/st0 这里的`/dev/st0`是磁带的设备名,代表SCSI磁带机。 -**查看上例磁带机上备份的文件,使用以下命令:** + **查看上例磁带机上备份的文件,使用以下命令:** ``` cpio -icdvt < /dev/st0 > /tmp/st_content @@ -82,7 +82,7 @@ cpio -icdvt < /dev/st0 > /tmp/st_content 有时可能因为备份的文件过多,一个屏幕无法显示完毕,此时我们利用下面命令,让磁带机的文件信息输出到文件。 -**将示例1中的备份包还原到相应的位置,如果有相同文件进行覆盖,使用以下命令:** + **将示例1中的备份包还原到相应的位置,如果有相同文件进行覆盖,使用以下命令:** ``` cpio –icduv < /opt/etc.cpio @@ -90,4 +90,7 @@ cpio –icduv < /opt/etc.cpio 注意,cpio恢复的路径,如果cpio在打包备份的时候用的是绝对路径,那么在恢复的时候会自动恢复到这些绝对路径下,本例就会将备份文件全部还原到/etc路径下对应的目录中。同理,如果在打包备份用的是相对路径,还原时也将恢复到相对路径下。 -通过上面的示例,可以看出,cpio无法直接读取文件,它需要每个文件或者目录的完整路径名才能识别读取,而find命令的输出刚好做到了这点,因此,cpio命令一般和find命令配合使用。其实,上面的示例我们已经看到了它们的组合用法。 \ No newline at end of file +通过上面的示例,可以看出,cpio无法直接读取文件,它需要每个文件或者目录的完整路径名才能识别读取,而find命令的输出刚好做到了这点,因此,cpio命令一般和find命令配合使用。其实,上面的示例我们已经看到了它们的组合用法。 + + + \ No newline at end of file diff --git a/command/crontab.md b/command/crontab.md index 232b09d063..47c66a43a4 100644 --- a/command/crontab.md +++ b/command/crontab.md @@ -5,7 +5,7 @@ crontab ## 补充说明 -**crontab命** 被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。 +**crontab命令** 被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。 ### 语法 @@ -28,9 +28,9 @@ crontab文件:指定包含待执行任务的crontab文件。 ### 知识扩展 -Linux下的任务调度分为两类:**系统任务调度**和**用户任务调度**。 +Linux下的任务调度分为两类: **系统任务调度** 和 **用户任务调度** 。 -**系统任务调度:**系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。在`/etc`目录下有一个crontab文件,这个就是系统任务调度的配置文件。 + **系统任务调度:** 系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。在`/etc`目录下有一个crontab文件,这个就是系统任务调度的配置文件。 `/etc/crontab`文件包括下面几行: @@ -48,7 +48,7 @@ MAILTO=""HOME=/ 前四行是用来配置crond任务运行的环境变量,第一行SHELL变量指定了系统要使用哪个shell,这里是bash,第二行PATH变量指定了系统执行命令的路径,第三行MAILTO变量指定了crond的任务执行信息将通过电子邮件发送给root用户,如果MAILTO变量的值为空,则表示不发送任务执行信息给用户,第四行的HOME变量指定了在执行命令或者脚本时使用的主目录。 -**用户任务调度:**用户定期要执行的工作,比如用户数据备份、定时邮件提醒等。用户可以使用 crontab 工具来定制自己的计划任务。所有用户定义的crontab文件都被保存在`/var/spool/cron`目录中。其文件名与用户名一致,使用者权限文件如下: + **用户任务调度:** 用户定期要执行的工作,比如用户数据备份、定时邮件提醒等。用户可以使用 crontab 工具来定制自己的计划任务。所有用户定义的crontab文件都被保存在`/var/spool/cron`目录中。其文件名与用户名一致,使用者权限文件如下: ``` /etc/cron.deny 该文件中所列用户不允许使用crontab命令 @@ -78,7 +78,7 @@ minute hour day month week command 顺序:分 时 日 月 周 * 中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6” * 正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。 -**crond服务** + **crond服务** ``` /sbin/service crond start //启动服务 @@ -201,4 +201,7 @@ chkconfig –level 35 crond on ``` 01 * * * * root run-parts /etc/cron.hourly -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/csplit.md b/command/csplit.md index b6cb92fbd9..b71278d007 100644 --- a/command/csplit.md +++ b/command/csplit.md @@ -5,7 +5,7 @@ csplit ## 补充说明 -**csplit命** 用于将一个大文件分割成小的碎片,并且将分割后的每个碎片保存成一个文件。碎片文件的命名类似“xx00”,“xx01”。csplit命令是split的一个变体,split只能够根据文件大小或行数来分割,但csplit能够根据文件本身特点来分割文件。 +**csplit命令** 用于将一个大文件分割成小的碎片,并且将分割后的每个碎片保存成一个文件。碎片文件的命名类似“xx00”,“xx01”。csplit命令是split的一个变体,split只能够根据文件大小或行数来分割,但csplit能够根据文件本身特点来分割文件。 ### 语法 @@ -60,7 +60,7 @@ root@localhost split server01.log server02.log server03.log server.log ``` -**命令详细说明:** + **命令详细说明:** ``` /[正则表达式]/ #匹配文本样式,比如/SERVER/,从第一行到包含SERVER的匹配行。 @@ -70,4 +70,7 @@ server01.log server02.log server03.log server.log -f #指定分割后的文件名前缀。 -b #指定后缀格式。比如%02d.log,类似于C语言中的printf参数格式。 rm server00.log #是删除第一个文件,因为分割后的的第一个文件没有内容,匹配的单词就位于文件的第一行中。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/cut.md b/command/cut.md index 5388d163d6..dc1a99c2fc 100644 --- a/command/cut.md +++ b/command/cut.md @@ -5,7 +5,7 @@ cut ## 补充说明 -**cut命** 用来显示行中的指定部分,删除文件中指定字段。cut经常用来显示文件的内容,类似于下的type命令。 +**cut命令** 用来显示行中的指定部分,删除文件中指定字段。cut经常用来显示文件的内容,类似于下的type命令。 说明:该命令有两项功能,其一是用来显示文件的内容,它依次读取由参数file所指 明的文件,将它们的内容输出到标准输出上;其二是连接两个或多个文件,如`cut fl f2 > f3`将把文件fl和几的内容合并起来,然后通过输出重定向符“>”的作用,将它们放入文件f3中。 @@ -48,7 +48,7 @@ No Name Mark Percent ``` -使用 **-f** 选项提取指定字段: +使用 **-f** 选项提取指定字段: ``` [root@localhost text]# cut -f 1 test.txt @@ -67,7 +67,7 @@ alex 68 ``` -**--complement** 选项提取指定字段之外的列(打印除了第二列之外的列): + **--complement** 选项提取指定字段之外的列(打印除了第二列之外的列): ``` [root@localhost text]# cut -f2 --complement test.txt @@ -78,7 +78,7 @@ No Mark Percent ``` -使用 **-d** 选项指定字段分隔符: +使用 **-d** 选项指定字段分隔符: ``` [root@localhost text]# cat test2.txt @@ -101,17 +101,17 @@ alex cut命令可以将一串字符作为列来显示,字符字段的记法: -* **N-**:从第N个字节、字符、字段到结尾; -* **N-M**:从第N个字节、字符、字段到第M个(包括M在内)字节、字符、字段; -* **-M**:从第1个字节、字符、字段到第M个(包括M在内)字节、字符、字段。 +* **N-** :从第N个字节、字符、字段到结尾; +* **N-M** :从第N个字节、字符、字段到第M个(包括M在内)字节、字符、字段; +* **-M** :从第1个字节、字符、字段到第M个(包括M在内)字节、字符、字段。 上面是记法,结合下面选项将摸个范围的字节、字符指定为字段: -* **-b** 表示字节; -* **-c** 表示字符; -* **-f** 表示定义字段。 +* **-b** 表示字节; +* **-c** 表示字符; +* **-f** 表示定义字段。 -**示例** + **示例** ``` [root@localhost text]# cat test.txt @@ -156,4 +156,7 @@ efghijklmnopqrstuvwxyz efghijklmnopqrstuvwxyz efghijklmnopqrstuvwxyz efghijklmnopqrstuvwxyz -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/date.md b/command/date.md index f9b3acd042..ba54490396 100644 --- a/command/date.md +++ b/command/date.md @@ -5,7 +5,7 @@ date ## 补充说明 -**date命** 是显示或设置系统时间与日期。 +**date命令** 是显示或设置系统时间与日期。 很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印,也可以使用命令设置固定的格式。在类UNIX系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC)1970年1月1日0时0分0秒起流逝的秒数。 @@ -144,4 +144,7 @@ nmap man.linuxde.net &> /dev/null end=$(date +%s) difference=$(( end - start )) echo $difference seconds. -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/dd.md b/command/dd.md index bc4a32d591..03f6cf4d66 100644 --- a/command/dd.md +++ b/command/dd.md @@ -5,7 +5,7 @@ dd ## 补充说明 -**dd命** 用于复制文件并对原文件的内容进行转换和格式化处理。dd命令功能很强大的,对于一些比较底层的问题,使用dd命令往往可以得到出人意料的效果。用的比较多的还是用dd来备份裸设备。但是不推荐,如果需要备份oracle裸设备,可以使用rman备份,或使用第三方软件备份,使用dd的话,管理起来不太方便。 +**dd命令** 用于复制文件并对原文件的内容进行转换和格式化处理。dd命令功能很强大的,对于一些比较底层的问题,使用dd命令往往可以得到出人意料的效果。用的比较多的还是用dd来备份裸设备。但是不推荐,如果需要备份oracle裸设备,可以使用rman备份,或使用第三方软件备份,使用dd的话,管理起来不太方便。 建议在有需要的时候使用dd 对物理磁盘操作,如果是文件系统的话还是使用tar backup cpio等其他命令更加方便。另外,使用dd对磁盘操作时,最好使用块设备文件。 @@ -45,11 +45,11 @@ root@localhost text -sh sun.txt 该命令创建了一个1M大小的文件sun.txt,其中参数解释: -* **if** 代表输入文件。如果不指定if,默认就会从stdin中读取输入。 -* **of** 代表输出文件。如果不指定of,默认就会将stdout作为默认输出。 -* **bs** 代表字节为单位的块大小。 -* **count** 代表被复制的块数。 -* **/dev/zero** 是一个字符设备,会不断返回0值字节(\0)。 +* **if** 代表输入文件。如果不指定if,默认就会从stdin中读取输入。 +* **of** 代表输出文件。如果不指定of,默认就会将stdout作为默认输出。 +* **bs** 代表字节为单位的块大小。 +* **count** 代表被复制的块数。 +* **/dev/zero** 是一个字符设备,会不断返回0值字节(\0)。 块大小可以使用的计量单位表 @@ -121,4 +121,7 @@ root@localhost text -sh sun.txt ``` 1048576 bytes (1.0 MB) copied, 0.006107 seconds, 172 MB/s -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/declare.md b/command/declare.md index 3e018b0d38..93640edd7d 100644 --- a/command/declare.md +++ b/command/declare.md @@ -5,7 +5,7 @@ declare ## 补充说明 -**declare命** 用于声明和显示已存在的shell变量。当不提供变量名参数时显示所有shell变量。declare命令若不带任何参数选项,则会显示所有shell变量及其值。declare的功能与typeset命令的功能是相同的。 +**declare命令** 用于声明和显示已存在的shell变量。当不提供变量名参数时显示所有shell变量。declare命令若不带任何参数选项,则会显示所有shell变量及其值。declare的功能与typeset命令的功能是相同的。 ### 语法 @@ -45,4 +45,7 @@ echo $test #输出shell变量的值 ``` man.linuxde.net -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/depmod.md b/command/depmod.md index f972625949..741274bf95 100644 --- a/command/depmod.md +++ b/command/depmod.md @@ -5,7 +5,7 @@ depmod ## 补充说明 -**depmod命** 可产生模块依赖的映射文件,在构建嵌入式系统时,需要由这个命令来生成相应的文件,由modprobe使用。 +**depmod命令** 可产生模块依赖的映射文件,在构建嵌入式系统时,需要由这个命令来生成相应的文件,由modprobe使用。 ### 语法 @@ -58,4 +58,7 @@ depmod -b /home/windsome/EMMA3PF-KernelSource-20080626/install_pos -e -F ./boot/ 在linux桌面系统中,当你编译了新的驱动,为了能够用`modprobe ***`加载模块, 你需要先将模块拷贝到`/lib/modules /2.6.31-20-generic`目录下,然后运行`sudo depmod -a`将模块信息写入modules.dep、modules.dep.bin、modules.alias.bin、modules.alias和modules.pcimap文件中。 -如,我编译了一个新的wifi驱动r8192se_pci.ko,将其拷贝到`/lib/modules/2.6.31-20-generic/wireless`下,然后到`/lib/modules/2.6.31-20-generic`运行`depmod -a`,之后可以在任意目录运行modprobe r8192se_pci。 \ No newline at end of file +如,我编译了一个新的wifi驱动r8192se_pci.ko,将其拷贝到`/lib/modules/2.6.31-20-generic/wireless`下,然后到`/lib/modules/2.6.31-20-generic`运行`depmod -a`,之后可以在任意目录运行modprobe r8192se_pci。 + + + \ No newline at end of file diff --git a/command/df.md b/command/df.md index ef0c08227b..735644117a 100644 --- a/command/df.md +++ b/command/df.md @@ -5,7 +5,7 @@ df ## 补充说明 -**df命** 用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。 +**df命令** 用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。 ### 语法 @@ -75,4 +75,7 @@ devpts 0 0 0 - /dev/pts tmpfs 1032204 0 1032204 0% /dev/shm /dev/sdb1 2884284108 218826068 2518944764 8% /data1 none 0 0 0 - /proc/sys/fs/binfmt_misc -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/diff.md b/command/diff.md index 6676dc5186..791a42f179 100644 --- a/command/diff.md +++ b/command/diff.md @@ -5,7 +5,7 @@ diff ## 补充说明 -**diff命** 在最简单的情况下,比较给定的两个文件的不同。如果使用“-”代替“文件”参数,则要比较的内容将来自标准输入。diff命令是以逐行的方式,比较文本文件的异同处。如果该命令指定进行目录的比较,则将会比较该目录中具有相同文件名的文件,而不会对其子目录文件进行任何比较操作。 +**diff命令** 在最简单的情况下,比较给定的两个文件的不同。如果使用“-”代替“文件”参数,则要比较的内容将来自标准输入。diff命令是以逐行的方式,比较文本文件的异同处。如果该命令指定进行目录的比较,则将会比较该目录中具有相同文件名的文件,而不会对其子目录文件进行任何比较操作。 ### 语法 @@ -75,4 +75,7 @@ n1,n2 c n3,n4 其中,字母"a"、"d"、"c"分别表示添加、删除及修改操作。而"n1"、"n2"表示在文件1中的行号,"n3"、"n4"表示在文件2中的行号。 -注意:以上说明指定了两个文件中不同处的行号及其相应的操作。在输出形式中,每一行后面将跟随受到影响的若干行。其中,以<开始的行属于文件1,以>开始的行属于文件2。 \ No newline at end of file +注意:以上说明指定了两个文件中不同处的行号及其相应的操作。在输出形式中,每一行后面将跟随受到影响的若干行。其中,以<开始的行属于文件1,以>开始的行属于文件2。 + + + \ No newline at end of file diff --git a/command/diffstat.md b/command/diffstat.md index 0e89e8bff4..5bb6d4391e 100644 --- a/command/diffstat.md +++ b/command/diffstat.md @@ -5,7 +5,7 @@ diffstat ## 补充说明 -**diffstat命** 用来显示diff命令输出信息的柱状图,用以显示diff命令比较两个文件的不同统计信息。用户也可以直接使用`|`将diff命令所输出的结果直接送给diffstat命令进行统计结果的显示。使用该命令时,若所比较的文件或者子目录不在当前目录下,则应该使用其完整路径。 +**diffstat命令** 用来显示diff命令输出信息的柱状图,用以显示diff命令比较两个文件的不同统计信息。用户也可以直接使用`|`将diff命令所输出的结果直接送给diffstat命令进行统计结果的显示。使用该命令时,若所比较的文件或者子目录不在当前目录下,则应该使用其完整路径。 ### 语法 @@ -62,4 +62,7 @@ mno ``` testfile | 2 +- #统计信息输出显示 1 file changed, 1 insertion(+), 1 deletion(-) -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/dircolors.md b/command/dircolors.md index 276425f6c6..e5acf11838 100644 --- a/command/dircolors.md +++ b/command/dircolors.md @@ -5,7 +5,7 @@ dircolors ## 补充说明 -**dircolors命** 设置ls命令在显示目录或文件时所用的色彩。dircolors可根据[色彩配置文件]来设置LS_COLORS环境变量或是显示设置LS_COLORS环境变量的命令。 +**dircolors命令** 设置ls命令在显示目录或文件时所用的色彩。dircolors可根据[色彩配置文件]来设置LS_COLORS环境变量或是显示设置LS_COLORS环境变量的命令。 ### 语法 @@ -139,4 +139,7 @@ exec 01;32 .mpc 01;35 .ogg 01;35 .wav 01;35 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/dirs.md b/command/dirs.md index 8ae9ecbfe2..14d9e1cfe5 100644 --- a/command/dirs.md +++ b/command/dirs.md @@ -5,7 +5,7 @@ dirs ## 补充说明 -**dirs命** 显示当前目录栈中的所有记录(不带参数的dirs命令显示当前目录栈中的记录)。dirs始终显示当然目录, 再是堆栈中的内容;即使目录堆栈为空, dirs命令仍然只显示当然目录。 +**dirs命令** 显示当前目录栈中的所有记录(不带参数的dirs命令显示当前目录栈中的记录)。dirs始终显示当然目录, 再是堆栈中的内容;即使目录堆栈为空, dirs命令仍然只显示当然目录。 ### 语法 @@ -34,4 +34,7 @@ dirs(选项)(参数) ``` [root@localhost etc]# dirs /etc -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/dmesg.md b/command/dmesg.md index d5ac3922e1..1395c1b3f6 100644 --- a/command/dmesg.md +++ b/command/dmesg.md @@ -5,7 +5,7 @@ dmesg ## 补充说明 -**dmesg命** 被用于检查和控制内核的环形缓冲区。kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息保存在`/var/log/dmesg`文件里。 +**dmesg命令** 被用于检查和控制内核的环形缓冲区。kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息保存在`/var/log/dmesg`文件里。 ### 语法 @@ -35,4 +35,7 @@ BIOS-provided physical RAM map: BIOS-e820: 000000007f5e3000 - 000000007f5f0000 (ACPI data) BIOS-e820: 000000007f5f0000 - 000000007f600000 (reserved) BIOS-e820: 00000000e0000000 - 00000000e8000000 (reserved) -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/du.md b/command/du.md index f0267996b2..494c18d09e 100644 --- a/command/du.md +++ b/command/du.md @@ -5,7 +5,7 @@ du ## 补充说明 -**du命** 也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。 +**du命令** 也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。 ### 语法 @@ -96,4 +96,7 @@ root@localhost test.gz log31.tar.gz root@localhost test .. [root@localhost soft]# du -s test 1288 test -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/dump.md b/command/dump.md index 6720f69157..5c8264b4f9 100644 --- a/command/dump.md +++ b/command/dump.md @@ -5,7 +5,7 @@ dump ## 补充说明 -**dump命** 用于备份ext2或者ext3文件系统。可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。 +**dump命令** 用于备份ext2或者ext3文件系统。可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。 ### 语法 @@ -49,4 +49,7 @@ dump(选项)(参数) dump -1u -f /tmp/homeback.bak /home ``` -通过dump命令的备份层级,可实现完整+增量备份、完整+差异备份,在配合crontab可以实现无人值守备份。 \ No newline at end of file +通过dump命令的备份层级,可实现完整+增量备份、完整+差异备份,在配合crontab可以实现无人值守备份。 + + + \ No newline at end of file diff --git a/command/e2fsck.md b/command/e2fsck.md index 0e2351bfe8..242d8faffc 100644 --- a/command/e2fsck.md +++ b/command/e2fsck.md @@ -5,7 +5,7 @@ e2fsck ## 补充说明 -**e2fsck命** 用于检查第二扩展文件系统的完整性,通过适当的选项可以尝试修复出现的错误。 +**e2fsck命令** 用于检查第二扩展文件系统的完整性,通过适当的选项可以尝试修复出现的错误。 e2fsck执行后的传回值及代表意义如下: @@ -59,4 +59,7 @@ e2fsck(选项)(参数) e2fsck -a -y /dev/sda1 ``` -执行e2fsck或fsck前请先umount partition,否则有机会令档案系统毁损。如果需要对根目录`/`进行检查及修复,便需要进入singal user mode执行。 \ No newline at end of file +执行e2fsck或fsck前请先umount partition,否则有机会令档案系统毁损。如果需要对根目录`/`进行检查及修复,便需要进入singal user mode执行。 + + + \ No newline at end of file diff --git a/command/ed.md b/command/ed.md index 768b238068..39526b43b1 100644 --- a/command/ed.md +++ b/command/ed.md @@ -5,7 +5,7 @@ ed ## 补充说明 -**ed命** 是单行纯文本编辑器,它有命令模式(command mode)和输入模式(input mode)两种工作模式。ed命令支持多个内置命令,常见内置命令如下: +**ed命令** 是单行纯文本编辑器,它有命令模式(command mode)和输入模式(input mode)两种工作模式。ed命令支持多个内置命令,常见内置命令如下: ``` A:切换到输入模式,在文件的最后一行之后输入新的内容; @@ -35,4 +35,7 @@ ed(选项)(参数) ### 参数 -文件:待编辑的文件。 \ No newline at end of file +文件:待编辑的文件。 + + + \ No newline at end of file diff --git a/command/edquota.md b/command/edquota.md index d861d9368b..7a95dbe423 100644 --- a/command/edquota.md +++ b/command/edquota.md @@ -5,7 +5,7 @@ edquota ## 补充说明 -**edquota命** 用于编辑指定用户或工作组磁盘配额。edquota预设会使用vi来编辑使用者或群组的quota设置。 +**edquota命令** 用于编辑指定用户或工作组磁盘配额。edquota预设会使用vi来编辑使用者或群组的quota设置。 ### 语法 @@ -28,7 +28,7 @@ edquota(选项)(参数) ### 实例 -**配置系统的磁盘配额支持** + **配置系统的磁盘配额支持** 首先,磁盘配额是区域性的,我们可以决定哪块分区进行磁盘配额,哪块分区不用(自然也就不用配置了)。一般而言,作为一台web虚拟主机服务器,`/home`和`/www`(或者类似的)是供用户存放资源的分区,所以可以对这两个分区进行磁盘配额。假定我们需要对`/home`分区实现用户级的限制,而对`/www`进行每个组的用户配额。 @@ -88,14 +88,14 @@ example:quotacheck / ; quotacheck /home 再执行就ok了,重启动系统,如果一切正常的话,quota将开始正常工作。 -**设置用户和组配额的分配量** + **设置用户和组配额的分配量** 对磁盘配额的限制一般是从一个用户占用磁盘大小和所有文件的数量两个方面来进行的。在具体操作之前,我们先了解一下磁盘配额的两个基本概念:软限制和硬限制。 * 软限制:一个用户在文件系统可拥有的最大磁盘空间和最多文件数量,在某个宽限期内可以暂时超过这个限制。 * 硬限制:一个用户可拥有的磁盘空间或文件的绝对数量,绝对不允许超过这个限制。 -**通过edquota直接编辑数据文件:** + **通过edquota直接编辑数据文件:** 使用编辑配额命令edquota为用户配置定额,在重新启动系统之后,我们假设lanf是需要定额的系统帐户,可以使用如下命令来为用户分配磁盘配额: @@ -162,7 +162,7 @@ Grace period before enforcing soft limits for users: /dev/sda5:block grace period:2 days,file grace period:6 hours ``` -**通过setquota工具加入:** + **通过setquota工具加入:** 比如加入用户bye2000的磁盘配额,执行以下命令: @@ -176,7 +176,7 @@ setquota –u / 2000 2500 100 110 bye2000 setquota [ -u|-g ] 装载点 软块数 硬块数 软文件数 硬文件数 用户名/组名 ``` -**查看用户磁盘使用情况** + **查看用户磁盘使用情况** 要查明某一个用户使用了多少磁盘空间,例如lanf,可以使用如下的命令: @@ -197,4 +197,7 @@ Filesystem blocks quota limit grace file quota limit grace 注意: 1. 如果该用户没有配置磁盘限额的话,输出显示`Disk quotas for user hujm (uid 503): none` -2. 如果不带任何参数运行quota的话,查看的是你自己的配额使用情况。 \ No newline at end of file +2. 如果不带任何参数运行quota的话,查看的是你自己的配额使用情况。 + + + \ No newline at end of file diff --git a/command/egrep.md b/command/egrep.md index b5439f895a..84b3bf1898 100644 --- a/command/egrep.md +++ b/command/egrep.md @@ -5,7 +5,7 @@ egrep ## 补充说明 -**egrep命** 用于在文件内查找指定的字符串。egrep执行效果与`grep -E`相似,使用的语法及参数可参照grep指令,与grep的不同点在于解读字符串的方法。egrep是用extended regular expression语法来解读的,而grep则用basic regular expression 语法解读,extended regular expression比basic regular expression的表达更规范。 +**egrep命令** 用于在文件内查找指定的字符串。egrep执行效果与`grep -E`相似,使用的语法及参数可参照grep指令,与grep的不同点在于解读字符串的方法。egrep是用extended regular expression语法来解读的,而grep则用basic regular expression 语法解读,extended regular expression比basic regular expression的表达更规范。 ### 语法 @@ -38,4 +38,7 @@ testfile1:This a Linux testfile! #以下两行为 testfile_2 中包含Linux字符的行 testfile_2:Linux is a free unix-type opterating system testfile_2:Linux test -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/eject.md b/command/eject.md index f7bbfb4efb..2bf4b3cda9 100644 --- a/command/eject.md +++ b/command/eject.md @@ -5,7 +5,7 @@ eject ## 补充说明 -**eject命** 用来退出抽取式设备。若设备已挂入,则eject命令会先将该设备卸除再退出。 +**eject命令** 用来退出抽取式设备。若设备已挂入,则eject命令会先将该设备卸除再退出。 eject允许可移动介质(典型是cd-ROM、软盘、磁带、或者JAZ以及zip磁盘)在软件控制下弹出。该命令也可以控制一些多盘片CD-ROM控制器,控制一些设备支持的自动弹出功能,以及控制一些CD-ROM驱动器磁盘托盘的关闭。与name相应的设备将被弹出,name可以为设备文件或者其挂载点,也可以为完整路径或者省略前面的/dev或者/mnt设备文件名。如果没有指定name,缺省使用cdrom。 @@ -35,4 +35,7 @@ eject(选项)(参数) ### 参数 -设备名:指定弹出的设备名称。 \ No newline at end of file +设备名:指定弹出的设备名称。 + + + \ No newline at end of file diff --git a/command/elm.md b/command/elm.md index 7b4f3df2c4..c3bd8aa9c9 100644 --- a/command/elm.md +++ b/command/elm.md @@ -5,7 +5,7 @@ elm ## 补充说明 -**elm命** 是一个E-mail客户端管理程序,它提供了纯文本交互式全屏幕界面。 +**elm命令** 是一个E-mail客户端管理程序,它提供了纯文本交互式全屏幕界面。 ### 语法 @@ -23,4 +23,7 @@ elm(选项) -m:进入elm后,不显示指令说明; -v:显示elm的版本信息; -z:若收件信箱没有邮件,则不启动elm程序。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/enable.md b/command/enable.md index b5f425ec64..93d032c5d4 100644 --- a/command/enable.md +++ b/command/enable.md @@ -5,7 +5,7 @@ enable ## 补充说明 -**enable命** 用于临时关闭或者激活指定的shell内部命令。若要执行的文件名称与shell内建命令相同,可用`enable -n`来关闭shell内建命令。若不加`-n`选项,enable可重新启动关闭的命令。 +**enable命令** 用于临时关闭或者激活指定的shell内部命令。若要执行的文件名称与shell内建命令相同,可用`enable -n`来关闭shell内建命令。若不加`-n`选项,enable可重新启动关闭的命令。 linux shell命令执行时,shell总是先在自己的shell builtin中查找该命令,如果找到则执行该命令;如果找不到该命令,则会从环境变量$PATH指定的路径中依次去查找待执行的命令。因为了解了这一点,所以看起来好像没有办法编写用户自己的命令来替代shell builtin命令。幸运的是,有了enable命令我们就能做到了。 @@ -91,4 +91,7 @@ enable umask enable unalias enable unset enable wait -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/ex.md b/command/ex.md index 3a79f593f0..acbceb53b2 100644 --- a/command/ex.md +++ b/command/ex.md @@ -5,7 +5,7 @@ ex ## 补充说明 -在**ex**模式下启动vim文本编辑器。ex执行效果如同`vi -E`,适用于法及参数可参照vi指令,如要从Ex模式回到普通模式,则在vim中输入`:vi`或`:visual`即可。 +在 **ex** 模式下启动vim文本编辑器。ex执行效果如同`vi -E`,适用于法及参数可参照vi指令,如要从Ex模式回到普通模式,则在vim中输入`:vi`或`:visual`即可。 ### 语法 @@ -15,4 +15,7 @@ ex(参数) ### 参数 -文件:指定待编辑的文件。 \ No newline at end of file +文件:指定待编辑的文件。 + + + \ No newline at end of file diff --git a/command/exit.md b/command/exit.md index f6a76fafe5..e6d7f1d3d9 100644 --- a/command/exit.md +++ b/command/exit.md @@ -5,7 +5,7 @@ exit ## 补充说明 -**exit命** 同于退出shell,并返回给定值。在shell脚本中可以终止当前脚本执行。执行exit可使shell以指定的状态值退出。若不设置状态值参数,则shell以预设值退出。状态值0代表执行成功,其他值代表执行失败。 +**exit命令** 同于退出shell,并返回给定值。在shell脚本中可以终止当前脚本执行。执行exit可使shell以指定的状态值退出。若不设置状态值参数,则shell以预设值退出。状态值0代表执行成功,其他值代表执行失败。 ### 语法 @@ -55,4 +55,7 @@ EXCODE=$? if [ "$EXCODE" == "0" ]; then echo "O.K" fi -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/export.md b/command/export.md index 87f9a49635..b19ab335d1 100644 --- a/command/export.md +++ b/command/export.md @@ -5,7 +5,7 @@ export ## 补充说明 -**export命** 用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。 +**export命令** 用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。 一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执 行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export命令可以用于传递一个或多个变量的值到任何后继脚本。 @@ -53,4 +53,7 @@ declare -x SSH_CONNECTION="192.168.2.111 2705 192.168.2.2 22" declare -x SSH_TTY="/dev/pts/0" declare -x TERM="linux" declare -x USER="root" -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/fdisk.md b/command/fdisk.md index 9d305884ae..418303c7bb 100644 --- a/command/fdisk.md +++ b/command/fdisk.md @@ -5,7 +5,7 @@ fdisk ## 补充说明 -**fdisk命** 用于观察硬盘实体使用情况,也可对硬盘分区。它采用传统的问答式界面,而非类似DOS fdisk的cfdisk互动式操作界面,因此在使用上较为不便,但功能却丝毫不打折扣。 +**fdisk命令** 用于观察硬盘实体使用情况,也可对硬盘分区。它采用传统的问答式界面,而非类似DOS fdisk的cfdisk互动式操作界面,因此在使用上较为不便,但功能却丝毫不打折扣。 ### 语法 @@ -312,4 +312,7 @@ proc /proc proc defaults 0 0 /dev/VolGroup00/LogVol01 swap swap defaults 0 0 /dev/sdb1 /oracle ext2 defaults 0 0 /dev/sdb6 /web ext3 defaults 0 0 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/fgrep.md b/command/fgrep.md index 4a95a3bcbb..329187e61e 100644 --- a/command/fgrep.md +++ b/command/fgrep.md @@ -5,7 +5,7 @@ fgrep ## 补充说明 -**fgrep命** 是用来搜索 file 参数指定的输入文件(缺省为标准输入)中的匹配模式的行。fgrep 命令特别搜索 Pattern 参数,它们是固定的字符串。如果在 File 参数中指定一个以上的文件 fgrep 命令将显示包含匹配行的文件。 +**fgrep命令** 是用来搜索 file 参数指定的输入文件(缺省为标准输入)中的匹配模式的行。fgrep 命令特别搜索 Pattern 参数,它们是固定的字符串。如果在 File 参数中指定一个以上的文件 fgrep 命令将显示包含匹配行的文件。 fgrep 命令于 grep 和 egrep 命令不同,因为它搜索字符串而不是搜索匹配表达式的模式。fgrep 命令使用快速的压缩算法。`$, *, [, |, (, )`和`\`等字符串被 fgrep 命令按字面意思解释。这些字符并不解释为正则表达式,但它们在 grep 和 egrep 命令中解释为正则表达式。因为这些字符对于 shell 有特定的含义,完整的字符串应该加上单引号`‘ ... ’`。. 如果没有指定文件, fgrep 命令假定标准输入。一般,找到的每行都复制到标准输出中去。如果不止一个输入文件,则在找到的每行前打印文件名。 @@ -53,7 +53,7 @@ n:将文件中每行的相对行号置于行前。 ### 实例 -**搜索几个文件中的一个简单字符串:** + **搜索几个文件中的一个简单字符串:** ``` fgrep strcpy *.c @@ -61,7 +61,7 @@ fgrep strcpy *.c 在当前目录下所有以 .c 字符串结尾的文件中搜索字符串 strcpy。 -**计数匹配某模式的行数:** + **计数匹配某模式的行数:** ``` fgrep -c 『{』pgm.cfgrep -c 『}』pgm.c @@ -75,10 +75,13 @@ fgrep -c 『{』pgm.cfgrep -c 『}』pgm.c egrep {\|} pgm.c ``` -**显示包含某模式的文件名:** + **显示包含某模式的文件名:** ``` fgrep -l strcpy *.c ``` -搜索当前目录下以 .c 结尾的文件,然后显示包含 strcpy 字符串的文件名。 \ No newline at end of file +搜索当前目录下以 .c 结尾的文件,然后显示包含 strcpy 字符串的文件名。 + + + \ No newline at end of file diff --git a/command/file.md b/command/file.md index fa40d17266..f567cdd1a5 100644 --- a/command/file.md +++ b/command/file.md @@ -5,7 +5,7 @@ file ## 补充说明 -**file命** 用来探测给定文件的类型。file命令对文件的检查分为文件系统、魔法幻数检查和语言检查3个过程。 +**file命令** 用来探测给定文件的类型。file命令对文件的检查分为文件系统、魔法幻数检查和语言检查3个过程。 ### 语法 @@ -66,4 +66,7 @@ lrwxrwxrwx 1 root root 10 08-13 00:11 /var/mail -> spool/mail [root@localhost ~]# file -L /var/spool/mail /var/spool/mail: directory -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/find.md b/command/find.md index dcbd3a25b7..e9d4f068da 100644 --- a/command/find.md +++ b/command/find.md @@ -5,31 +5,7 @@ find ## 补充说明 -
- -
本文索引
- -[隐藏)] - -* 语法 -* 选项 -* 参数 -* 实例 - * 根据文件或者正则表达式进行匹配 - * 否定参数 - * 根据文件类型进行搜索 - * 基于目录深度搜索 - * 根据文件时间戳进行搜索 - * 根据文件大小进行匹配 - * 删除匹配文件 - * 根据文件权限/所有权进行匹配 - * 借助-exec选项与其他命令结合使用 - * 搜索但跳出指定的目录 - * find其他技巧收集 - -
- -**find命令**用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。 +**find命令** 用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。 ### 语法 @@ -167,13 +143,13 @@ find . -type 类型参数 类型参数列表: -* **f** 普通文件 -* **l** 符号连接 -* **d** 目录 -* **c** 字符设备 -* **b** 块设备 -* **s** 套接字 -* **p** Fifo +* **f** 普通文件 +* **l** 符号连接 +* **d** 目录 +* **c** 字符设备 +* **b** 块设备 +* **s** 套接字 +* **p** Fifo #### 基于目录深度搜索 @@ -197,9 +173,9 @@ find . -type f 时间戳 UNIX/Linux文件系统每个文件都有三种时间戳: -* **访问时间**(-atime/天,-amin/分钟):用户最近一次访问时间。 -* **修改时间**(-mtime/天,-mmin/分钟):文件最后一次修改时间。 -* **变化时间**(-ctime/天,-cmin/分钟):文件数据元(例如权限等)最后一次修改时间。 +* **访问时间** (-atime/天,-amin/分钟):用户最近一次访问时间。 +* **修改时间** (-mtime/天,-mmin/分钟):文件最后一次修改时间。 +* **变化时间** (-ctime/天,-cmin/分钟):文件数据元(例如权限等)最后一次修改时间。 搜索最近七天内被访问过的所有文件 @@ -239,12 +215,12 @@ find . -type f -size 文件大小单元 文件大小单元: -* **b** —— 块(512字节) -* **c** —— 字节 -* **w** —— 字(2字节) -* **k** —— 千字节 -* **M** —— 兆字节 -* **G** —— 吉字节 +* **b** —— 块(512字节) +* **c** —— 字节 +* **w** —— 字(2字节) +* **k** —— 千字节 +* **M** —— 兆字节 +* **G** —— 吉字节 搜索大于10KB的文件 @@ -306,7 +282,7 @@ find . -type f -group sunk find .-type f -user root -exec chown tom {} \; ``` -上例中,**{}** 用于与**-exec**选项结合使用来匹配所有文件,然后会被替换为相应的文件名。 +上例中, **{}** 用于与 **-exec** 选项结合使用来匹配所有文件,然后会被替换为相应的文件名。 找出自己家目录下所有的.txt文件并删除 @@ -314,7 +290,7 @@ find .-type f -user root -exec chown tom {} \; find $HOME/. -name "*.txt" -ok rm {} \; ``` -上例中,**-ok**和**-exec**行为一样,不过它会给出提示,是否执行相应的操作。 +上例中, **-ok** 和 **-exec** 行为一样,不过它会给出提示,是否执行相应的操作。 查找当前目录下所有.txt文件并把他们拼接起来写入到all.txt文件中 @@ -354,4 +330,7 @@ find . -path "./sk" -prune -o -name "*.txt" -print ``` find . -empty -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/finger.md b/command/finger.md index 192aed3a8e..4e961b3158 100644 --- a/command/finger.md +++ b/command/finger.md @@ -5,7 +5,7 @@ finger ## 补充说明 -**finger命** 用于查找并显示用户信息。包括本地与远端主机的用户皆可,帐号名称没有大小写的差别。单独执行finger指令,它会显示本地主机现在所有的用户的登陆信息,包括帐号名称,真实姓名,登入终端机,闲置时间,登入时间以及地址和电话。 +**finger命令** 用于查找并显示用户信息。包括本地与远端主机的用户皆可,帐号名称没有大小写的差别。单独执行finger指令,它会显示本地主机现在所有的用户的登陆信息,包括帐号名称,真实姓名,登入终端机,闲置时间,登入时间以及地址和电话。 ### 语法 @@ -40,4 +40,7 @@ root root pts/0 1 Dec 18 13 root root *pts/1 Dec 18 13 ``` -如果要查询远程机上的用户信息,需要在用户名后面接`@主机名`,采用`用户名@主机名`的格式,不过要查询的网络主机需要运行finger守护进程的支持。 \ No newline at end of file +如果要查询远程机上的用户信息,需要在用户名后面接`@主机名`,采用`用户名@主机名`的格式,不过要查询的网络主机需要运行finger守护进程的支持。 + + + \ No newline at end of file diff --git a/command/fmt.md b/command/fmt.md index 67e9d4fafc..fb075eabf1 100644 --- a/command/fmt.md +++ b/command/fmt.md @@ -5,7 +5,7 @@ fmt ## 补充说明 -**fmt命** 读取文件的内容,根据选项的设置对文件格式进行简单的优化处理,并将结果送到标准输出设备。 +**fmt命令** 读取文件的内容,根据选项的设置对文件格式进行简单的优化处理,并将结果送到标准输出设备。 ### 语法 @@ -26,4 +26,7 @@ fmt(选项)(参数) ### 参数 -指定要优化格式的文件。 \ No newline at end of file +指定要优化格式的文件。 + + + \ No newline at end of file diff --git a/command/fold.md b/command/fold.md index 33e5789748..f434da9557 100644 --- a/command/fold.md +++ b/command/fold.md @@ -5,7 +5,7 @@ fold ## 补充说明 -**fold命** 用于控制文件内容输出时所占用的屏幕宽度。fold命令会从指定的文件里读取内容,将超过限定列宽的列加入增列字符后,输出到标准输出设备。若不指定任何文件名称,或是所给予的文件名为“-”,则fold指令会从标准输入设备读取数据。 +**fold命令** 用于控制文件内容输出时所占用的屏幕宽度。fold命令会从指定的文件里读取内容,将超过限定列宽的列加入增列字符后,输出到标准输出设备。若不指定任何文件名称,或是所给予的文件名为“-”,则fold指令会从标准输入设备读取数据。 ### 语法 @@ -23,4 +23,7 @@ fold(选项)(参数) ### 参数 -文件:指定要显示内容的文件。 \ No newline at end of file +文件:指定要显示内容的文件。 + + + \ No newline at end of file diff --git a/command/free.md b/command/free.md index b123b56d0c..1d0814a227 100644 --- a/command/free.md +++ b/command/free.md @@ -5,7 +5,7 @@ free ## 补充说明 -**free命** 可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。 +**free命令** 可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区。 ### 语法 @@ -35,7 +35,7 @@ Mem: 2016 1973 42 0 163 1497 Swap: 4094 0 4094 ``` -**第一部分Mem行解释:** + **第一部分Mem行解释:** ``` total:内存总数; @@ -48,7 +48,7 @@ cached Page:缓存内存数。 关系:total = used + free -**第二部分(-/+ buffers/cache)解释:** + **第二部分(-/+ buffers/cache)解释:** ``` (-buffers/cache) used内存数:第一部分Mem行中的 used – buffers – cached @@ -57,4 +57,7 @@ cached Page:缓存内存数。 可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。 -第三部分是指交换分区。 \ No newline at end of file +第三部分是指交换分区。 + + + \ No newline at end of file diff --git a/command/fsck.md b/command/fsck.md index 1148cdfea5..e7d62b7fc4 100644 --- a/command/fsck.md +++ b/command/fsck.md @@ -5,7 +5,7 @@ fsck ## 补充说明 -**fsck命** 被用于检查并且试图修复文件系统中的错误。当文件系统发生错误四化,可用fsck指令尝试加以修复。 +**fsck命令** 被用于检查并且试图修复文件系统中的错误。当文件系统发生错误四化,可用fsck指令尝试加以修复。 ### 语法 @@ -50,4 +50,7 @@ fsck 在随后的多个确认对话框中输入`:y` -结束后同样使用reboot命令重启系统这样就好了! \ No newline at end of file +结束后同样使用reboot命令重启系统这样就好了! + + + \ No newline at end of file diff --git a/command/ftp.md b/command/ftp.md index 45134fbbb1..1ba39fdf2b 100644 --- a/command/ftp.md +++ b/command/ftp.md @@ -5,7 +5,7 @@ ftp ## 补充说明 -**ftp命** 用来设置文件系统相关功能。ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里详细介绍Linux ftp命令的一些经常使用的命令,相信掌握了这些使用Linux进行ftp操作将会非常容易。 +**ftp命令** 用来设置文件系统相关功能。ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里详细介绍Linux ftp命令的一些经常使用的命令,相信掌握了这些使用Linux进行ftp操作将会非常容易。 ### 语法 @@ -64,4 +64,7 @@ FTP>system: 显示远端主机系统类型. FTP>user user-name [password] [account] 重新以别的用户名登录远端主机. FTP>? [command]: 同HELP. [command]指定需要帮助的命令名称。如果没有指定 command,ftp 将显示全部命令的列表。 FTP>! 从 ftp 子系统退出到外壳。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/ftpcount.md b/command/ftpcount.md index f143e054df..9848ebcd54 100644 --- a/command/ftpcount.md +++ b/command/ftpcount.md @@ -11,4 +11,7 @@ ftpcount ``` ftpcount -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/ftpshut.md b/command/ftpshut.md index f634fe421d..c69301d2f2 100644 --- a/command/ftpshut.md +++ b/command/ftpshut.md @@ -18,4 +18,7 @@ ftpshut [-d<分钟>][-l<分钟>][关闭时间]["警告信息"] ``` -d<分钟> 切断所有FTP连线时间。 -l<分钟> 停止接受FTP登入的时间。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/ftpwho.md b/command/ftpwho.md index c5a5fc614d..ba3d69b7dc 100644 --- a/command/ftpwho.md +++ b/command/ftpwho.md @@ -5,7 +5,7 @@ ftpwho ## 补充说明 -**ftpwho命** ftp服务器套件proftpd的工作指令,用于显示当前每个ftp会话信息。 +**ftpwho命令** ftp服务器套件proftpd的工作指令,用于显示当前每个ftp会话信息。 ### 语法 @@ -18,4 +18,7 @@ ftpwho(选项) ``` -h:显示帮助信息; -v:详细模式,输出更多信息。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/grep.md b/command/grep.md index 84a2a9ebd2..2d562bb941 100644 --- a/command/grep.md +++ b/command/grep.md @@ -5,41 +5,41 @@ grep ## 补充说明 -**gre** (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 +**grep** (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 ### 选项 ``` -**-a** 不要忽略二进制数据。 -**-A**<显示列数> 除了显示符合范本样式的那一行之外,并显示该行之后的内容。 -**-b** 在显示符合范本样式的那一行之外,并显示该行之前的内容。 -**-c** 计算符合范本样式的列数。 -**-C<显示列数>或-<显示列数>** 除了显示符合范本样式的那一列之外,并显示该列之前后的内容。 -**-d<进行动作>** 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep命令将回报信息并停止动作。 -**-e<范本样式>** 指定字符串作为查找文件内容的范本样式。 -**-E** 将范本样式为延伸的普通表示法来使用,意味着使用能使用扩展正则表达式。 -**-f<范本文件>** 指定范本文件,其内容有一个或多个范本样式,让grep查找符合范本条件的文件内容,格式为每一列的范本样式。 -**-F** 将范本样式视为固定字符串的列表。 -**-G** 将范本样式视为普通的表示法来使用。 -**-h** 在显示符合范本样式的那一列之前,不标示该列所属的文件名称。 -**-H** 在显示符合范本样式的那一列之前,标示该列的文件名称。 -**-i** 胡列字符大小写的差别。 -**-l** 列出文件内容符合指定的范本样式的文件名称。 -**-L** 列出文件内容不符合指定的范本样式的文件名称。 -**-n** 在显示符合范本样式的那一列之前,标示出该列的编号。 -**-q** 不显示任何信息。 -**-R/-r** 此参数的效果和指定“-d recurse”参数相同。 -**-s** 不显示错误信息。 -**-v** 反转查找。 -**-w** 只显示全字符合的列。 -**-x** 只显示全列符合的列。 -**-y** 此参数效果跟“-i”相同。 -**-o** 只输出文件中匹配到的部分。 + **-a** 不要忽略二进制数据。 + **-A** <显示列数> 除了显示符合范本样式的那一行之外,并显示该行之后的内容。 + **-b** 在显示符合范本样式的那一行之外,并显示该行之前的内容。 + **-c** 计算符合范本样式的列数。 + **-C<显示列数>或-<显示列数>** 除了显示符合范本样式的那一列之外,并显示该列之前后的内容。 + **-d<进行动作>** 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep命令将回报信息并停止动作。 + **-e<范本样式>** 指定字符串作为查找文件内容的范本样式。 + **-E** 将范本样式为延伸的普通表示法来使用,意味着使用能使用扩展正则表达式。 + **-f<范本文件>** 指定范本文件,其内容有一个或多个范本样式,让grep查找符合范本条件的文件内容,格式为每一列的范本样式。 + **-F** 将范本样式视为固定字符串的列表。 + **-G** 将范本样式视为普通的表示法来使用。 + **-h** 在显示符合范本样式的那一列之前,不标示该列所属的文件名称。 + **-H** 在显示符合范本样式的那一列之前,标示该列的文件名称。 + **-i** 胡列字符大小写的差别。 + **-l** 列出文件内容符合指定的范本样式的文件名称。 + **-L** 列出文件内容不符合指定的范本样式的文件名称。 + **-n** 在显示符合范本样式的那一列之前,标示出该列的编号。 + **-q** 不显示任何信息。 + **-R/-r** 此参数的效果和指定“-d recurse”参数相同。 + **-s** 不显示错误信息。 + **-v** 反转查找。 + **-w** 只显示全字符合的列。 + **-x** 只显示全列符合的列。 + **-y** 此参数效果跟“-i”相同。 + **-o** 只输出文件中匹配到的部分。 ``` ## grep命令常见用法 -在文件中搜索一个单词,命令会返回一个包含**“match_pattern”**的文本行: +在文件中搜索一个单词,命令会返回一个包含 **“match_pattern”** 的文本行: ``` grep match_pattern file_name @@ -54,21 +54,21 @@ grep "match_pattern" file_1 file_2 file_3 ... ``` -输出除之外的所有行 **-v** 选项: +输出除之外的所有行 **-v** 选项: ``` grep -v "match_pattern" file_name ``` -标记匹配颜色 **--color=auto** 选项: +标记匹配颜色 **--color=auto** 选项: ``` grep "match_pattern" file_name --color=auto ``` -使用正则表达式 **-E** 选项: +使用正则表达式 **-E** 选项: ``` grep -E "[1-9]+" @@ -77,7 +77,7 @@ egrep "[1-9]+" ``` -只输出文件中匹配到的部分 **-o** 选项: +只输出文件中匹配到的部分 **-o** 选项: ``` echo this is a test line. | grep -o -E "[a-z]+\." @@ -88,14 +88,14 @@ line. ``` -统计文件或者文本中包含匹配字符串的行数 **-c** 选项: +统计文件或者文本中包含匹配字符串的行数 **-c** 选项: ``` grep -c "text" file_name ``` -输出包含匹配字符串的行数 **-n** 选项: +输出包含匹配字符串的行数 **-n** 选项: ``` grep "text" -n file_name @@ -113,7 +113,7 @@ grep "text" -n file_1 file_2 echo gun is not unix | grep -b -o "not" 7:not -#一行中字符串的字符便宜是从该行的第一个字符开始计算,起始值为0。选项 **-b -o** 一般总是配合使用。 +#一行中字符串的字符便宜是从该行的第一个字符开始计算,起始值为0。选项 **-b -o** 一般总是配合使用。 ``` @@ -142,14 +142,14 @@ hello ``` -选项 **-e** 制动多个匹配样式: +选项 **-e** 制动多个匹配样式: ``` echo this is a text line | grep -e "is" -e "line" -o is line -#也可以使用**-f**选项来匹配多个样式,在样式文件中逐行写出需要匹配的字符。 +#也可以使用 **-f** 选项来匹配多个样式,在样式文件中逐行写出需要匹配的字符。 cat patfile aaa bbb @@ -229,4 +229,7 @@ b -- a b -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/groupdel.md b/command/groupdel.md index 99148ce341..081c1b1491 100644 --- a/command/groupdel.md +++ b/command/groupdel.md @@ -5,7 +5,7 @@ groupdel ## 补充说明 -**groupdel命** 用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。 +**groupdel命令** 用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。 ### 语法 @@ -22,4 +22,7 @@ groupdel(参数) ``` groupadd damon //创建damon工作组 groupdel damon //删除这个工作组 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/groupmod.md b/command/groupmod.md index 20360c1da7..68141abaf1 100644 --- a/command/groupmod.md +++ b/command/groupmod.md @@ -5,7 +5,7 @@ groupmod ## 补充说明 -**groupmod命** 更改群组识别码或名称。需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。 +**groupmod命令** 更改群组识别码或名称。需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。 ### 语法 @@ -23,4 +23,7 @@ groupmod(选项)(参数) ### 参数 -组名:指定要修改的工作的组名。 \ No newline at end of file +组名:指定要修改的工作的组名。 + + + \ No newline at end of file diff --git a/command/grpconv.md b/command/grpconv.md index 8c22564749..4a44f60157 100644 --- a/command/grpconv.md +++ b/command/grpconv.md @@ -5,7 +5,7 @@ grpconv ## 补充说明 -**grpconv命** 用来开启群组的投影密码。Linux系统里的用户和群组密码,分别存放在`/etc`目录下的passwd和group文件中。因系统运作所需,任何人都得以读取它们,造成安全上的破绽。投影密码将文件内的密码改存在`/etc`目录下的shadow和gshadow文件内,只允许系统管理者读取,同时把原密码置换为"x"字符。投影密码的功能可随时开启或关闭,您只需执行grpconv指令就能开启群组投影密码。 +**grpconv命令** 用来开启群组的投影密码。Linux系统里的用户和群组密码,分别存放在`/etc`目录下的passwd和group文件中。因系统运作所需,任何人都得以读取它们,造成安全上的破绽。投影密码将文件内的密码改存在`/etc`目录下的shadow和gshadow文件内,只允许系统管理者读取,同时把原密码置换为"x"字符。投影密码的功能可随时开启或关闭,您只需执行grpconv指令就能开启群组投影密码。 ### 语法 @@ -34,4 +34,7 @@ cat /etc/gshadow | grep cdy cdy:123456:: //已经移到影子文件了 ``` -注:gshadow, shadow只有root权限才可以查看。 \ No newline at end of file +注:gshadow, shadow只有root权限才可以查看。 + + + \ No newline at end of file diff --git a/command/grpunconv.md b/command/grpunconv.md index b9c063da17..194277c956 100644 --- a/command/grpunconv.md +++ b/command/grpunconv.md @@ -5,7 +5,7 @@ grpunconv ## 补充说明 -**grpunconv命** 用来关闭群组的投影密码。它会把密码从gshadow文件内,回存到group文件里。 +**grpunconv命令** 用来关闭群组的投影密码。它会把密码从gshadow文件内,回存到group文件里。 ### 语法 @@ -34,4 +34,7 @@ cat: /etc/gshadow: 没有那个文件或目录 ``` cat /etc/group | grep cdy cdy:123456:1000: -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/gunzip.md b/command/gunzip.md index 7a1eeaa1f4..babd22fafe 100644 --- a/command/gunzip.md +++ b/command/gunzip.md @@ -5,7 +5,7 @@ gunzip ## 补充说明 -**gunzip命** 用来解压缩文件。gunzip是个使用广泛的解压缩程序,它用于解开被gzip压缩过的文件,这些压缩文件预设最后的扩展名为.gz。事实上gunzip就是gzip的硬连接,因此不论是压缩或解压缩,都可通过gzip指令单独完成。 +**gunzip命令** 用来解压缩文件。gunzip是个使用广泛的解压缩程序,它用于解开被gzip压缩过的文件,这些压缩文件预设最后的扩展名为.gz。事实上gunzip就是gzip的硬连接,因此不论是压缩或解压缩,都可通过gzip指令单独完成。 ### 语法 @@ -61,4 +61,7 @@ compressed uncompressed ratio uncompressed_name [root@mylinux ~]#gunzip /opt/etc.zip.gz ``` -通过上面的示例可以知道`gzip –d`等价于`gunzip`命令。 \ No newline at end of file +通过上面的示例可以知道`gzip –d`等价于`gunzip`命令。 + + + \ No newline at end of file diff --git a/command/gzexe.md b/command/gzexe.md index a26adc0d76..3c1b4614e5 100644 --- a/command/gzexe.md +++ b/command/gzexe.md @@ -5,7 +5,7 @@ gzexe ## 补充说明 -**gzexe命** 用来压缩可执行文件,压缩后的文件仍然为可执行文件,在执行时进行自动解压缩。当您去执行被压缩过的执行文件时,该文件会自动解压然后继续执行,和使用一般的执行文件相同。这个命令也可以看成是gunzip命令的一个扩展。 +**gzexe命令** 用来压缩可执行文件,压缩后的文件仍然为可执行文件,在执行时进行自动解压缩。当您去执行被压缩过的执行文件时,该文件会自动解压然后继续执行,和使用一般的执行文件相同。这个命令也可以看成是gunzip命令的一个扩展。 ### 语法 @@ -21,4 +21,7 @@ gzexe(选项)(参数) ### 参数 -文件:指定需要压缩的可执行文件。 \ No newline at end of file +文件:指定需要压缩的可执行文件。 + + + \ No newline at end of file diff --git a/command/gzip.md b/command/gzip.md index 021cde036f..cb677590f6 100644 --- a/command/gzip.md +++ b/command/gzip.md @@ -5,7 +5,7 @@ gzip ## 补充说明 -**gzip命** 用来压缩文件。gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”扩展名。 +**gzip命令** 用来压缩文件。gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”扩展名。 gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。 @@ -80,4 +80,7 @@ gzip -rv test6 ``` gzip -dr test6 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/halt.md b/command/halt.md index 35cc10e451..0ee783a21c 100644 --- a/command/halt.md +++ b/command/halt.md @@ -5,7 +5,7 @@ halt ## 补充说明 -**halt命** 用来关闭正在运行的Linux操作系统。halt命令会先检测系统的runlevel,若runlevel为0或6,则关闭系统,否则即调用shutdown来关闭系统。 +**halt命令** 用来关闭正在运行的Linux操作系统。halt命令会先检测系统的runlevel,若runlevel为0或6,则关闭系统,否则即调用shutdown来关闭系统。 ### 语法 @@ -29,4 +29,7 @@ halt(选项) ``` halt -p //关闭系统后关闭电源。 halt -d //关闭系统,但不留下纪录。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/hdparm.md b/command/hdparm.md index a6e3fe5329..36eda9e75c 100644 --- a/command/hdparm.md +++ b/command/hdparm.md @@ -5,7 +5,7 @@ hdparm ## 补充说明 -**hdparm命** 提供了一个命令行的接口用于读取和设置IDE或SCSI硬盘参数。 +**hdparm命令** 提供了一个命令行的接口用于读取和设置IDE或SCSI硬盘参数。 ### 语法 @@ -104,10 +104,13 @@ hdparm -m /dev/sda hdparm -m #参数值为整数值如8 /dev/sda ``` -**附:硬盘坏道修复方法** + **附:硬盘坏道修复方法** ``` 检查:smartctl -l selftest /dev/sda 卸载:umount /dev/sda* 修复:badblocks /dev/sda -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/hwclock.md b/command/hwclock.md index f1e67a7528..ac01e00aa6 100644 --- a/command/hwclock.md +++ b/command/hwclock.md @@ -5,7 +5,7 @@ hwclock ## 补充说明 -**hwclock命** 是一个硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可设置系统时间为硬件时钟的时间。 +**hwclock命令** 是一个硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可设置系统时间为硬件时钟的时间。 在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。 @@ -59,4 +59,7 @@ cat /etc/sysconfig/clock ZONE="America/Los_Angeles" UTC=false ARC=false -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/id.md b/command/id.md index 9d08e15edc..911710c8c9 100644 --- a/command/id.md +++ b/command/id.md @@ -5,7 +5,7 @@ id ## 补充说明 -**id命** 可以显示真实有效的用户ID(UID)和组ID(GID)。UID 是对一个用户的单一身份标识。组ID(GID)则对应多个UID。id命令已经默认预装在大多数Linux系统中。要使用它,只需要在你的控制台输入id。不带选项输入id会显示如下。结果会使用活跃用户。 +**id命令** 可以显示真实有效的用户ID(UID)和组ID(GID)。UID 是对一个用户的单一身份标识。组ID(GID)则对应多个UID。id命令已经默认预装在大多数Linux系统中。要使用它,只需要在你的控制台输入id。不带选项输入id会显示如下。结果会使用活跃用户。 当我们想知道某个用户的UID和GID时id命令是非常有用的。一些程序可能需要UID/GID来运行。id使我们更加容易地找出用户的UID以GID而不必在`/etc/group`文件中搜寻。如往常一样,你可以在控制台输入`man id`进入id的手册页来获取更多的详情。 @@ -72,4 +72,7 @@ uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10 ``` [root@localhost ~]# id www uid=500(www) gid=500(www) groups=500(www) -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/ifconfig.md b/command/ifconfig.md index 6b0012c93f..4b9bddd72f 100644 --- a/command/ifconfig.md +++ b/command/ifconfig.md @@ -5,7 +5,7 @@ ifconfig ## 补充说明 -**ifconfig命** 被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。 +**ifconfig命令** 被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。 ### 语法 @@ -38,7 +38,7 @@ IP地址:指定网络设备的IP地址; ### 实例 -**显示网络设备信息(激活状态的):** + **显示网络设备信息(激活状态的):** ``` [root@localhost ~]# ifconfig @@ -61,11 +61,11 @@ lo Link encap:Local Loopback 说明: -**eth0**表示第一块网卡,其中`HWaddr`表示网卡的物理地址,可以看到目前这个网卡的物理地址(MAC地址)是`00:16:3E:00:1E:51`。 + **eth0** 表示第一块网卡,其中`HWaddr`表示网卡的物理地址,可以看到目前这个网卡的物理地址(MAC地址)是`00:16:3E:00:1E:51`。 -**inet addr**用来表示网卡的IP地址,此网卡的IP地址是`10.160.7.81`,广播地址`Bcast:10.160.15.255`,掩码地址`Mask:255.255.240.0`。 + **inet addr** 用来表示网卡的IP地址,此网卡的IP地址是`10.160.7.81`,广播地址`Bcast:10.160.15.255`,掩码地址`Mask:255.255.240.0`。 -**lo**是表示主机的回坏地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 httpd服务器的指定到回坏地址,在浏览器输入127.0.0.1就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道。 + **lo** 是表示主机的回坏地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 httpd服务器的指定到回坏地址,在浏览器输入127.0.0.1就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道。 * 第一行:连接类型:Ethernet(以太网)HWaddr(硬件mac地址)。 * 第二行:网卡的IP地址、子网、掩码。 @@ -73,7 +73,7 @@ lo Link encap:Local Loopback * 第四、五行:接收、发送数据包情况统计。 * 第七行:接收、发送数据字节数统计信息。 -**启动关闭指定网卡:** + **启动关闭指定网卡:** ``` ifconfig eth0 up @@ -82,20 +82,20 @@ ifconfig eth0 down `ifconfig eth0 up`为启动网卡eth0,`ifconfig eth0 down`为关闭网卡eth0。ssh登陆linux服务器操作要小心,关闭了就不能开启了,除非你有多网卡。 -**为网卡配置和删除IPv6地址:** + **为网卡配置和删除IPv6地址:** ``` ifconfig eth0 add 33ffe:3240:800:1005::2/64 #为网卡eth0配置IPv6地址 ifconfig eth0 del 33ffe:3240:800:1005::2/64 #为网卡eth0删除IPv6地址 ``` -**用ifconfig修改MAC地址:** + **用ifconfig修改MAC地址:** ``` ifconfig eth0 hw ether 00:AA:BB:CC:dd:EE ``` -**配置IP地址:** + **配置IP地址:** ``` [root@localhost ~]# ifconfig eth0 192.168.2.10 @@ -103,15 +103,18 @@ ifconfig eth0 hw ether 00:AA:BB:CC:dd:EE [root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255 ``` -**启用和关闭arp协议:** + **启用和关闭arp协议:** ``` ifconfig eth0 arp #开启网卡eth0 的arp协议 ifconfig eth0 -arp #关闭网卡eth0 的arp协议 ``` -**设置最大传输单元:** + **设置最大传输单元:** ``` ifconfig eth0 mtu 1500 #设置能通过的最大数据包大小为 1500 bytes -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/indent.md b/command/indent.md index 32379fccce..df93f3f8cf 100644 --- a/command/indent.md +++ b/command/indent.md @@ -5,7 +5,7 @@ indent ## 补充说明 -**indent命** 可辨识C的原始代码文件,并加以格式化,以方便程序员阅读、修改等操作。 +**indent命令** 可辨识C的原始代码文件,并加以格式化,以方便程序员阅读、修改等操作。 ### 语法 @@ -81,4 +81,7 @@ indent(选项)(源文件)(-o 目标文件) indent -bs /home/rootlocal/桌面/test.c ``` -执行上面的命令后,用户可以打开指定的源文件查看在sizeof后面是否都添加了一个空格。由于该命令的参数非常多,所以用户可以根据实际需要选择适合的参数进行使用即可。 \ No newline at end of file +执行上面的命令后,用户可以打开指定的源文件查看在sizeof后面是否都添加了一个空格。由于该命令的参数非常多,所以用户可以根据实际需要选择适合的参数进行使用即可。 + + + \ No newline at end of file diff --git a/command/insmod.md b/command/insmod.md index ee7a6043e1..0424866745 100644 --- a/command/insmod.md +++ b/command/insmod.md @@ -5,7 +5,7 @@ insmod ## 补充说明 -**insmod命** 用于将给定的模块加载到内核中。Linux有许多功能是通过模块的方式,在需要时才载入kernel。如此可使kernel较为精简,进而提高效率,以及保有较大的弹性。这类可载入的模块,通常是设备驱动程序。 +**insmod命令** 用于将给定的模块加载到内核中。Linux有许多功能是通过模块的方式,在需要时才载入kernel。如此可使kernel较为精简,进而提高效率,以及保有较大的弹性。这类可载入的模块,通常是设备驱动程序。 ### 语法 @@ -43,4 +43,7 @@ root@localhost boot | grep raid1 raid1 25153 0 ``` -从以上显示结果可知,RAID1模块已加载成功。只是在使用insmod命令加载模块时,需要使用绝对路径方能加载,且加载时无法自动解决依赖关系。 \ No newline at end of file +从以上显示结果可知,RAID1模块已加载成功。只是在使用insmod命令加载模块时,需要使用绝对路径方能加载,且加载时无法自动解决依赖关系。 + + + \ No newline at end of file diff --git a/command/ispell.md b/command/ispell.md index 9af5112e77..eb40f6d27d 100644 --- a/command/ispell.md +++ b/command/ispell.md @@ -5,7 +5,7 @@ ispell ## 补充说明 -**ispell命** 用于检查文件中出现的拼写错误。 +**ispell命令** 用于检查文件中出现的拼写错误。 ### 语法 @@ -15,4 +15,7 @@ ispell(参数) ### 参数 -文件:指定要进行拼写检查的文件。 \ No newline at end of file +文件:指定要进行拼写检查的文件。 + + + \ No newline at end of file diff --git a/command/jed.md b/command/jed.md index aed2aecc65..c543bf181e 100644 --- a/command/jed.md +++ b/command/jed.md @@ -5,7 +5,7 @@ jed ## 补充说明 -**jed命** 是由Slang所开发,其主要用用途是编辑程序的源代码。它支持彩色语法加亮显示,可以模拟emacs,EDT,wordstar和Brief编辑器。 +**jed命令** 是由Slang所开发,其主要用用途是编辑程序的源代码。它支持彩色语法加亮显示,可以模拟emacs,EDT,wordstar和Brief编辑器。 ### 语法 @@ -37,7 +37,7 @@ jed(选项)(参数) jed -2 mysource.c ``` -**操作** + **操作** 有些Emacs的组合键和jed菜单组合键冲突例如Alt+f在Emacs中应该是“前进一个单词”,而在jed中则是“文件菜单” 想使用Emacs风格的组合键的话,编辑`/usr/share/jed/lib/menus.slc`找到如下段落: @@ -57,11 +57,14 @@ unset_setkey ("@\emy", "\ey"); 由于Jed可模拟多种编辑器,其各自按键指令也有所不同。这里以模拟 Emacs 为例,说明在编辑器中的操作方法。 -**文件** + **文件** ``` /usr/share/jed/lib/*.sl 这是默认的运行jed slang的文件。 /usr/share/jed/lib/site.sl 这是默认的启动文件。 /etc/jed.rc 这是全局系统配置文件。 ~/.jedrc 这是用户配置文件。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/joe.md b/command/joe.md index 91389b6819..0e2ce32b6e 100644 --- a/command/joe.md +++ b/command/joe.md @@ -5,7 +5,7 @@ joe ## 补充说明 -**joe命** 是一款功能强大的纯文本编辑器,拥有众多编写程序和文本的优良特性。 +**joe命令** 是一款功能强大的纯文本编辑器,拥有众多编写程序和文本的优良特性。 ### 语法 @@ -42,4 +42,7 @@ joe(选项)(参数) ### 参数 -文件:指定要编辑的文件。 \ No newline at end of file +文件:指定要编辑的文件。 + + + \ No newline at end of file diff --git a/command/join.md b/command/join.md index bb301d1092..70ceecb2bf 100644 --- a/command/join.md +++ b/command/join.md @@ -5,7 +5,7 @@ join ## 补充说明 -**join命** 用来将两个文件中,制定栏位内容相同的行连接起来。找出两个文件中,指定栏位内容相同的行,并加以合并,再输出到标准输出设备。 +**join命令** 用来将两个文件中,制定栏位内容相同的行连接起来。找出两个文件中,指定栏位内容相同的行,并加以合并,再输出到标准输出设备。 ### 语法 @@ -29,4 +29,7 @@ join(选项)(参数) ### 参数 * 文件1:要进行合并操作的第1个文件参数; -* 文件2:要进行合并操作的第2个文件参数。 \ No newline at end of file +* 文件2:要进行合并操作的第2个文件参数。 + + + \ No newline at end of file diff --git a/command/kill.md b/command/kill.md index 1f84e6ff6d..3c762b337f 100644 --- a/command/kill.md +++ b/command/kill.md @@ -5,7 +5,7 @@ kill ## 补充说明 -**kill命** 用来删除执行中的程序或工作。kill可将指定的信息送至程序。预设的信息为SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用SIGKILL(9)信息尝试强制删除程序。程序或工作的编号可利用ps指令或job指令查看。 +**kill命令** 用来删除执行中的程序或工作。kill可将指定的信息送至程序。预设的信息为SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用SIGKILL(9)信息尝试强制删除程序。程序或工作的编号可利用ps指令或job指令查看。 ### 语法 @@ -51,7 +51,7 @@ kill(选项)(参数) 63) SIGRTMAX-1 64) SIGRTMAX ``` -只有第9种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权利忽略,**下面是常用的信号:** +只有第9种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权利忽略, **下面是常用的信号:** ``` HUP 1 终端断线 @@ -73,4 +73,7 @@ root 3370 2822 0 16:21 pts/0 00:00:00 grep vim kill 3268 kill 3268 -bash: kill: (3268) - 没有那个进程 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/last.md b/command/last.md index 96d849b5aa..96e3a9e6ef 100644 --- a/command/last.md +++ b/command/last.md @@ -5,7 +5,7 @@ last ## 补充说明 -**last命** 用于显示用户最近登录信息。单独执行last命令,它会读取`/var/log/wtmp`的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。 +**last命令** 用于显示用户最近登录信息。单独执行last命令,它会读取`/var/log/wtmp`的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。 ### 语法 @@ -45,4 +45,7 @@ root pts/0 49.65.139.195 Wed Dec 11 19:46 - 20:03 (00:17) root pts/0 221.6.45.34 Tue Dec 10 14:41 - 15:52 (01:10) root pts/0 221.6.45.34 Mon Dec 9 17:24 - 17:30 (00:06) root pts/0 221.6.45.34 Mon Dec 9 09:38 - 11:41 (02:02) -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/lastb.md b/command/lastb.md index b134127450..ab2b961e0a 100644 --- a/command/lastb.md +++ b/command/lastb.md @@ -5,7 +5,7 @@ lastb ## 补充说明 -**lastb命** 用于显示用户错误的登录列表,此指令可以发现系统的登录异常。单独执行lastb命令,它会读取位于`/var/log`目录下,名称为btmp的文件,并把该文件内容记录的登入失败的用户名单,全部显示出来。 +**lastb命令** 用于显示用户错误的登录列表,此指令可以发现系统的登录异常。单独执行lastb命令,它会读取位于`/var/log`目录下,名称为btmp的文件,并把该文件内容记录的登入失败的用户名单,全部显示出来。 ### 语法 @@ -58,4 +58,7 @@ root ssh:notty 110.84.129.3 Mon Dec 16 21:25 - 21:25 (00:00) root ssh:notty 110.84.129.3 Mon Dec 16 19:12 - 19:12 (00:00) root ssh:notty 110.84.129.3 Mon Dec 16 17:00 - 17:00 (00:00) admin ssh:notty 129.171.193.99 Mon Dec 16 16:52 - 16:52 (00:00) -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/lha.md b/command/lha.md index 30ba9f0fa1..f7e0701b81 100644 --- a/command/lha.md +++ b/command/lha.md @@ -5,7 +5,7 @@ lha ## 补充说明 -**lha命** 是从lharc演变而来的压缩程序,文件经它压缩后,会另外产生具有`.lzh`扩展名的压缩文件。 +**lha命令** 是从lharc演变而来的压缩程序,文件经它压缩后,会另外产生具有`.lzh`扩展名的压缩文件。 ### 选项 @@ -40,4 +40,7 @@ lha lha -a abc.lhz a.b #压缩a.b文件,压缩后生成 abc.lhz 文件 lha -a abc2 /home/hnlinux #压缩目录 lha -xiw=agis abc #解压文件abc,到当前目录 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/lilo.md b/command/lilo.md index 33c46911d1..ca5dee341c 100644 --- a/command/lilo.md +++ b/command/lilo.md @@ -5,7 +5,7 @@ lilo ## 补充说明 -**lilo命** 用于安装核心载入,开机管理程序。lilo是个Linux系统核心载入程序,同时具备管理开机的功能。单独执行lilo指令,它会读取/etc/lilo.conf配置文件,然后根据其内容安装lilo。 +**lilo命令** 用于安装核心载入,开机管理程序。lilo是个Linux系统核心载入程序,同时具备管理开机的功能。单独执行lilo指令,它会读取/etc/lilo.conf配置文件,然后根据其内容安装lilo。 Linux lilo已经成为所有 Linux 发行版的标准组成部分。作为一个 较老的/最老的 Linux 引导加载程序,它那不断壮大的 Linux 社区支持使它能够随时间的推移而发展,并始终能够充当一个可用的现代引导加载程序。有一些新的功能,比如增强的用户界面,以及对能够突破原来 1024-柱面限制的新 BIOS 功能的利用。 @@ -45,7 +45,7 @@ lilo(选项) ### 实例 -**使用 LILO 作为引导加载程序** + **使用 LILO 作为引导加载程序** 要使用 LILO 作为引导加载程序,需要做的事情取决于是要进行全新安装还是要让已经安装的 Linux 改为使用 LILO。如果是要进行全新安装,那么直接跳转到 配置 LILO 那一节。如果已经安装了某个 Linux 发行版,那么通常可以选择安装并配置 LILO(并可以将机器引导到新的 Linux 安装)。 @@ -57,7 +57,7 @@ lilo(选项) 这将使用当前的 LILO 默认值,抹去 MBR 中当前所有内容。不过,请阅读 配置 LILO,以确保能够按预期引导起来。也要注意,如果想要在同一机器上运行 Windows 和 Linux,那么应该先安装 Windows OS,然后再安装 Linux OS,这样,在 Linux 安装中所选择的引导加载程序就不会被 Windows 引导加载程序所覆盖。与 Linux 引导加载程序不同,多数 Window 引导加载程序不支持引导 Linux。如果已经先安装了 Linux,那么只需要自己创建一张 Linux 引导盘,这样就可以在安装完 Windows 之后,回到 Linux 安装中并重写 MBR。 -**配置 LILO** + **配置 LILO** LILO 的配置都是通过位于 /etc/lilo.conf 的一个配置文件来完成的。清单 1 给出了一个示例配置,使用的是我的家用机器,支持 Linux 和 Windows 机器的双重引导。了解我的工作站的基本配置,就可以想像出这些配置是如何与实际机器相关联的: @@ -109,7 +109,7 @@ other=/dev/hda `-v -v`标记会为您给出非常详细的输出。当像我们那样运行 LILO 时,有很多参数可以指定。 参阅手册页以获得更进一步的信息(man lilo)。 -**初始引导过程** + **初始引导过程** 当 LILO 初始引导时,它会按次序打印出每个字母 —— L-I-L-O。如果所有字母都显示出来,那么第一阶段引导就成功了。缺少任何内容 都表示出现了问题: @@ -125,10 +125,13 @@ LIL-:加载到与上面相同的阶段。加载描述符表时出现问题, LILO:LILO 成功被加载,没有出现任何错误。 -**引导时的附加配置** + **引导时的附加配置** LILO 被成功加载后,将看到 LILO 提示符。还是使用前面的示例 lilo.conf 文件,此时将有两个选择,可能对 LILO 新手来说并不直观。首先,可以 让 LILO 超时(10 秒后),这将引导`/dev/hdb3`,即 Linux 分区。另外,可以按下 TAB 键,这将列出将要引导的操作系统选项。在我们的示例 lilo.conf 中, 将得到的选项是 “Linux” 和 “Windows”。输入哪一个,就会引导到哪个 OS。指定加载 Linux 选项,会提示输入一个口令,在本例中是 linux。如果输入的口令有误,则会返回 LILO 提示符。 不幸的是,LILO 不支持引导期间的交互式配置,所以,只能在 lilo.conf 中或者运行`/sbin/lilo`时指定选项。 -关于第一次尝试 LILO 的最后一点建议是:我发现使用软盘引导磁盘比使用硬盘实现 LILO 配置更为安全。为此,必须在 lilo.conf 文件中使用`boot=/dev/fd0`替换`boot=/dev/hda`。那样,如果弄乱了lilo.conf文件 中的任何配置,都可以取出引导磁盘并像先前一样引导到 Linux。当使用软盘进行引导一切正常以后,可以将lilo.conf修改回`boot=/dev/hda`,然后最后一次运行`/sbin/lilo`来上传修改。 \ No newline at end of file +关于第一次尝试 LILO 的最后一点建议是:我发现使用软盘引导磁盘比使用硬盘实现 LILO 配置更为安全。为此,必须在 lilo.conf 文件中使用`boot=/dev/fd0`替换`boot=/dev/hda`。那样,如果弄乱了lilo.conf文件 中的任何配置,都可以取出引导磁盘并像先前一样引导到 Linux。当使用软盘进行引导一切正常以后,可以将lilo.conf修改回`boot=/dev/hda`,然后最后一次运行`/sbin/lilo`来上传修改。 + + + \ No newline at end of file diff --git a/command/ln.md b/command/ln.md index be5b20126c..811e4055e6 100644 --- a/command/ln.md +++ b/command/ln.md @@ -5,7 +5,7 @@ ln ## 补充说明 -**ln命** 用来为文件创件连接,连接类型分为硬连接和符号连接两种,默认的连接类型是硬连接。如果要创建符号连接必须使用"-s"选项。 +**ln命令** 用来为文件创件连接,连接类型分为硬连接和符号连接两种,默认的连接类型是硬连接。如果要创建符号连接必须使用"-s"选项。 注意:符号链接文件不是一个独立的文件,它的许多属性依赖于源文件,所以给符号链接文件设置存取权限是没有意义的。 @@ -91,4 +91,7 @@ Linux具有为一个文件起多个名字的功能,称为链接。被链接的 * 删除源文件或目录,只删除了数据,不会删除链接。一旦以同样文件名创建了源文件,链接将继续指向该文件的新数据。 * 在目录长列表中,符号链接作为一种特殊的文件类型显示出来,其第一个字母是l。 * 符号链接的大小是其链接文件的路径名中的字节数。 -* 当用`ln -s`命令列出文件时,可以看到符号链接名后有一个箭头指向源文件或目录,例如`lrwxrwxrwx … 14 jun 20 10:20 /etc/motd->/original_file`其中,表示“文件大小”的数字“14”恰好说明源文件名`original_file`由14个字符构成。 \ No newline at end of file +* 当用`ln -s`命令列出文件时,可以看到符号链接名后有一个箭头指向源文件或目录,例如`lrwxrwxrwx … 14 jun 20 10:20 /etc/motd->/original_file`其中,表示“文件大小”的数字“14”恰好说明源文件名`original_file`由14个字符构成。 + + + \ No newline at end of file diff --git a/command/login.md b/command/login.md index 821dba4550..0fc52813b0 100644 --- a/command/login.md +++ b/command/login.md @@ -5,7 +5,7 @@ login ## 补充说明 -**login命** 用于给出登录界面,可用于重新登录或者切换用户身份,也可通过它的功能随时更换登入身份。在Slackware发行版中 ,您可在命令后面附加欲登入的用户名称,它会直接询问密码,等待用户输入。当`/etc/nologin`文件存在时,系统只root帐号登入系统,其他用户一律不准登入。 +**login命令** 用于给出登录界面,可用于重新登录或者切换用户身份,也可通过它的功能随时更换登入身份。在Slackware发行版中 ,您可在命令后面附加欲登入的用户名称,它会直接询问密码,等待用户输入。当`/etc/nologin`文件存在时,系统只root帐号登入系统,其他用户一律不准登入。 ### 语法 @@ -22,4 +22,7 @@ login(选项)(参数) ### 参数 -用户名:指定登录使用的用户名。 \ No newline at end of file +用户名:指定登录使用的用户名。 + + + \ No newline at end of file diff --git a/command/logname.md b/command/logname.md index 3f073214f7..545efe2d10 100644 --- a/command/logname.md +++ b/command/logname.md @@ -5,7 +5,7 @@ logname ## 补充说明 -**logname命** 用来显示用户名称。 +**logname命令** 用来显示用户名称。 ### 语法 @@ -18,4 +18,7 @@ logname(选项) ``` --help:在线帮助; --vesion:显示版本信息。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/logout.md b/command/logout.md index 00a7d16d53..b647bd157f 100644 --- a/command/logout.md +++ b/command/logout.md @@ -5,10 +5,13 @@ logout ## 补充说明 -**logout命** 用于退出当前登录的Shell,logout指令让用户退出系统,其功能和login指令相互对应。 +**logout命令** 用于退出当前登录的Shell,logout指令让用户退出系统,其功能和login指令相互对应。 ### 语法 ``` logout -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/logrotate.md b/command/logrotate.md index befbf04579..9d358b1f16 100644 --- a/command/logrotate.md +++ b/command/logrotate.md @@ -5,7 +5,7 @@ logrotate ## 补充说明 -**logrotate命** 用于对系统日志进行轮转、压缩和删除,也可以将日志发送到指定邮箱。使用logrotate指令,可让你轻松管理系统所产生的记录文件。每个记录文件都可被设置成每日,每周或每月处理,也能在文件太大时立即处理。您必须自行编辑,指定配置文件,预设的配置文件存放在`/etc/logrotate.conf`文件中。 +**logrotate命令** 用于对系统日志进行轮转、压缩和删除,也可以将日志发送到指定邮箱。使用logrotate指令,可让你轻松管理系统所产生的记录文件。每个记录文件都可被设置成每日,每周或每月处理,也能在文件太大时立即处理。您必须自行编辑,指定配置文件,预设的配置文件存放在`/etc/logrotate.conf`文件中。 ### 语法 @@ -26,4 +26,7 @@ logrotate(选项)(参数) ### 参数 -配置文件:指定lograote指令的配置文件。 \ No newline at end of file +配置文件:指定lograote指令的配置文件。 + + + \ No newline at end of file diff --git a/command/look.md b/command/look.md index dd7206cfc2..0edd24f052 100644 --- a/command/look.md +++ b/command/look.md @@ -5,7 +5,7 @@ look ## 补充说明 -**look命** 用于显示文件中以指定字符串开头的任意行。 +**look命令** 用于显示文件中以指定字符串开头的任意行。 ### 语法 @@ -25,4 +25,7 @@ look(选项)(参数) ### 参数 * 字符串:指定要查找的字符串; -* 文件:指定要查找的目标文件。 \ No newline at end of file +* 文件:指定要查找的目标文件。 + + + \ No newline at end of file diff --git a/command/losetup.md b/command/losetup.md index 075a13980e..921b0c67fc 100644 --- a/command/losetup.md +++ b/command/losetup.md @@ -5,7 +5,7 @@ losetup ## 补充说明 -**losetup命** 用来设置循环设备。循环设备可把文件虚拟成块设备,籍此来模拟整个文件系统,让用户得以将其视为硬盘驱动器,光驱或软驱等设备,并挂入当作目录来使用。 +**losetup命令** 用来设置循环设备。循环设备可把文件虚拟成块设备,籍此来模拟整个文件系统,让用户得以将其视为硬盘驱动器,光驱或软驱等设备,并挂入当作目录来使用。 ### 语法 @@ -64,4 +64,7 @@ mount /dev/loop0 /tmp ``` umount /tmp losetup -d /dev/loop1 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/ls.md b/command/ls.md index e8ae381e93..a696a2511a 100644 --- a/command/ls.md +++ b/command/ls.md @@ -1,66 +1,70 @@ - ls === - -显示目标列表 + +显示目录内容列表 ## 补充说明 **ls命令** 用来显示目标列表,在Linux中是使用率较高的命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。 -## 语法 +### 语法 -```bash +``` ls(选项)(参数) ``` -## 选项 +### 选项 -- -a:显示所有档案及目录(ls内定将档案名或目录名称为“.”的视为影藏,不会列出); -- -A:显示除影藏文件“.”和“..”以外的所有文件列表; -- -C:多列显示输出结果。这是默认选项; -- -l:与“-C”选项功能相反,所有输出信息用单列格式输出,不输出为多列; -- -F:在每个输出项后追加文件的类型标识符,具体含义:“*”表示具有可执行权限的普通文件,“/”表示目录,“@”表示符号链接,“|”表示命令管道FIFO,“=”表示sockets套接字。当文件为普通文件时,不输出任何标识符; -- -b:将文件中的不可输出的字符以反斜线“”加字符编码的方式输出; -- -c:与“-lt”选项连用时,按照文件状态时间排序输出目录内容,排序的依据是文件的索引节点中的ctime字段。与“-l”选项连用时,则排序的一句是文件的状态改变时间; -- -d:仅显示目录名,而不显示目录下的内容列表。显示符号链接文件本身,而不显示其所指向的目录列表; -- -f:此参数的效果和同时指定“aU”参数相同,并关闭“lst”参数的效果; -- -i:显示文件索引节点号(inode)。一个索引节点代表一个文件; -- --file-type:与“-F”选项的功能相同,但是不显示“*”; -- -k:以KB(千字节)为单位显示文件大小; -- -l:以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等; -- -m:用“,”号区隔每个文件和目录的名称; -- -n:以用户识别码和群组识别码替代其名称; -- -r:以文件名反序排列并输出目录内容列表; -- -s:显示文件和目录的大小,以区块为单位; -- -t:用文件和目录的更改时间排序; -- -L:如果遇到性质为符号链接的文件或目录,直接列出该链接所指向的原始文件或目录; -- -R:递归处理,将指定目录下的所有文件及子目录一并处理; -- --full-time:列出完整的日期与时间; -- --color[=WHEN]:使用不同的颜色高亮显示不同类型的。 +``` +-a:显示所有档案及目录(ls内定将档案名或目录名称为“.”的视为影藏,不会列出); +-A:显示除影藏文件“.”和“..”以外的所有文件列表; +-C:多列显示输出结果。这是默认选项; +-l:与“-C”选项功能相反,所有输出信息用单列格式输出,不输出为多列; +-F:在每个输出项后追加文件的类型标识符,具体含义:“*”表示具有可执行权限的普通文件,“/”表示目录,“@”表示符号链接,“|”表示命令管道FIFO,“=”表示sockets套接字。当文件为普通文件时,不输出任何标识符; +-b:将文件中的不可输出的字符以反斜线“”加字符编码的方式输出; +-c:与“-lt”选项连用时,按照文件状态时间排序输出目录内容,排序的依据是文件的索引节点中的ctime字段。与“-l”选项连用时,则排序的一句是文件的状态改变时间; +-d:仅显示目录名,而不显示目录下的内容列表。显示符号链接文件本身,而不显示其所指向的目录列表; +-f:此参数的效果和同时指定“aU”参数相同,并关闭“lst”参数的效果; +-i:显示文件索引节点号(inode)。一个索引节点代表一个文件; +--file-type:与“-F”选项的功能相同,但是不显示“*”; +-k:以KB(千字节)为单位显示文件大小; +-l:以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等; +-m:用“,”号区隔每个文件和目录的名称; +-n:以用户识别码和群组识别码替代其名称; +-r:以文件名反序排列并输出目录内容列表; +-s:显示文件和目录的大小,以区块为单位; +-t:用文件和目录的更改时间排序; +-L:如果遇到性质为符号链接的文件或目录,直接列出该链接所指向的原始文件或目录; +-R:递归处理,将指定目录下的所有文件及子目录一并处理; +--full-time:列出完整的日期与时间; +--color[=WHEN]:使用不同的颜色高亮显示不同类型的。 +``` -## 参数 +### 参数 目录:指定要显示列表的目录,也可以是具体的文件。 -## 实例 +### 实例 显示当前目录下非影藏文件与目录 -```bash -ls # 显示当前目录下非影藏文件与目录 -ls -a # 显示当前目录下包括影藏文件在内的所有文件列表 -ls -m # 水平输出文件列表 -ls -t # 最近修改的文件显示在最上面 -ls -R # 显示递归文件 -ls -F # 按照特殊字符对文件进行分类 -ls --color=auto # 列出文件并标记颜色分类 +``` +[root@localhost ~]# ls +anaconda-ks.cfg install.log install.log.syslog satools +``` + +显示当前目录下包括影藏文件在内的所有文件列表 + +``` +[root@localhost ~]# ls -a +. anaconda-ks.cfg .bash_logout .bashrc install.log .mysql_history satools .tcshrc .vimrc +.. .bash_history .bash_profile .cshrc install.log.syslog .rnd .ssh .viminfo ``` 输出长格式列表 -```bash -ls -1 +``` +[root@localhost ~]# ls -1 anaconda-ks.cfg install.log @@ -72,35 +76,46 @@ satools 索引节点(index inode简称为“inode”)是Linux中一个特殊的概念,具有相同的索引节点号的两个文本本质上是同一个文件(除文件名不同外)。 -```bash -ls -i -l anaconda-ks.cfg install.log - +``` +[root@localhost ~]# ls -i -l anaconda-ks.cfg install.log 2345481 -rw------- 1 root root 859 Jun 11 22:49 anaconda-ks.cfg 2345474 -rw-r--r-- 1 root root 13837 Jun 11 22:49 install.log ``` +水平输出文件列表 + +``` +[root@localhost /]# ls -m + +bin, boot, data, dev, etc, home, lib, lost+found, media, misc, mnt, opt, proc, root, sbin, selinux, srv, sys, tmp, usr, var +``` + +修改最后一次编辑的文件 + +最近修改的文件显示在最上面。 + +``` +[root@localhost /]# ls -t + +tmp root etc dev lib boot sys proc data home bin sbin usr var lost+found media mnt opt selinux srv misc +``` + 显示递归文件 -```bash -ls -R - +``` +[root@localhost ~]# ls -R .: -css gulpfile.js img index.html package.json README.md styl +anaconda-ks.cfg install.log install.log.syslog satools -./css: -index.min.css +./satools: +black.txt freemem.sh iptables.sh lnmp.sh mysql php502_check.sh ssh_safe.sh -./img: -logo.svg - -./styl: -index.styl reset.styl ``` 打印文件的UID和GID -```bash -ls -n +``` +[root@localhost /]# ls -n total 254 drwxr-xr-x 2 0 0 4096 Jun 12 04:03 bin @@ -110,12 +125,27 @@ drwxr-xr-x 10 0 0 3520 Sep 26 15:38 dev drwxr-xr-x 75 0 0 4096 Oct 16 04:02 etc drwxr-xr-x 4 0 0 4096 Jun 12 10:26 home drwxr-xr-x 14 0 0 12288 Jun 16 04:02 lib +drwx------ 2 0 0 16384 Jun 11 22:46 lost+found +drwxr-xr-x 2 0 0 4096 May 11 2011 media +drwxr-xr-x 2 0 0 4096 Nov 8 2010 misc +drwxr-xr-x 2 0 0 4096 May 11 2011 mnt +drwxr-xr-x 2 0 0 4096 May 11 2011 opt +dr-xr-xr-x 232 0 0 0 Jun 15 11:04 proc +drwxr-x--- 4 0 0 4096 Oct 15 14:43 root +drwxr-xr-x 2 0 0 12288 Jun 12 04:03 sbin +drwxr-xr-x 2 0 0 4096 May 11 2011 selinux +drwxr-xr-x 2 0 0 4096 May 11 2011 srv +drwxr-xr-x 11 0 0 0 Jun 15 11:04 sys +drwxrwxrwt 3 0 0 98304 Oct 16 08:45 tmp +drwxr-xr-x 13 0 0 4096 Jun 11 23:38 usr +drwxr-xr-x 19 0 0 4096 Jun 11 23:38 var + ``` 列出文件和文件夹的详细信息 -```bash -ls -l +``` +[root@localhost /]# ls -l total 254 drwxr-xr-x 2 root root 4096 Jun 12 04:03 bin @@ -123,12 +153,29 @@ drwxr-xr-x 4 root root 1024 Jun 15 14:45 boot drwxr-xr-x 6 root root 4096 Jun 12 10:26 data drwxr-xr-x 10 root root 3520 Sep 26 15:38 dev drwxr-xr-x 75 root root 4096 Oct 16 04:02 etc +drwxr-xr-x 4 root root 4096 Jun 12 10:26 home +drwxr-xr-x 14 root root 12288 Jun 16 04:02 lib +drwx------ 2 root root 16384 Jun 11 22:46 lost+found +drwxr-xr-x 2 root root 4096 May 11 2011 media +drwxr-xr-x 2 root root 4096 Nov 8 2010 misc +drwxr-xr-x 2 root root 4096 May 11 2011 mnt +drwxr-xr-x 2 root root 4096 May 11 2011 opt +dr-xr-xr-x 232 root root 0 Jun 15 11:04 proc +drwxr-x--- 4 root root 4096 Oct 15 14:43 root +drwxr-xr-x 2 root root 12288 Jun 12 04:03 sbin +drwxr-xr-x 2 root root 4096 May 11 2011 selinux +drwxr-xr-x 2 root root 4096 May 11 2011 srv +drwxr-xr-x 11 root root 0 Jun 15 11:04 sys +drwxrwxrwt 3 root root 98304 Oct 16 08:48 tmp +drwxr-xr-x 13 root root 4096 Jun 11 23:38 usr +drwxr-xr-x 19 root root 4096 Jun 11 23:38 var + ``` 列出可读文件和文件夹详细信息 -```bash -ls -lh +``` +[root@localhost /]# ls -lh total 254K drwxr-xr-x 2 root root 4.0K Jun 12 04:03 bin @@ -137,20 +184,37 @@ drwxr-xr-x 6 root root 4.0K Jun 12 10:26 data drwxr-xr-x 10 root root 3.5K Sep 26 15:38 dev drwxr-xr-x 75 root root 4.0K Oct 16 04:02 etc drwxr-xr-x 4 root root 4.0K Jun 12 10:26 home +drwxr-xr-x 14 root root 12K Jun 16 04:02 lib +drwx------ 2 root root 16K Jun 11 22:46 lost+found +drwxr-xr-x 2 root root 4.0K May 11 2011 media +drwxr-xr-x 2 root root 4.0K Nov 8 2010 misc +drwxr-xr-x 2 root root 4.0K May 11 2011 mnt +drwxr-xr-x 2 root root 4.0K May 11 2011 opt +dr-xr-xr-x 235 root root 0 Jun 15 11:04 proc +drwxr-x--- 4 root root 4.0K Oct 15 14:43 root +drwxr-xr-x 2 root root 12K Jun 12 04:03 sbin +drwxr-xr-x 2 root root 4.0K May 11 2011 selinux +drwxr-xr-x 2 root root 4.0K May 11 2011 srv +drwxr-xr-x 11 root root 0 Jun 15 11:04 sys +drwxrwxrwt 3 root root 96K Oct 16 08:49 tmp +drwxr-xr-x 13 root root 4.0K Jun 11 23:38 usr +drwxr-xr-x 19 root root 4.0K Jun 11 23:38 var + ``` 显示文件夹信息 -```bash -ls -ld /etc/ +``` +root@localhost / /etc/ drwxr-xr-x 75 root root 4096 Oct 16 04:02 /etc/ + ``` 按时间列出文件和文件夹详细信息 -```bash -ls -lt +``` +[root@localhost /]# ls -lt total 254 drwxrwxrwt 3 root root 98304 Oct 16 08:53 tmp @@ -158,14 +222,29 @@ drwxr-xr-x 75 root root 4096 Oct 16 04:02 etc drwxr-x--- 4 root root 4096 Oct 15 14:43 root drwxr-xr-x 10 root root 3520 Sep 26 15:38 dev drwxr-xr-x 14 root root 12288 Jun 16 04:02 lib +drwxr-xr-x 4 root root 1024 Jun 15 14:45 boot +drwxr-xr-x 11 root root 0 Jun 15 11:04 sys +dr-xr-xr-x 232 root root 0 Jun 15 11:04 proc +drwxr-xr-x 6 root root 4096 Jun 12 10:26 data +drwxr-xr-x 4 root root 4096 Jun 12 10:26 home +drwxr-xr-x 2 root root 4096 Jun 12 04:03 bin +drwxr-xr-x 2 root root 12288 Jun 12 04:03 sbin +drwxr-xr-x 13 root root 4096 Jun 11 23:38 usr +drwxr-xr-x 19 root root 4096 Jun 11 23:38 var +drwx------ 2 root root 16384 Jun 11 22:46 lost+found +drwxr-xr-x 2 root root 4096 May 11 2011 media +drwxr-xr-x 2 root root 4096 May 11 2011 mnt +drwxr-xr-x 2 root root 4096 May 11 2011 opt +drwxr-xr-x 2 root root 4096 May 11 2011 selinux drwxr-xr-x 2 root root 4096 May 11 2011 srv drwxr-xr-x 2 root root 4096 Nov 8 2010 misc + ``` 按修改时间列出文件和文件夹详细信息 -```bash -ls -ltr +``` +[root@localhost /]# ls -ltr total 254 drwxr-xr-x 2 root root 4096 Nov 8 2010 misc @@ -173,6 +252,41 @@ drwxr-xr-x 2 root root 4096 May 11 2011 srv drwxr-xr-x 2 root root 4096 May 11 2011 selinux drwxr-xr-x 2 root root 4096 May 11 2011 opt drwxr-xr-x 2 root root 4096 May 11 2011 mnt +drwxr-xr-x 2 root root 4096 May 11 2011 media +drwx------ 2 root root 16384 Jun 11 22:46 lost+found +drwxr-xr-x 19 root root 4096 Jun 11 23:38 var +drwxr-xr-x 13 root root 4096 Jun 11 23:38 usr +drwxr-xr-x 2 root root 12288 Jun 12 04:03 sbin +drwxr-xr-x 2 root root 4096 Jun 12 04:03 bin +drwxr-xr-x 4 root root 4096 Jun 12 10:26 home +drwxr-xr-x 6 root root 4096 Jun 12 10:26 data +dr-xr-xr-x 232 root root 0 Jun 15 11:04 proc +drwxr-xr-x 11 root root 0 Jun 15 11:04 sys +drwxr-xr-x 4 root root 1024 Jun 15 14:45 boot +drwxr-xr-x 14 root root 12288 Jun 16 04:02 lib +drwxr-xr-x 10 root root 3520 Sep 26 15:38 dev +drwxr-x--- 4 root root 4096 Oct 15 14:43 root drwxr-xr-x 75 root root 4096 Oct 16 04:02 etc drwxrwxrwt 3 root root 98304 Oct 16 08:54 tmp + ``` + +按照特殊字符对文件进行分类 + +``` +[root@localhost nginx-1.2.1]# ls -F + +auto/ CHANGES CHANGES.ru conf/ configure* contrib/ html/ LICENSE Makefile man/ objs/ README src/ + +``` + +列出文件并标记颜色分类 + +``` +[root@localhost nginx-1.2.1]# ls --color=auto + +auto CHANGES CHANGES.ru conf configure contrib html LICENSE Makefile man objs README src +``` + + + \ No newline at end of file diff --git a/command/lsattr.md b/command/lsattr.md index 2e8c3c8bfc..1a3ee1d66f 100644 --- a/command/lsattr.md +++ b/command/lsattr.md @@ -5,7 +5,7 @@ lsattr ## 补充说明 -**lsattr命** 用于查看文件的第二扩展文件系统属性。 +**lsattr命令** 用于查看文件的第二扩展文件系统属性。 ### 语法 @@ -34,4 +34,7 @@ lsattr经常使用的几个选项-D,-E,-R这三个选项不可以一起使 ``` lsattr -E -l rmt0 -H lsattr -EO -l rmt0 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/lsmod.md b/command/lsmod.md index 1b4b577fa6..19f98113ec 100644 --- a/command/lsmod.md +++ b/command/lsmod.md @@ -5,7 +5,7 @@ lsmod ## 补充说明 -**lsmod命** 用于显示已经加载到内核中的模块的状态信息。执行lsmod命令后会列出所有已载入系统的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放入核心。您可以将这些功能编译成一个个单独的模块,待需要时再分别载入。 +**lsmod命令** 用于显示已经加载到内核中的模块的状态信息。执行lsmod命令后会列出所有已载入系统的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放入核心。您可以将这些功能编译成一个个单独的模块,待需要时再分别载入。 ### 语法 @@ -97,4 +97,7 @@ ehci_hcd 34509 0 * 第3列:表示依赖模块的个数。 * 第4列:表示依赖模块的内容。 -通常在使用lsmod命令时,都会采用类似`lsmod | grep -i ext3`这样的命令来查询当前系统是否加载了某些模块。 \ No newline at end of file +通常在使用lsmod命令时,都会采用类似`lsmod | grep -i ext3`这样的命令来查询当前系统是否加载了某些模块。 + + + \ No newline at end of file diff --git a/command/mail.md b/command/mail.md index a01521c56f..7f95283047 100644 --- a/command/mail.md +++ b/command/mail.md @@ -5,7 +5,7 @@ mail ## 补充说明 -**mail命** 是命令行的电子邮件发送和接收工具。操作的界面不像elm或pine那么容易使用,但功能非常完整。 +**mail命令** 是命令行的电子邮件发送和接收工具。操作的界面不像elm或pine那么容易使用,但功能非常完整。 ### 语法 @@ -34,7 +34,7 @@ mail(选项)(参数) ### 实例 -**直接使用shell当编辑器** + **直接使用shell当编辑器** ``` mail -s "Hello from linuxde.net by shell" admin@linuxde.net @@ -42,9 +42,9 @@ hello,this is the content of mail. welcome to www.linuxde.net ``` -第一行是输入的命令,`-s`表示邮件的主题,后面的`admin@linuxde.net`则是邮件的接收人,输入完这行命令后回车,会进入邮件正文的编写,我们可以输入任何文字,比如上面的两行。当邮件正文输入完成后,需要按**CTRL+D**结束输入,此时会提示你输入Cc地址,即邮件抄送地址,没有直接回车就完成了邮件的发送。 +第一行是输入的命令,`-s`表示邮件的主题,后面的`admin@linuxde.net`则是邮件的接收人,输入完这行命令后回车,会进入邮件正文的编写,我们可以输入任何文字,比如上面的两行。当邮件正文输入完成后,需要按 **CTRL+D** 结束输入,此时会提示你输入Cc地址,即邮件抄送地址,没有直接回车就完成了邮件的发送。 -**使用管道进行邮件发送** + **使用管道进行邮件发送** ``` echo "hello,this is the content of mail.welcome to www.linuxde.net" | mail -s "Hello from linuxde.net by pipe" admin@linuxde.net @@ -52,7 +52,7 @@ echo "hello,this is the content of mail.welcome to www.linuxde.net" | mail -s "H 使用管道直接敲入这行命令即可完成邮件的发送,其中echo后的是邮件正文。 -**使用文件进行邮件发送** + **使用文件进行邮件发送** ``` mail -s "Hello from linuxde.net by file" admin@linuxde.net < mail.txt @@ -84,4 +84,7 @@ uuencode test.txt test | mail -s "hello,see the attachement" admin@linuxde.net \ No newline at end of file diff --git a/command/mailq.md b/command/mailq.md index f3e0e9d539..f628b35431 100644 --- a/command/mailq.md +++ b/command/mailq.md @@ -5,7 +5,7 @@ mailq ## 补充说明 -**mailq命** 用户显示待发送的邮件队列,显示的每一个条目包括邮件队列id、邮件大小、加入队列时间、邮件发送者和接受者。如果邮件最后一次尝试后还没有将邮件投递出去,则显示发送失败的原因。 +**mailq命令** 用户显示待发送的邮件队列,显示的每一个条目包括邮件队列id、邮件大小、加入队列时间、邮件发送者和接受者。如果邮件最后一次尝试后还没有将邮件投递出去,则显示发送失败的原因。 ### 语法 @@ -25,4 +25,7 @@ mailq(选项) [root@localhost ~]# mailq -v /var/spool/mqueue is empty Total requests: 0 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/mesg.md b/command/mesg.md index 55f673e1ed..f852a8f5a0 100644 --- a/command/mesg.md +++ b/command/mesg.md @@ -5,7 +5,7 @@ mesg ## 补充说明 -**mesg命** 用于设置当前终端的写权限,即是否让其他用户向本终端发信息。将mesg设置y时,其他用户可利用write命令将信息直接显示在您的屏幕上。 +**mesg命令** 用于设置当前终端的写权限,即是否让其他用户向本终端发信息。将mesg设置y时,其他用户可利用write命令将信息直接显示在您的屏幕上。 ### 语法 @@ -22,4 +22,7 @@ y/n:y表示运行向当前终端写信息,n表示禁止向当前终端写信 ``` [root@localhost ~]# mesg y #允许系统用户将信息直接显示在你的屏幕上。 [root@localhost ~]# mesg n #不允许系统用户将信息直接显示在你的屏幕上。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/mkbootdisk.md b/command/mkbootdisk.md index af547a1851..f82862bc0c 100644 --- a/command/mkbootdisk.md +++ b/command/mkbootdisk.md @@ -5,7 +5,7 @@ mkbootdisk ## 补充说明 -**mkbootdisk命** 用来为当前运行的系统创建能够单独使用的系统引导软盘,以便在系统出现故障时能够启动操作进行适当的修复工作。 +**mkbootdisk命令** 用来为当前运行的系统创建能够单独使用的系统引导软盘,以便在系统出现故障时能够启动操作进行适当的修复工作。 ### 语法 @@ -37,4 +37,7 @@ mkbootdisk --device /dev/fd0 `uname -r` ``` mkbootdisk --device /dev/fd0 2.2.18 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/mkdir.md b/command/mkdir.md index d75ea9e281..86f943d286 100644 --- a/command/mkdir.md +++ b/command/mkdir.md @@ -5,7 +5,7 @@ mkdir ## 补充说明 -**mkdir命** 用来创建目录。该命令创建由dirname命名的目录。如果在目录名的前面没有加任何路径名,则在当前目录下创建由dirname指定的目录;如果给出了一个已经存在的路径,将会在该目录下创建一个指定的目录。在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。  +**mkdir命令** 用来创建目录。该命令创建由dirname命名的目录。如果在目录名的前面没有加任何路径名,则在当前目录下创建由dirname指定的目录;如果给出了一个已经存在的路径,将会在该目录下创建一个指定的目录。在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。  注意:在创建文件时,不要把所有的文件都存放在主目录中,可以创建子目录,通过它们来更有效地组织文件。最好采用前后一致的命名方式来区分文件和目录。例如,目录名可以以大写字母开头,这样,在目录列表中目录名就出现在前面。 @@ -42,4 +42,7 @@ mkdir -m 700 /usr/meng/test ``` mkdir -p-m 750 bin/os_1 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/mke2fs.md b/command/mke2fs.md index 8f94a01a1a..80ffa2bc42 100644 --- a/command/mke2fs.md +++ b/command/mke2fs.md @@ -5,7 +5,7 @@ mke2fs ## 补充说明 -**mke2fs命** 被用于创建磁盘分区上的“etc2/etc3”文件系统。 +**mke2fs命令** 被用于创建磁盘分区上的“etc2/etc3”文件系统。 ### 语法 @@ -45,4 +45,7 @@ mke2fs(选项)(参数) ``` mke2fs -q /dev/hda1 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/mkfs.md b/command/mkfs.md index 958dc3e644..baf6878d1d 100644 --- a/command/mkfs.md +++ b/command/mkfs.md @@ -5,7 +5,7 @@ mkfs ## 补充说明 -**mkfs命** 用于在设备上(通常为硬盘)创建Linux文件系统。mkfs本身并不执行建立文件系统的工作,而是去调用相关的程序来执行。 +**mkfs命令** 用于在设备上(通常为硬盘)创建Linux文件系统。mkfs本身并不执行建立文件系统的工作,而是去调用相关的程序来执行。 ### 语法 @@ -37,4 +37,7 @@ mkfs -V -t msdos -c /dev/hda5 mkfs -t ext3 /dev/sda6 //将sda6分区格式化为ext3格式 mkfs -t ext2 /dev/sda7 //将sda7分区格式化为ext2格式 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/mkinitrd.md b/command/mkinitrd.md index 3e70a6a023..984f6a7304 100644 --- a/command/mkinitrd.md +++ b/command/mkinitrd.md @@ -5,7 +5,7 @@ mkinitrd ## 补充说明 -**mkinitrd命** 建立要载入ramdisk的映像文件,以供Linux开机时载入ramdisk。 +**mkinitrd命令** 建立要载入ramdisk的映像文件,以供Linux开机时载入ramdisk。 这个是重新封包核心的命令,例如你自己修改了一个设备的驱动,如果这个驱动要加入核心级别的话,就需要对核心进行重新封包,把新加的配置编译到核心内部去! @@ -57,4 +57,7 @@ root@localhost tmp myinitrd.img myinitrd.img.gz [root@localhost tmp]# gzip -d myinitrd.img.gz [root@localhost tmp]# file myinitrd.img myinitrd.img: ASCII cpio archive (SVR4 with no CRC) -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/mkisofs.md b/command/mkisofs.md index 43d7aca3b5..5c984d0025 100644 --- a/command/mkisofs.md +++ b/command/mkisofs.md @@ -5,7 +5,7 @@ mkisofs ## 补充说明 -**mkisofs命** 用来将指定的目录与文件做成ISO 9660格式的映像文件,以供刻录光盘。 +**mkisofs命令** 用来将指定的目录与文件做成ISO 9660格式的映像文件,以供刻录光盘。 ### 语法 @@ -95,4 +95,7 @@ cp /usr/share/comps/i386/.discinfo rhel4.0/ ``` mkisofs -R -J -T -v -no-emul-boot -boot-load-size 4 -boot-info-table -V RHEL4ASDVD -b isolinux/isolinux.bin -c isolinux/boot.cat -o /RHEL4AS.iso rhel4.0/ -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/mkswap.md b/command/mkswap.md index 1dc8678553..ef3526a8c7 100644 --- a/command/mkswap.md +++ b/command/mkswap.md @@ -5,7 +5,7 @@ mkswap ## 补充说明 -**mkswap命** 用于在一个文件或者设备上建立交换分区。在建立完之后要使用sawpon命令开始使用这个交换区。最后一个选择性参数指定了交换区的大小,但是这个参数是为了向后兼容设置的,没有使用的必要,一般都将整个文件或者设备作为交换区。 +**mkswap命令** 用于在一个文件或者设备上建立交换分区。在建立完之后要使用sawpon命令开始使用这个交换区。最后一个选择性参数指定了交换区的大小,但是这个参数是为了向后兼容设置的,没有使用的必要,一般都将整个文件或者设备作为交换区。 ### 语法 @@ -28,7 +28,7 @@ mkswap(选项)(参数) ### 实例 -**查看系统swap space大小:** + **查看系统swap space大小:** ``` free -m @@ -38,7 +38,7 @@ Mem: 377 180 197 0 19 110 Swap: 572 0 572 ``` -**查看当前的swap空间(file(s)/partition(s)):** + **查看当前的swap空间(file(s)/partition(s)):** ``` swapon -s @@ -48,9 +48,9 @@ swapon -s cat /proc/swaps ``` -**添加交换空间** + **添加交换空间** -添加一个**交换分区**或添加一个**交换文件**。推荐你添加一个交换分区;不过,若你没有多少空闲空间可用,则添加交换文件。 +添加一个 **交换分区** 或添加一个 **交换文件** 。推荐你添加一个交换分区;不过,若你没有多少空闲空间可用,则添加交换文件。 添加一个交换分区,步骤如下: @@ -100,7 +100,7 @@ swapon /swapfile1 新添了交换分区并启用它之后,请查看`cat /proc/swaps`或free命令的输出来确保交换分区已被启用了。 -**删除交换空间:** + **删除交换空间:** 禁用交换分区: @@ -108,4 +108,7 @@ swapon /swapfile1 swapoff /dev/sdb2 ``` -从`/etc/fstab`中删除项目,使用fdisk或yast工具删除分区。 \ No newline at end of file +从`/etc/fstab`中删除项目,使用fdisk或yast工具删除分区。 + + + \ No newline at end of file diff --git a/command/mktemp.md b/command/mktemp.md index 3dcec0e162..039b9ebcf5 100644 --- a/command/mktemp.md +++ b/command/mktemp.md @@ -5,7 +5,7 @@ mktemp ## 补充说明 -**mktemp命** 被用来创建临时文件供shell脚本使用。 +**mktemp命令** 被用来创建临时文件供shell脚本使用。 ### 语法 @@ -23,4 +23,7 @@ mktemp(选项)(参数) ### 参数 -文件:指定创建的临时文件。 \ No newline at end of file +文件:指定创建的临时文件。 + + + \ No newline at end of file diff --git a/command/modprobe.md b/command/modprobe.md index c267b1bd7f..d030b734bb 100644 --- a/command/modprobe.md +++ b/command/modprobe.md @@ -5,7 +5,7 @@ modprobe ## 补充说明 -**modprobe命** 用于智能地向内核中加载模块或者从内核中移除模块。 +**modprobe命令** 用于智能地向内核中加载模块或者从内核中移除模块。 modprobe可载入指定的个别模块,或是载入一组相依的模块。modprobe会根据depmod所产生的相依关系,决定要载入哪些模块。若在载入过程中发生错误,在modprobe会卸载整组的模块。 @@ -35,7 +35,7 @@ modprobe(选项)(参数) ### 实例 -**查看modules的配置文件:** + **查看modules的配置文件:** ``` modprobe -c @@ -47,7 +47,7 @@ modprobe -c alias symbol:ip_conntrack_unregister_notifier ip_conntrack ``` -**列出内核中所有已经或者未挂载的所有模块:** + **列出内核中所有已经或者未挂载的所有模块:** ``` modprobe -l @@ -59,7 +59,7 @@ modprobe -l /lib/modules/2.6.18-348.6.1.el5/kernel/net/netfilter/xt_statistic.ko ``` -**挂载vfat模块:** + **挂载vfat模块:** ``` modprobe vfat @@ -67,10 +67,13 @@ modprobe vfat 这里,使用格式`modprobe 模块名`来挂载一个模块。挂载之后,用lsmod可以查看已经挂载的模块。模块名是不能带有后缀的,我们通过`modprobe -l`所看到的模块,都是带有`.ko`或`.o`后缀。 -**移除已经加载的模块:** + **移除已经加载的模块:** ``` modprobe -r 模块名 ``` -这里,移除已加载的模块,和rmmod功能相同。 \ No newline at end of file +这里,移除已加载的模块,和rmmod功能相同。 + + + \ No newline at end of file diff --git a/command/mtools.md b/command/mtools.md index 6b91e9c750..266bb952df 100644 --- a/command/mtools.md +++ b/command/mtools.md @@ -5,7 +5,7 @@ mtools ## 补充说明 -**mtools命** 显示mtools支持的指令,mtools为MS-DOS文件系统的工具程序,可模拟许多MS-DOS的指令。这些指令都是mtools的符号连接,因此会有一些共同的特性。 +**mtools命令** 显示mtools支持的指令,mtools为MS-DOS文件系统的工具程序,可模拟许多MS-DOS的指令。这些指令都是mtools的符号连接,因此会有一些共同的特性。 ### 语法 @@ -42,4 +42,7 @@ mwrite, mzip ``` -如上所示,其显示的所有命令均为mtools工具所支持的。 \ No newline at end of file +如上所示,其显示的所有命令均为mtools工具所支持的。 + + + \ No newline at end of file diff --git a/command/mv.md b/command/mv.md index addc8858af..9291bc1717 100644 --- a/command/mv.md +++ b/command/mv.md @@ -1,38 +1,56 @@ - mv === - -文件或目录重新命名和移动。 + +用来对文件或目录重新命名 ## 补充说明 -mv命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。source表示源文件或目录,target表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。 +**mv命令** 用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。source表示源文件或目录,target表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。 mv命令可以用来将源文件移至一个目标文件中,或将一组文件移至一个目标目录中。源文件被移至目标文件有两种不同的结果: -- 如果目标文件是到某一目录文件的路径,源文件会被移到此目录下,且文件名不变。 -- 如果目标文件不是目录文件,则源文件名(只能有一个)会变为此目标文件名,并覆盖己存在的同名文件。如果源文件和目标文件在同一个目录下,mv的作用就是改文件名。当目标文件是目录文件时,源文件或目录参数可以有多个,则所有的源文件都会被移至目标文件中。所有移到该目录下的文件都将保留以前的文件名。 +1. 如果目标文件是到某一目录文件的路径,源文件会被移到此目录下,且文件名不变。 +2. 如果目标文件不是目录文件,则源文件名(只能有一个)会变为此目标文件名,并覆盖己存在的同名文件。如果源文件和目标文件在同一个目录下,mv的作用就是改文件名。当目标文件是目录文件时,源文件或目录参数可以有多个,则所有的源文件都会被移至目标文件中。所有移到该目录下的文件都将保留以前的文件名。 注意事项:mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加。而cp对文件进行复制,文件个数增加了。 -## 语法 +### 语法 -```bash +``` mv(选项)(参数) ``` -## 参数 +### 选项 -- --backup=<备份模式>:若需覆盖文件,则覆盖前先行备份; -- -b:当文件存在时,覆盖前,为其创建一个备份; -- -f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录; -- -i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目- 标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。 --strip-trailing-slashes:删除源文件中的斜杠“/”; -- -S<后缀>:为备份文件指定后缀,而不使用默认的后缀; -- --target-directory=<目录>:指定源文件要移动到目标目录; -- -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。 - -## 例子 - -```bash -mv file3 new_command # 将文件 file3 改名为 new_command ``` +--backup=<备份模式>:若需覆盖文件,则覆盖前先行备份; +-b:当文件存在时,覆盖前,为其创建一个备份; +-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录; +-i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。 +--strip-trailing-slashes:删除源文件中的斜杠“/”; +-S<后缀>:为备份文件指定后缀,而不使用默认的后缀; +--target-directory=<目录>:指定源文件要移动到目标目录; +-u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。 +``` + +### 参数 + +* 源文件:源文件列表。 +* 目标文件:如果“目标文件”是文件名则在移动文件的同时,将其改名为“目标文件”;如果“目标文件”是目录名则将源文件移动到“目标文件”下。 + +### 实例 + +将文件ex3改名为new1 + +``` +mv ex3 new1 +``` + +将目录`/usr/men`中的所有文件移到当前目录(用`.`表示)中: + +``` +mv /usr/men/* . +``` + + + \ No newline at end of file diff --git a/command/ncftp.md b/command/ncftp.md index 2c0cc43142..95022d5a59 100644 --- a/command/ncftp.md +++ b/command/ncftp.md @@ -5,7 +5,7 @@ ncftp ## 补充说明 -**ncftp命** 是增强的的ftp工具,比传统的FTP指令更加强大。FTP让用户得以下载存放于服务器主机的文件,也能将文件上传到远端主机放置。ncftp是文字模式FTP程序的佼佼者,它具备多样特色,包括显示传输速率,下载进度,自动续传,标住书签,可通过防火墙和代理服务器等。 +**ncftp命令** 是增强的的ftp工具,比传统的FTP指令更加强大。FTP让用户得以下载存放于服务器主机的文件,也能将文件上传到远端主机放置。ncftp是文字模式FTP程序的佼佼者,它具备多样特色,包括显示传输速率,下载进度,自动续传,标住书签,可通过防火墙和代理服务器等。 ### 语法 @@ -45,7 +45,7 @@ make && make install /usr/local/ncftp/bin/ncftpput -u koumm -p koumm -P 21 -m -R 192.168.162.137 flv/games/ /etc/* ``` -**指令说明** + **指令说明** ncftp的基本命令和普通ftp一样,可以输入help获得命令列表。对于所有的命令,都可以使用help <命令>的格式获得详细帮助。l开头的就是对本地执行的命令,其它的就是对登入的ftp服务目录的操作命令。 @@ -58,4 +58,7 @@ ncftp的基本命令和普通ftp一样,可以输入help获得命令列表。 * lchmod: 改变本地文件权限; * lpage: 显示本地文件内容; * lrm: 删除本地文件; -* lrmdir: 删除本地目录。 \ No newline at end of file +* lrmdir: 删除本地目录。 + + + \ No newline at end of file diff --git a/command/netstat.md b/command/netstat.md index 4f3b28351a..e224586252 100644 --- a/command/netstat.md +++ b/command/netstat.md @@ -5,7 +5,7 @@ netstat ## 补充说明 -**netstat命** 用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。 +**netstat命令** 用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。 ### 语法 @@ -44,7 +44,7 @@ netstat(选项) ### 实例 -**列出所有端口 (包括监听和未监听的)** + **列出所有端口 (包括监听和未监听的)** ``` netstat -a #列出所有端口 @@ -52,7 +52,7 @@ netstat -at #列出所有tcp端口 netstat -au #列出所有udp端口 ``` -**列出所有处于监听状态的 Sockets** + **列出所有处于监听状态的 Sockets** ``` netstat -l #只显示监听端口 @@ -61,7 +61,7 @@ netstat -lu #只列出所有监听 udp 端口 netstat -lx #只列出所有监听 UNIX 端口 ``` -**显示每个协议的统计信息** + **显示每个协议的统计信息** ``` netstat -s 显示所有端口的统计信息 @@ -70,7 +70,7 @@ netstat -su 显示UDP端口的统计信息 ``` -**在netstat输出中显示 PID 和进程名称** + **在netstat输出中显示 PID 和进程名称** ``` netstat -pt @@ -78,7 +78,7 @@ netstat -pt `netstat -p`可以与其它开关一起使用,就可以添加“PID/进程名称”到netstat输出中,这样debugging的时候可以很方便的发现特定端口运行的程序。 -**在netstat输出中不显示主机,端口和用户名(host, port or user)** + **在netstat输出中不显示主机,端口和用户名(host, port or user)** 当你不想让主机,端口和用户名显示,使用`netstat -n`。将会使用数字代替那些名称。同样可以加速输出,因为不用进行比对查询。 @@ -94,13 +94,13 @@ netsat -a --numeric-hosts netsat -a --numeric-users ``` -**持续输出netstat信息** + **持续输出netstat信息** ``` netstat -c #每隔一秒输出网络信息 ``` -**显示系统不支持的地址族(Address Families)** + **显示系统不支持的地址族(Address Families)** ``` netstat --verbose @@ -115,7 +115,7 @@ netstat: no support for `AF X25' on this system. netstat: no support for `AF NETROM' on this system. ``` -**显示核心路由信息** + **显示核心路由信息** ``` netstat -r @@ -123,7 +123,7 @@ netstat -r 使用`netstat -rn`显示数字格式,不查询主机名称。 -**找出程序运行的端口** + **找出程序运行的端口** 并不是所有的进程都能找到,没有权限的会不显示,使用 root 权限查看所有的信息。 @@ -137,7 +137,7 @@ netstat -ap | grep ssh netstat -an | grep ':80' ``` -**显示网络接口列表** + **显示网络接口列表** ``` netstat -i @@ -145,7 +145,7 @@ netstat -i 显示详细信息,像是ifconfig使用`netstat -ie`。 -**IP和TCP分析** + **IP和TCP分析** 查看连接某服务端口最多的的IP地址: @@ -163,4 +163,7 @@ netstat -nt | grep -e 127.0.0.1 -e 0.0.0.0 -e ::: -v | awk '/^tcp/ {++state$NF p ``` netstat -anpo | grep "php-cgi" | wc -l -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/nice.md b/command/nice.md index bc3ebb77f6..b8d715edd7 100644 --- a/command/nice.md +++ b/command/nice.md @@ -5,7 +5,7 @@ nice ## 补充说明 -**nice命** 用于以指定的进程调度优先级启动其他的程序。 +**nice命令** 用于以指定的进程调度优先级启动其他的程序。 ### 语法 @@ -35,4 +35,7 @@ nice -19 tar zcf pack.tar.gz documents ``` nice --19 tar zcf pack.tar.gz documents -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/ntsysv.md b/command/ntsysv.md index 19c612932c..33039de7d6 100644 --- a/command/ntsysv.md +++ b/command/ntsysv.md @@ -5,7 +5,7 @@ ntsysv ## 补充说明 -**ntsysv命** 提供了一个基于文本界面的菜单操作方式,集中管理系统不同的运行等级下的系统服务启动状态。在RedHat各个发行版,CentOS各个版本,都自带这个工具。它具有互动式操作界面,您可以轻易地利用方向键和空格键等,开启,关闭操作系统在每个执行等级中,所要执行的系统服务。 +**ntsysv命令** 提供了一个基于文本界面的菜单操作方式,集中管理系统不同的运行等级下的系统服务启动状态。在RedHat各个发行版,CentOS各个版本,都自带这个工具。它具有互动式操作界面,您可以轻易地利用方向键和空格键等,开启,关闭操作系统在每个执行等级中,所要执行的系统服务。 ### 语法 @@ -26,4 +26,7 @@ ntsysv(选项) !ntsysv -使用空格键选择或者取消选项! \ No newline at end of file +使用空格键选择或者取消选项! + + + \ No newline at end of file diff --git a/command/od.md b/command/od.md index cfddc1de3a..c5950d4163 100644 --- a/command/od.md +++ b/command/od.md @@ -5,7 +5,7 @@ od ## 补充说明 -**od命** 用于输出文件的八进制、十六进制或其它格式编码的字节,通常用于显示或查看文件中不能直接显示在终端的字符。 +**od命令** 用于输出文件的八进制、十六进制或其它格式编码的字节,通常用于显示或查看文件中不能直接显示在终端的字符。 常见的文件为文本文件和二进制文件。此命令主要用来查看保存在二进制文件中的值。比如,程序可能输出大量的数据记录,每个数据是一个单精度浮点数。这些数据记录存放在一个文件中,如果想查看下这个数据,这时候od命令就派上用场了。在我看来,od命令主要用来格式化输出文件数据,即对文件中的数据进行无二义性的解释。不管是IEEE754格式的浮点数还是ASCII码,od命令都能按照需求输出它们的值。 @@ -145,4 +145,7 @@ abcdef g 0000011 ``` -说明:每行输出3个字节,并使用八进制单字节进行解释 \ No newline at end of file +说明:每行输出3个字节,并使用八进制单字节进行解释 + + + \ No newline at end of file diff --git a/command/passwd.md b/command/passwd.md index 081bcedf30..6b4833827a 100644 --- a/command/passwd.md +++ b/command/passwd.md @@ -5,7 +5,7 @@ passwd ## 补充说明 -**passwd命** 用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。 +**passwd命令** 用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。 ### 语法 @@ -122,4 +122,7 @@ passwd: Success //清除成功; Empty password. //空密码,也就是没有密码; ``` -注意:当我们清除一个用户的密码时,登录时就无需密码,这一点要加以注意。 \ No newline at end of file +注意:当我们清除一个用户的密码时,登录时就无需密码,这一点要加以注意。 + + + \ No newline at end of file diff --git a/command/paste.md b/command/paste.md index 1b976c7060..88b1da923a 100644 --- a/command/paste.md +++ b/command/paste.md @@ -5,7 +5,7 @@ paste ## 补充说明 -**paste命** 用于将多个文件按照列队列进行合并。 +**paste命令** 用于将多个文件按照列队列进行合并。 ### 语法 @@ -22,4 +22,7 @@ paste(选项)(参数) ### 参数 -文件列表:指定需要合并的文件列表。 \ No newline at end of file +文件列表:指定需要合并的文件列表。 + + + \ No newline at end of file diff --git a/command/patch.md b/command/patch.md index 886a6bbb85..2692a2a417 100644 --- a/command/patch.md +++ b/command/patch.md @@ -5,7 +5,7 @@ patch ## 补充说明 -**patch命** 被用于为开放源代码软件安装补丁程序。让用户利用设置修补文件的方式,修改,更新原始文件。如果一次仅修改一个文件,可直接在命令列中下达指令依序执行。如果配合修补文件的方式则能一次修补大批文件,这也是Linux系统核心的升级方法之一。 +**patch命令** 被用于为开放源代码软件安装补丁程序。让用户利用设置修补文件的方式,修改,更新原始文件。如果一次仅修改一个文件,可直接在命令列中下达指令依序执行。如果配合修补文件的方式则能一次修补大批文件,这也是Linux系统核心的升级方法之一。 ### 语法 @@ -53,4 +53,7 @@ patch(选项)(参数) ### 参数 * 原文件:指定需要打补丁的原始文件; -* 补丁文件:指定补丁文件。 \ No newline at end of file +* 补丁文件:指定补丁文件。 + + + \ No newline at end of file diff --git a/command/pico.md b/command/pico.md index b3b6f9619e..920826928c 100644 --- a/command/pico.md +++ b/command/pico.md @@ -5,7 +5,7 @@ pico ## 补充说明 -**pico命** 是功能强大全屏幕的文本编辑器。pico的操作简单,提供了丰富的快捷键。常用的快捷键如下: +**pico命令** 是功能强大全屏幕的文本编辑器。pico的操作简单,提供了丰富的快捷键。常用的快捷键如下: ``` Ctrl+G:获得pico的帮助信息; @@ -55,4 +55,7 @@ pico(选项)(参数) ### 参数 -文件:指定要编辑的文件。 \ No newline at end of file +文件:指定要编辑的文件。 + + + \ No newline at end of file diff --git a/command/ping.md b/command/ping.md index 1068287c4d..597a22a069 100644 --- a/command/ping.md +++ b/command/ping.md @@ -5,7 +5,7 @@ ping ## 补充说明 -**ping命** 用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。 +**ping命令** 用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。 ### 语法 @@ -50,4 +50,7 @@ PING host.1.linuxde.net (100.42.212.8) 56(84) bytes of data. --- host.1.linuxde.net ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 2998ms rtt min/avg/max/mdev = 174.068/176.916/178.182/1.683 ms -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/ps.md b/command/ps.md index 1c120705b3..0723ab139c 100644 --- a/command/ps.md +++ b/command/ps.md @@ -5,7 +5,7 @@ ps ## 补充说明 -**ps命** 用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。 +**ps命令** 用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。 ### 语法 @@ -80,4 +80,7 @@ X:采用旧式的Linux i386登陆格式显示程序状况。 --widty<每列字符数>:此选项的效果和指定"-cols"选项相同。 ``` -由于ps命令能够支持的系统类型相当的多,所以选项多的离谱! \ No newline at end of file +由于ps命令能够支持的系统类型相当的多,所以选项多的离谱! + + + \ No newline at end of file diff --git a/command/pstree.md b/command/pstree.md index 32ad82548f..5867ddeb5f 100644 --- a/command/pstree.md +++ b/command/pstree.md @@ -5,7 +5,7 @@ pstree ## 补充说明 -**pstree命** 以树状图的方式展现进程之间的派生关系,显示效果比较直观。 +**pstree命令** 以树状图的方式展现进程之间的派生关系,显示效果比较直观。 ### 语法 @@ -41,4 +41,7 @@ pstree -p ``` pstree -a -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/pwconv.md b/command/pwconv.md index 2407ed4ca5..b3ee238598 100644 --- a/command/pwconv.md +++ b/command/pwconv.md @@ -5,7 +5,7 @@ pwconv ## 补充说明 -**pwconv命** 用来开启用户的投影密码。Linux系统里的用户和群组密码,分别存放在名称为passwd和group的文件中, 这两个文件位于`/etc`目录下。因系统运作所需,任何人都得以读取它们,造成安全上的破绽。投影密码将文件内的密码改存在`/etc`目录下的shadow和gshadow文件内,只允许系统管理者读取,同时把原密码置换为"x"字符,有效的强化了系统的安全性。 +**pwconv命令** 用来开启用户的投影密码。Linux系统里的用户和群组密码,分别存放在名称为passwd和group的文件中, 这两个文件位于`/etc`目录下。因系统运作所需,任何人都得以读取它们,造成安全上的破绽。投影密码将文件内的密码改存在`/etc`目录下的shadow和gshadow文件内,只允许系统管理者读取,同时把原密码置换为"x"字符,有效的强化了系统的安全性。 ### 语法 @@ -25,4 +25,7 @@ test:x:3001:3001::/home/test:/bin/sh ``` cat /etc/shadow | grep test test:$6$nYOEWamm$bz07nlv/.RgJufb3FAqJJeULfwybzgxmrWqbk7O4vI0KsT6N.ujrh6dDIUcAJdfjksyuyAFDPIngZeD3cgcf.0:15022:0:99999:7::: -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/pwd.md b/command/pwd.md index 1d48551807..a2baab5eec 100644 --- a/command/pwd.md +++ b/command/pwd.md @@ -1,28 +1,32 @@ - pwd === - -以绝对路径的方式显示用户当前工作目录。 + +绝对路径方式显示用户当前工作目录 ## 补充说明 -以绝对路径的方式显示用户当前工作目录。命令将当前目录的全路径名称(从根目录)写入标准输出。全部目录使用`/`分隔。第一个`/`表示根目录,最后一个目录是当前目录。执行pwd命令可立刻得知您目前所在的工作目录的绝对路径名称。 +**pwd命令** 以绝对路径的方式显示用户当前工作目录。命令将当前目录的全路径名称(从根目录)写入标准输出。全部目录使用`/`分隔。第一个`/`表示根目录,最后一个目录是当前目录。执行pwd命令可立刻得知您目前所在的工作目录的绝对路径名称。 ### 语法 -```bash +``` pwd(选项) ``` ### 选项 -- --help:显示帮助信息; -- --version:显示版本信息。 +``` +--help:显示帮助信息; +--version:显示版本信息。 + +``` ### 实例 -```bash -pwd - +``` +[root@localhost ~]# pwd /root ``` + + + \ No newline at end of file diff --git a/command/pwunconv.md b/command/pwunconv.md index f51b0f5621..021851c210 100644 --- a/command/pwunconv.md +++ b/command/pwunconv.md @@ -5,7 +5,7 @@ pwunconv ## 补充说明 -**pwunconv命** 与pwconv功能相反,用来关闭用户的投影密码。它会把密码从shadow文件内,重回存到passwd文件里。 +**pwunconv命令** 与pwconv功能相反,用来关闭用户的投影密码。它会把密码从shadow文件内,重回存到passwd文件里。 ### 语法 @@ -22,4 +22,7 @@ test:$6$nYOEWamm$bz07nlv/.RgJufb3FAqJJeULfwybzgxmrWqbk7O4vI0KsT6N.ujrh6dDIUcAJdf ls /etc/shadow //查看影子文件,提示没有这个文件或目录 ls: cannot access /etc/shadow: No such file or directory -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/quota.md b/command/quota.md index 63974042ef..269100ab7f 100644 --- a/command/quota.md +++ b/command/quota.md @@ -5,7 +5,7 @@ quota ## 补充说明 -**quota命** 用于显示用户或者工作组的磁盘配额信息。输出信息包括磁盘使用和配额限制。 +**quota命令** 用于显示用户或者工作组的磁盘配额信息。输出信息包括磁盘使用和配额限制。 ### 语法 @@ -145,4 +145,7 @@ Disk quotas for group qgroup (gid 502): Disk quotas for group qgroup (gid 502): Filesystem blocks quota limit grace files quota limit grace /dev/hdb1 0 80000 90000 0 0 0 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/quotacheck.md b/command/quotacheck.md index 2804c87563..4d905aaae9 100644 --- a/command/quotacheck.md +++ b/command/quotacheck.md @@ -5,7 +5,7 @@ quotacheck ## 补充说明 -**quotacheck命** 通过扫描指定的文件系统,获取磁盘的使用情况,创建、检查和修复磁盘配额(quota)文件。执行quotacheck指令,扫描挂入系统的分区,并在各分区的文件系统根目录下产生quota.user和quota.group文件,设置用户和群组的磁盘空间限制。 +**quotacheck命令** 通过扫描指定的文件系统,获取磁盘的使用情况,创建、检查和修复磁盘配额(quota)文件。执行quotacheck指令,扫描挂入系统的分区,并在各分区的文件系统根目录下产生quota.user和quota.group文件,设置用户和群组的磁盘空间限制。 ### 语法 @@ -43,4 +43,7 @@ quotacheck: Checked 3 directories and 4 files ``` [root@linux ~]# quotacheck -avug -m -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/quotaoff.md b/command/quotaoff.md index 6dd54b4fa2..c17127714c 100644 --- a/command/quotaoff.md +++ b/command/quotaoff.md @@ -5,7 +5,7 @@ quotaoff ## 补充说明 -**quotaoff命** 用于关闭Linux内核中指定文件系统的磁盘配额功能。 +**quotaoff命令** 用于关闭Linux内核中指定文件系统的磁盘配额功能。 ### 语法 @@ -24,4 +24,7 @@ quotaoff(选项)(参数) ### 参数 -文件系统:指定要关闭磁盘配额功能的文件系统。 \ No newline at end of file +文件系统:指定要关闭磁盘配额功能的文件系统。 + + + \ No newline at end of file diff --git a/command/quotaon.md b/command/quotaon.md index 9034a402f4..7494659709 100644 --- a/command/quotaon.md +++ b/command/quotaon.md @@ -5,7 +5,7 @@ quotaon ## 补充说明 -**quotaon命** 用于激活Linux内核中指定文件系统的磁盘配额功能。执行quotaon指令可开启用户和群组的才磅秒年空间限制,各分区的文件系统根目录必须有quota.user和quota.group配置文件。 +**quotaon命令** 用于激活Linux内核中指定文件系统的磁盘配额功能。执行quotaon指令可开启用户和群组的才磅秒年空间限制,各分区的文件系统根目录必须有quota.user和quota.group配置文件。 ### 语法 @@ -24,4 +24,7 @@ quotaon(选项)(参数) ### 参数 -文件系统:指定要激活磁盘配额功能的文件系统。 \ No newline at end of file +文件系统:指定要激活磁盘配额功能的文件系统。 + + + \ No newline at end of file diff --git a/command/rcp.md b/command/rcp.md index 2e4cc54406..091a7658b6 100644 --- a/command/rcp.md +++ b/command/rcp.md @@ -5,7 +5,7 @@ rcp ## 补充说明 -**rcp命** 使在两台Linux主机之间的文件复制操作更简单。通过适当的配置,在两台Linux主机之间复制文件而无需输入密码,就像本地文件复制一样简单。 +**rcp命令** 使在两台Linux主机之间的文件复制操作更简单。通过适当的配置,在两台Linux主机之间复制文件而无需输入密码,就像本地文件复制一样简单。 ### 语法 @@ -32,7 +32,7 @@ directory 每个文件或目录参数既可以是远程文件名也可以是本 ### 实例 -**rcp命令使用条件** + **rcp命令使用条件** 如果系统中有`/etc/hosts`文件,系统管理员应确保该文件包含要与之进行通信的远程主机的项。配置过程: @@ -46,7 +46,7 @@ directory 每个文件或目录参数既可以是远程文件名也可以是本 3、到`/etc/pam.d/`目录下,把rsh文件中的`auth required /lib/security/pam_securetty.so`一行用“#”注释掉即可。(只有注释掉这一行,才能用root用户登录) -**将当前目录下的 test1 复制到名为 webserver1 的远程系统:** + **将当前目录下的 test1 复制到名为 webserver1 的远程系统:** ``` rcp test1 webserver1:/home/root/test3 @@ -54,7 +54,7 @@ rcp test1 webserver1:/home/root/test3 在这种情况下,test1 被复制到远程子目录 test3下,名称仍为 test1 。如果仅提供了远程主机名,rcp 将把 test1 复制到远程主目录下,名称仍为 test1 。 -**还可以在目的目录中包含文件名。例如,将文件复制到名为 webserver1的系统中:** + **还可以在目的目录中包含文件名。例如,将文件复制到名为 webserver1的系统中:** ``` rcp test1 webserver1:/home/root/test3 @@ -62,13 +62,13 @@ rcp test1 webserver1:/home/root/test3 在这种情况下,将 test1 复制到远程目录root 下并将其命名为 test3。 -**从远程系统复制文件:要将远程系统中的文件复制到本地目录下:** + **从远程系统复制文件:要将远程系统中的文件复制到本地目录下:** ``` rcp remote_hostname:remote_file local_fileEnter ``` -**将远程系统 webserver1中的 test2 复制到当前目录:** + **将远程系统 webserver1中的 test2 复制到当前目录:** ``` rcp webserver1:/home/root/test2 .Enter @@ -88,7 +88,7 @@ rcp webserver1:/home/root/test2 otherdir/ Enter rcp webserver1:/home/root/test2 otherdir/otherfile Enter ``` -**将目录复制到远程系统:** + **将目录复制到远程系统:** 要将本地目录及其文件和子目录复制到远程系统,请同时使用 rcp 和 -r(递归)选项。 @@ -98,7 +98,7 @@ rcp -r local_dir remote_hostname:remote_dir Enter 如果当前目录下没有 local_dir,则除本地目录名外,还需要提供相对路径名(自当前目录开始)或绝对路径名(自 / 顶级目录开始)。另外,如果主目录下没有 remote_dir,则 remote_dir 将需要一个相对路径(自主目录开始)或绝对路径(自 / 开始)。 -**要将名为 work 的子目录完整地复制到 webserver1远程计算机中的主目录下名为 products 的目录,请键入以下内容:** + **要将名为 work 的子目录完整地复制到 webserver1远程计算机中的主目录下名为 products 的目录,请键入以下内容:** ``` rcp -r work webserver1:/home/root/products Enter @@ -108,7 +108,7 @@ rcp -r work webserver1:/home/root/products Enter 本示例假定用户处于包含 work 的本地目录下。否则,必须提供该目录的相对或绝对路径,如`/home/root/work`。 -**从远程系统复制目录:** + **从远程系统复制目录:** 要将远程目录及其所有文件和子目录复制到本地目录,请在以下语法中使用 rcp 和 -r(递归)选项。 @@ -122,4 +122,7 @@ rcp –r remote_hostname:remote_dir local_dir Enter rcp –r webserver1:/home/root/work .Enter ``` -`.`表示当前目录。将在此目录下创建 work 目录。 \ No newline at end of file +`.`表示当前目录。将在此目录下创建 work 目录。 + + + \ No newline at end of file diff --git a/command/reboot.md b/command/reboot.md index 32b86d3435..6634f36df5 100644 --- a/command/reboot.md +++ b/command/reboot.md @@ -5,7 +5,7 @@ reboot ## 补充说明 -**reboot命** 用来重新启动正在运行的Linux操作系统。 +**reboot命令** 用来重新启动正在运行的Linux操作系统。 ### 语法 @@ -28,4 +28,7 @@ reboot(选项) ``` reboot //重开机。 reboot -w //做个重开机的模拟(只有纪录并不会真的重开机)。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/renice.md b/command/renice.md index 8d55ef7355..4d2aa94965 100644 --- a/command/renice.md +++ b/command/renice.md @@ -5,7 +5,7 @@ renice ## 补充说明 -**renice命** 可以修改正在运行的进程的调度优先级。预设是以程序识别码指定程序调整其优先权,您亦可以指定程序群组或用户名称调整优先权等级,并修改所有隶属于该程序群组或用户的程序的优先权。只有系统管理者可以改变其他用户程序的优先权,也仅有系统管理者可以设置负数等级。 +**renice命令** 可以修改正在运行的进程的调度优先级。预设是以程序识别码指定程序调整其优先权,您亦可以指定程序群组或用户名称调整优先权等级,并修改所有隶属于该程序群组或用户的程序的优先权。只有系统管理者可以改变其他用户程序的优先权,也仅有系统管理者可以设置负数等级。 ### 语法 @@ -33,4 +33,7 @@ renice(选项)(参数) renice 1 987 -u daemon root -p 32 ``` -注意:每一个行程都有一个唯一的id。 \ No newline at end of file +注意:每一个行程都有一个唯一的id。 + + + \ No newline at end of file diff --git a/command/repquota.md b/command/repquota.md index 5cb7cd5834..328620a35f 100644 --- a/command/repquota.md +++ b/command/repquota.md @@ -5,7 +5,7 @@ repquota ## 补充说明 -**repquota命** 以报表的格式输出指定分区,或者文件系统的磁盘配额信息。 +**repquota命令** 以报表的格式输出指定分区,或者文件系统的磁盘配额信息。 ### 语法 @@ -32,4 +32,7 @@ repquota(选项)(参数) ``` repquota -a -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/restore.md b/command/restore.md index 858576faa5..66ded52b01 100644 --- a/command/restore.md +++ b/command/restore.md @@ -5,7 +5,7 @@ restore ## 补充说明 -**restore命** 是dump命令的逆过程,用于还原dump命令生成的备份文件。倾倒操作可用来备份文件,而还原操作则是写回这些已备份的文件。 +**restore命令** 是dump命令的逆过程,用于还原dump命令生成的备份文件。倾倒操作可用来备份文件,而还原操作则是写回这些已备份的文件。 ### 语法 @@ -49,4 +49,7 @@ restore rf /dev/hda3 /home/frank ``` restore ft /dev/hda3 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/rlogin.md b/command/rlogin.md index e3a0caf414..ae0b2318bb 100644 --- a/command/rlogin.md +++ b/command/rlogin.md @@ -5,7 +5,7 @@ rlogin ## 补充说明 -**rlogin命** 用于从当前终端登录到远程Linux主机。 +**rlogin命令** 用于从当前终端登录到远程Linux主机。 ### 语法 @@ -25,4 +25,7 @@ rlogin(选项)(参数) ### 参数 -远程主机:指定要登录的远程主机(ip地址或者域名)。 \ No newline at end of file +远程主机:指定要登录的远程主机(ip地址或者域名)。 + + + \ No newline at end of file diff --git a/command/rm.md b/command/rm.md index 6a34a071d8..7ce6fb74e7 100644 --- a/command/rm.md +++ b/command/rm.md @@ -5,7 +5,7 @@ rm ## 补充说明 -**r** **命令**可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。 +**rm** **命令** 可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。 注意:使用rm命令要格外小心。因为一旦删除了一个文件,就无法再恢复它。所以,在删除文件之前,最好再看一下文件的内容,确定是否真要删除。rm命令可以用-i选项,这个选项在使用文件扩展名字符删除多个文件时特别有用。使用这个选项,系统会要求你逐一确定是否要删除。这时,必须输入y并按Enter键,才能删除文件。如果仅按Enter键或其他字符,文件不会被删除。 @@ -46,4 +46,7 @@ Remove example ?y(删除文件example) # rm -r * ``` -应注意,这样做是非常危险的! \ No newline at end of file +应注意,这样做是非常危险的! + + + \ No newline at end of file diff --git a/command/rmdir.md b/command/rmdir.md index 5800e9f886..92c7fae6cb 100644 --- a/command/rmdir.md +++ b/command/rmdir.md @@ -5,7 +5,7 @@ rmdir ## 补充说明 -**rmdir命** 用来删除空目录。当目录不再被使用时,或者磁盘空间已到达使用限定值,就需要删除失去使用价值的目录。利用rmdir命令可以从一个目录中删除一个或多个空的子目录。该命令从一个目录中删除一个或多个子目录,其中dirname佬表示目录名。如果dirname中没有指定路径,则删除当前目录下由dirname指定的目录;如dirname中包含路径,则删除指定位置的目录。删除目录时,必须具有对其父目录的写权限。 +**rmdir命令** 用来删除空目录。当目录不再被使用时,或者磁盘空间已到达使用限定值,就需要删除失去使用价值的目录。利用rmdir命令可以从一个目录中删除一个或多个空的子目录。该命令从一个目录中删除一个或多个子目录,其中dirname佬表示目录名。如果dirname中没有指定路径,则删除当前目录下由dirname指定的目录;如dirname中包含路径,则删除指定位置的目录。删除目录时,必须具有对其父目录的写权限。 注意:子目录被删除之前应该是空目录。就是说,该目录中的所有文件必须用rm命令全部,另外,当前工作目录必须在被删除目录之上,不能是被删除目录本身,也不能是被删除目录的子目录。 @@ -38,4 +38,7 @@ rmdir(选项)(参数) ``` cd /usr/meng/test rmdir -p bin/os_1 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/rmmod.md b/command/rmmod.md index 170d80da84..af52517993 100644 --- a/command/rmmod.md +++ b/command/rmmod.md @@ -5,7 +5,7 @@ rmmod ## 补充说明 -**rmmod命** 用于从当前运行的内核中移除指定的内核模块。执行rmmod指令,可删除不需要的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放如核心。你可以将这些功能编译成一个个单独的模块,待有需要时再分别载入它们。 +**rmmod命令** 用于从当前运行的内核中移除指定的内核模块。执行rmmod指令,可删除不需要的模块。Linux操作系统的核心具有模块化的特性,应此在编译核心时,务须把全部的功能都放如核心。你可以将这些功能编译成一个个单独的模块,待有需要时再分别载入它们。 ### 语法 @@ -36,4 +36,7 @@ raid1 25153 0 [root@localhost boot]# rmmod raid1 [root@localhost boot]# lsmod | grep raid1 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/rpm.md b/command/rpm.md index 3db7824765..312312f7fa 100644 --- a/command/rpm.md +++ b/command/rpm.md @@ -5,7 +5,7 @@ RPM软件包的管理工具 ## 补充说明 -**rpm命** 是RPM软件包的管理工具。rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。 +**rpm命令** 是RPM软件包的管理工具。rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。 ### 语法 @@ -41,7 +41,7 @@ rpm(选项)(参数) ### 实例 -**如何安装rpm软件包** + **如何安装rpm软件包** rpm软件包的安装可以使用程序rpm来完成。执行下面的命令: @@ -66,7 +66,7 @@ rpm -ivh your-package.rpm 此包需要的一些软件你没有安装可以用`rpm --nodeps -i`来忽略此信息,也就是说`rpm -i --force --nodeps`可以忽略所有依赖关系和文件问题,什么包都能安装上,但这种强制安装的软件包不能保证完全发挥功能。 -**如何安装.src.rpm软件包** + **如何安装.src.rpm软件包** 有些软件包是以.src.rpm结尾的,这类软件包是包含了源代码的rpm包,在安装时需要进行编译。这类软件包有两种安装方法: @@ -99,7 +99,7 @@ rpmbuild -bb your-package.specs #一个和你的软件包同名的specs文 执行`rpm -i new-package.rpm`即可安装完成。 -**如何卸载rpm软件包** + **如何卸载rpm软件包** 使用命令`rpm -e`包名,包名可以包含版本号等信息,但是不可以有后缀.rpm,比如卸载软件包proftpd-1.2.8-1,可以使用下列格式: @@ -127,7 +127,7 @@ rpm -e proftpd-1 这说明这个软件被其他软件需要,不能随便卸载,可以用rpm -e --nodeps强制卸载 -**如何不安装但是获取rpm包中的文件** + **如何不安装但是获取rpm包中的文件** 使用工具rpm2cpio和cpio @@ -139,7 +139,7 @@ rpm2cpio xxx.rpm | cpio --extract --make-directories 参数i和extract相同,表示提取文件。v表示指示执行进程,d和make-directory相同,表示根据包中文件原来的路径建立目录,m表示保持文件的更新时间。 -**如何查看与rpm包相关的文件和其他信息** + **如何查看与rpm包相关的文件和其他信息** 下面所有的例子都假设使用软件包mysql-3.23.54a-11 @@ -177,13 +177,13 @@ which mysql 4、一个rpm包中包含那些文件。 -* 一个没有安装过的软件包,使用`rpm -qlp ****.rpm` -* 一个已经安装过的软件包,还可以使用`rpm -ql ****.rpm` +* 一个没有安装过的软件包,使用`rpm -qlp **** .rpm` +* 一个已经安装过的软件包,还可以使用`rpm -ql **** .rpm` 5、如何获取关于一个软件包的版本,用途等相关信息? -* 一个没有安装过的软件包,使用`rpm -qip ****.rpm` -* 一个已经安装过的软件包,还可以使用`rpm -qi ****.rpm` +* 一个没有安装过的软件包,使用`rpm -qip **** .rpm` +* 一个已经安装过的软件包,还可以使用`rpm -qi **** .rpm` 6、某个程序是哪个软件包安装的,或者哪个软件包包含这个程序。 @@ -208,4 +208,7 @@ proftpd-1.2.8-1 rpm -qf /usr/share/doc/proftpd-1.2.8/rfc/rfc0959.txt proftpd-1.2.8-1 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/rsh.md b/command/rsh.md index 84362ac910..61e352cf39 100644 --- a/command/rsh.md +++ b/command/rsh.md @@ -5,7 +5,7 @@ rsh ## 补充说明 -**rsh命** 用于连接到远程的指定主机并执行指定的命令。 +**rsh命令** 用于连接到远程的指定主机并执行指定的命令。 ### 语法 @@ -24,4 +24,7 @@ rsh(选项)(参数) ### 参数 * 远程主机:指定要连接的远程主机; -* 指令:指定要在远程主机上执行的命令。 \ No newline at end of file +* 指令:指定要在远程主机上执行的命令。 + + + \ No newline at end of file diff --git a/command/screen.md b/command/screen.md index dd60b092e8..cf1707e214 100644 --- a/command/screen.md +++ b/command/screen.md @@ -5,13 +5,13 @@ screen ## 补充说明 -**Scree** 是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。 +**Screen** 是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。 -**会话恢复** + **会话恢复** 只要Screen本身没有终止,在其内部运行的会话都可以恢复。这一点对于远程登录的用户特别有用——即使网络连接中断,用户也不会失去对已经打开的命令行会话的控制。只要再次登录到主机上执行screen -r就可以恢复会话的运行。同样在暂时离开的时候,也可以执行分离命令detach,在保证里面的程序正常运行的情况下让Screen挂起(切换到后台)。这一点和图形界面下的VNC很相似。 -**多窗口** + **多窗口** 在Screen环境下,所有的会话都独立的运行,并拥有各自的编号、输入、输出和窗口缓存。用户可以通过快捷键在不同的窗口下切换,并可以自由的重定向各个窗口的输入和输出。Screen实现了基本的文本操作,如复制粘贴等;还提供了类似滚动条的功能,可以查看窗口状况的历史记录。窗口还可以被分区和命名,还可以监视后台窗口的活动。 会话共享 Screen可以让一个或多个用户从不同终端多次登录一个会话,并共享会话的所有特性(比如可以看到完全相同的输出)。它同时提供了窗口访问权限的机制,可以对窗口进行密码保护。 @@ -82,7 +82,7 @@ C-a ] -> paste,把刚刚在 copy mode 选定的内容贴上 ### 使用 screen -**安装screen** + **安装screen** 流行的Linux发行版(例如Red Hat Enterprise Linux)通常会自带screen实用程序,如果没有的话,可以从GNU screen的官方网站下载。 @@ -93,7 +93,7 @@ screen-4.0.3-4.el5 [root@TS-DEV ~]# ``` -**创建一个新的窗口** + **创建一个新的窗口** 安装完成后,直接敲命令screen就可以启动它。但是这样启动的screen会话没有名字,实践上推荐为每个screen会话取一个名字,方便分辨: @@ -109,7 +109,7 @@ screen启动后,会创建第一个窗口,也就是窗口No. 0,并在其中 screen创建一个执行vi david.txt的单窗口会话,退出vi 将退出该窗口/会话。 -**查看窗口和窗口名称** + **查看窗口和窗口名称** 打开多个窗口后,可以使用快捷键C-a w列出当前所有窗口。如果使用文本终端,这个列表会列在屏幕左下角,如果使用X环境下的终端模拟器,这个列表会列在标题栏里。窗口列表的样子一般是这样: @@ -121,7 +121,7 @@ screen创建一个执行vi david.txt的单窗口会话,退出vi 将退出该 Screen默认会为窗口命名为编号和窗口中运行程序名的组合,上面的例子中窗口都是默认名字。练习了上面查看窗口的方法,你可能就希望各个窗口可以有不同的名字以方便区分了。可以使用快捷键C-a A来为当前窗口重命名,按下快捷键后,Screen会允许你为当前窗口输入新的名字,回车确认。 -**会话分离与恢复** + **会话分离与恢复** 你可以不中断screen窗口中程序的运行而暂时断开(detach)screen会话,并在随后时间重新连接(attach)该会话,重新控制各窗口中运行的程序。例如,我们打开一个screen窗口编辑/tmp/david.txt文件: @@ -155,13 +155,13 @@ Screen默认会为窗口命名为编号和窗口中运行程序名的组合, ! -**清除dead 会话** + **清除dead 会话** 如果由于某种原因其中一个会话死掉了(例如人为杀掉该会话),这时screen -list会显示该会话为dead状态。使用screen -wipe命令清除该会话: ! -**关闭或杀死窗口** + **关闭或杀死窗口** 正常情况下,当你退出一个窗口中最后一个程序(通常是bash)后,这个窗口就关闭了。另一个关闭窗口的方法是使用C-a k,这个快捷键杀死当前的窗口,同时也将杀死这个窗口中正在运行的进程。 @@ -171,7 +171,7 @@ Screen默认会为窗口命名为编号和窗口中运行程序名的组合, ### screen 高级应用  -**会话共享** + **会话共享** 还有一种比较好玩的会话恢复,可以实现会话共享。假设你在和朋友在不同地点以相同用户登录一台机器,然后你创建一个screen会话,你朋友可以在他的终端上命令: @@ -181,13 +181,13 @@ Screen默认会为窗口命名为编号和窗口中运行程序名的组合, 这个命令会将你朋友的终端Attach到你的Screen会话上,并且你的终端不会被Detach。这样你就可以和朋友共享同一个会话了,如果你们当前又处于同一个窗口,那就相当于坐在同一个显示器前面,你的操作会同步演示给你朋友,你朋友的操作也会同步演示给你。当然,如果你们切换到这个会话的不同窗口中去,那还是可以分别进行不同的操作的。 -**会话锁定与解锁** + **会话锁定与解锁** Screen允许使用快捷键C-a s锁定会话。锁定以后,再进行任何输入屏幕都不会再有反应了。但是要注意虽然屏幕上看不到反应,但你的输入都会被Screen中的进程接收到。快捷键C-a q可以解锁一个会话。 也可以使用C-a x锁定会话,不同的是这样锁定之后,会话会被Screen所属用户的密码保护,需要输入密码才能继续访问这个会话。 -**发送命令到screen会话** + **发送命令到screen会话** 在Screen会话之外,可以通过screen命令操作一个Screen会话,这也为使用Screen作为脚本程序增加了便利。关于Screen在脚本中的应用超出了入门的范围,这里只看一个例子,体会一下在会话之外对Screen的操作: @@ -197,7 +197,7 @@ root@TS-DEV ~ www.baidu.com 这个命令在一个叫做sandy的screen会话中创建一个新窗口,并在其中运行ping命令。 -**屏幕分割** + **屏幕分割** 现在显示器那么大,将一个屏幕分割成不同区域显示不同的Screen窗口显然是个很酷的事情。可以使用快捷键C-a S将显示器水平分割,Screen 4.00.03版本以后,也支持垂直分屏,快捷键是C-a |。分屏以后,可以使用C-a 在各个区块间切换,每一区块上都可以创建窗口并在其中运行进程。 @@ -205,7 +205,7 @@ root@TS-DEV ~ www.baidu.com ! -**C/P模式和操作** + **C/P模式和操作** screen的另一个很强大的功能就是可以在不同窗口之间进行复制粘贴了。使用快捷键C-a 或者C-a [可以进入copy/paste模式,这个模式下可以像在vi中一样移动光标,并可以使用空格键设置标记。其实在这个模式下有很多类似vi的操作,譬如使用/进行搜索,使用y快速标记一行,使用w快速标记一个单词等。关于C/P模式下的高级操作,其文档的这一部分有比较详细的说明。 @@ -213,8 +213,11 @@ screen的另一个很强大的功能就是可以在不同窗口之间进行复 ! -**更多screen功能** + **更多screen功能** 同大多数UNIX程序一样,GNU Screen提供了丰富强大的定制功能。你可以在Screen的默认两级配置文件/etc/screenrc和$HOME/.screenrc中指定更多,例如设定screen选项,定制绑定键,设定screen会话自启动窗口,启用多用户模式,定制用户访问权限控制等等。如果你愿意的话,也可以自己指定screen配置文件。 -以多用户功能为例,screen默认是以单用户模式运行的,你需要在配置文件中指定multiuser on 来打开多用户模式,通过acl*(acladd,acldel,aclchg...)命令,你可以灵活配置其他用户访问你的screen会话。更多配置文件内容请参考screen的man页。 \ No newline at end of file +以多用户功能为例,screen默认是以单用户模式运行的,你需要在配置文件中指定multiuser on 来打开多用户模式,通过acl*(acladd,acldel,aclchg...)命令,你可以灵活配置其他用户访问你的screen会话。更多配置文件内容请参考screen的man页。 + + + \ No newline at end of file diff --git a/command/sed.md b/command/sed.md index 56ca205347..8412a28316 100644 --- a/command/sed.md +++ b/command/sed.md @@ -5,49 +5,11 @@ sed ## 补充说明 -
- -
本文索引
- -[隐藏)] - -* sed的选项、命令、替换标记 - * 选项 - * 参数 - * sed命令 - * sed替换标记 - * sed元字符集 -* sed用法实例 - * 替换操作:s命令 - * 全面替换标记g - * 定界符 - * 删除操作:d命令 - * 已匹配字符串标记& - * 子串匹配标记\1 - * 组合多个表达式 - * 引用 - * 选定行的范围:,(逗号) - * 多点编辑:e命令 - * 从文件读入:r命令 - * 写入文件:w命令   - * 追加(行下):a\命令 - * 插入(行上):i\命令 - * 下一个:n命令 - * 变形:y命令 - * 退出:q命令 - * 保持和获取:h命令和G命令 - * 保持和互换:h命令和x命令 - * 脚本scriptfile - * 打印奇数行或偶数行 - * 打印匹配字符串的下一行 - -
- -**sed**是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。 +**sed** 是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。 ## sed的选项、命令、替换标记 -**命令格式** + **命令格式** ``` sed options' file(s) @@ -71,61 +33,61 @@ sed options ### sed命令 ``` -**a\** 在当前行下面插入文本。 -**i\** 在当前行上面插入文本。 -**c\** 把选定的行改为新的文本。 -**d** 删除,删除选择的行。 -**D** 删除模板块的第一行。 -**s** 替换指定字符 -**h** 拷贝模板块的内容到内存中的缓冲区。 -**H** 追加模板块的内容到内存中的缓冲区。 -**g** 获得内存缓冲区的内容,并替代当前模板块中的文本。 -**G** 获得内存缓冲区的内容,并追加到当前模板块文本的后面。 -**l** 列表不能打印字符的清单。 -**n** 读取下一个输入行,用下一个命令处理新的行而不是用第一个命令。 -**N** 追加下一个输入行到模板块后面并在二者间嵌入一个新行,改变当前行号码。 -**p** 打印模板块的行。 -**P**(大写) 打印模板块的第一行。 -**q** 退出Sed。 -**b lable** 分支到脚本中带有标记的地方,如果分支不存在则分支到脚本的末尾。 -**r file** 从file中读行。 -**t label** if分支,从最后一行开始,条件一旦满足或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。 -**T label** 错误分支,从最后一行开始,一旦发生错误或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。 -**w file** 写并追加模板块到file末尾。 -**W file** 写并追加模板块的第一行到file末尾。 -**!** 表示后面的命令对所有没有被选定的行发生作用。 -**=** 打印当前行号码。 -**#** 把注释扩展到下一个换行符以前。 + **a\** 在当前行下面插入文本。 + **i\** 在当前行上面插入文本。 + **c\** 把选定的行改为新的文本。 + **d** 删除,删除选择的行。 + **D** 删除模板块的第一行。 + **s** 替换指定字符 + **h** 拷贝模板块的内容到内存中的缓冲区。 + **H** 追加模板块的内容到内存中的缓冲区。 + **g** 获得内存缓冲区的内容,并替代当前模板块中的文本。 + **G** 获得内存缓冲区的内容,并追加到当前模板块文本的后面。 + **l** 列表不能打印字符的清单。 + **n** 读取下一个输入行,用下一个命令处理新的行而不是用第一个命令。 + **N** 追加下一个输入行到模板块后面并在二者间嵌入一个新行,改变当前行号码。 + **p** 打印模板块的行。 + **P** (大写) 打印模板块的第一行。 + **q** 退出Sed。 + **b lable** 分支到脚本中带有标记的地方,如果分支不存在则分支到脚本的末尾。 + **r file** 从file中读行。 + **t label** if分支,从最后一行开始,条件一旦满足或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。 + **T label** 错误分支,从最后一行开始,一旦发生错误或者T,t命令,将导致分支到带有标号的命令处,或者到脚本的末尾。 + **w file** 写并追加模板块到file末尾。 + **W file** 写并追加模板块的第一行到file末尾。 + **!** 表示后面的命令对所有没有被选定的行发生作用。 + **=** 打印当前行号码。 + **#** 把注释扩展到下一个换行符以前。 ``` ### sed替换标记 ``` -**g** 表示行内全面替换。 -**p** 表示打印行。 -**w** 表示把行写入一个文件。 -**x** 表示互换模板块中的文本和缓冲区中的文本。 -**y** 表示把一个字符翻译为另外的字符(但是不用于正则表达式) -**\1** 子串匹配标记 -**&** 已匹配字符串标记 + **g** 表示行内全面替换。 + **p** 表示打印行。 + **w** 表示把行写入一个文件。 + **x** 表示互换模板块中的文本和缓冲区中的文本。 + **y** 表示把一个字符翻译为另外的字符(但是不用于正则表达式) + **\1** 子串匹配标记 + **&** 已匹配字符串标记 ``` ### sed元字符集 ``` -**^** 匹配行开始,如:/^sed/匹配所有以sed开头的行。 -**$** 匹配行结束,如:/sed$/匹配所有以sed结尾的行。 -**.** 匹配一个非换行符的任意字符,如:/s.d/匹配s后接一个任意字符,最后是d。 -***** 匹配0个或多个字符,如:/*sed/匹配所有模板是一个或多个空格后紧跟sed的行。 -**]ed/匹配sed和Sed。 -**[^]** 匹配一个不在指定范围内的字符,如:/[^A-RT-Z]ed/匹配不包含A-R和T-Z的一个字母开头,紧跟ed的行。 -**\(..\)** 匹配子串,保存匹配的字符,如s/\(love\)able/\1rs,loveable被替换成lovers。 -**&** 保存搜索字符用来替换其他字符,如s/love/**&**/,love这成**love**。 -**\<** 匹配单词的开始,如:/\** 匹配单词的结束,如/love\>/匹配包含以love结尾的单词的行。 -**x\{m\}** 重复字符x,m次,如:/0\{5\}/匹配包含5个0的行。 -**x\{m,\}** 重复字符x,至少m次,如:/0\{5,\}/匹配至少有5个0的行。 -**x\{m,n\}** 重复字符x,至少m次,不多于n次,如:/0\{5,10\}/匹配5~10个0的行。 + **^** 匹配行开始,如:/^sed/匹配所有以sed开头的行。 + **$** 匹配行结束,如:/sed$/匹配所有以sed结尾的行。 + **.** 匹配一个非换行符的任意字符,如:/s.d/匹配s后接一个任意字符,最后是d。 + **** * 匹配0个或多个字符,如:/*sed/匹配所有模板是一个或多个空格后紧跟sed的行。 + **]ed/匹配sed和Sed。 + **[^]** 匹配一个不在指定范围内的字符,如:/[^A-RT-Z]ed/匹配不包含A-R和T-Z的一个字母开头,紧跟ed的行。 + **\(..\)** 匹配子串,保存匹配的字符,如s/\(love\)able/\1rs,loveable被替换成lovers。 + **&** 保存搜索字符用来替换其他字符,如s/love/ **&** /,love这成 **love** 。 + **\<** 匹配单词的开始,如:/\** 匹配单词的结束,如/love\>/匹配包含以love结尾的单词的行。 + **x\{m\}** 重复字符x,m次,如:/0\{5\}/匹配包含5个0的行。 + **x\{m,\}** 重复字符x,至少m次,如:/0\{5,\}/匹配至少有5个0的行。 + **x\{m,n\}** 重复字符x,至少m次,不多于n次,如:/0\{5,10\}/匹配5~10个0的行。 ``` ## sed用法实例 @@ -138,11 +100,11 @@ sed options sed 's/book/books/' file ``` -**-n选项**和**p命令**一起使用表示只打印那些发生替换的行: + **-n选项** 和 **p命令** 一起使用表示只打印那些发生替换的行: sed -n 's/test/TEST/p' file -直接编辑文件**选项-i**,会匹配file文件中每一行的第一个book替换为books: +直接编辑文件 **选项-i** ,会匹配file文件中每一行的第一个book替换为books: ``` sed -i 's/book/books/g' file @@ -241,7 +203,7 @@ echo this is digit 7 in a number | sed 's/digit \(0-9/\1/' this is 7 in a number ``` -命令中 digit 7,被替换成了 7。样式匹配到的子串是 7,\(..\) 用于匹配子串,对于匹配到的第一个子串就标记为 **\1**,依此类推匹配到的第二个结果就是 **\2**,例如: +命令中 digit 7,被替换成了 7。样式匹配到的子串是 7,\(..\) 用于匹配子串,对于匹配到的第一个子串就标记为 **\1** ,依此类推匹配到的第二个结果就是 **\2** ,例如: ``` echo aaa BBB | sed 's/\(a-z \(A-Z/\2 \1/' @@ -429,4 +391,7 @@ grep -A 1 SCC URFILE sed -n '/SCC/{n;p}' URFILE awk '/SCC/{getline; print}' URFILE -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/set.md b/command/set.md index fb4359145e..8a4fecf795 100644 --- a/command/set.md +++ b/command/set.md @@ -5,7 +5,7 @@ set ## 补充说明 -**set命** 作用主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。使用set更改shell特性时,符号"+"和"-"的作用分别是打开和关闭指定的模式。set命令不能够定义新的shell变量。如果要定义新的变量,可以使用declare命令以`变量名=值`的格式进行定义即可。 +**set命令** 作用主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。使用set更改shell特性时,符号"+"和"-"的作用分别是打开和关闭指定的模式。set命令不能够定义新的shell变量。如果要定义新的变量,可以使用declare命令以`变量名=值`的格式进行定义即可。 ### 语法 @@ -60,4 +60,7 @@ set -a mylove #设置为环境变量 env | grep mylove #显示环境变量值 ``` -此时,该命令执行后,将输出查询到的环境变量值。 \ No newline at end of file +此时,该命令执行后,将输出查询到的环境变量值。 + + + \ No newline at end of file diff --git a/command/shutdown.md b/command/shutdown.md index 2963387758..8fd2433094 100644 --- a/command/shutdown.md +++ b/command/shutdown.md @@ -5,7 +5,7 @@ shutdown ## 补充说明 -**shutdown命** 用来系统关机命令。shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作。 +**shutdown命令** 用来系统关机命令。shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作。 ### 语法 @@ -43,4 +43,7 @@ shutdown -h now ``` shutdown +5 "System will shutdown after 5 minutes" -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/sort.md b/command/sort.md index 495d6fdf2e..c54697d89a 100644 --- a/command/sort.md +++ b/command/sort.md @@ -5,7 +5,7 @@ sort ## 补充说明 -**sort命** 是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出。sort命令既可以从特定的文件,也可以从stdin中获取输入。 +**sort命令** 是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出。sort命令既可以从特定的文件,也可以从stdin中获取输入。 ### 语法 @@ -120,7 +120,7 @@ AAA:BB:CC # -n是按照数字大小排序,-r是以相反顺序,-k是指定需要爱排序的栏位,-t指定栏位分隔符为冒号 ``` -**-k选项的具体语法格式:** + **-k选项的具体语法格式:** -k选项的语法格式: @@ -131,7 +131,7 @@ FStart.CStart Modifie,FEnd.CEnd Modifier ``` -这个语法格式可以被其中的逗号`,`分为两大部分,**Start**部分和**End**部分。Start部分也由三部分组成,其中的Modifier部分就是我们之前说过的类似n和r的选项部分。我们重点说说`Start`部分的`FStart`和`C.Start`。`C.Start`也是可以省略的,省略的话就表示从本域的开头部分开始。`FStart.CStart`,其中`FStart`就是表示使用的域,而`CStart`则表示在`FStart`域中从第几个字符开始算“排序首字符”。同理,在End部分中,你可以设定`FEnd.CEnd`,如果你省略`.CEnd`,则表示结尾到“域尾”,即本域的最后一个字符。或者,如果你将CEnd设定为0(零),也是表示结尾到“域尾”。 +这个语法格式可以被其中的逗号`,`分为两大部分, **Start** 部分和 **End** 部分。Start部分也由三部分组成,其中的Modifier部分就是我们之前说过的类似n和r的选项部分。我们重点说说`Start`部分的`FStart`和`C.Start`。`C.Start`也是可以省略的,省略的话就表示从本域的开头部分开始。`FStart.CStart`,其中`FStart`就是表示使用的域,而`CStart`则表示在`FStart`域中从第几个字符开始算“排序首字符”。同理,在End部分中,你可以设定`FEnd.CEnd`,如果你省略`.CEnd`,则表示结尾到“域尾”,即本域的最后一个字符。或者,如果你将CEnd设定为0(零),也是表示结尾到“域尾”。 从公司英文名称的第二个字母开始进行排序: @@ -157,4 +157,7 @@ guge 50 3000 ``` -由于只对第二个字母进行排序,所以我们使用了`-k 1.2,1.2`的表示方式,表示我们“只”对第二个字母进行排序。(如果你问“我使用`-k 1.2`怎么不行?”,当然不行,因为你省略了End部分,这就意味着你将对从第二个字母起到本域最后一个字符为止的字符串进行排序)。对于员工工资进行排 序,我们也使用了`-k 3,3`,这是最准确的表述,表示我们“只”对本域进行排序,因为如果你省略了后面的3,就变成了我们“对第3个域开始到最后一个域位置的内容进行排序” 了。 \ No newline at end of file +由于只对第二个字母进行排序,所以我们使用了`-k 1.2,1.2`的表示方式,表示我们“只”对第二个字母进行排序。(如果你问“我使用`-k 1.2`怎么不行?”,当然不行,因为你省略了End部分,这就意味着你将对从第二个字母起到本域最后一个字符为止的字符串进行排序)。对于员工工资进行排 序,我们也使用了`-k 3,3`,这是最准确的表述,表示我们“只”对本域进行排序,因为如果你省略了后面的3,就变成了我们“对第3个域开始到最后一个域位置的内容进行排序” 了。 + + + \ No newline at end of file diff --git a/command/spell.md b/command/spell.md index 94c03fecab..4aa96ad99e 100644 --- a/command/spell.md +++ b/command/spell.md @@ -5,7 +5,7 @@ spell ## 补充说明 -**spell命** 对文件进行拼写检查,并把拼写错误的单词输出。 +**spell命令** 对文件进行拼写检查,并把拼写错误的单词输出。 ### 语法 @@ -15,4 +15,7 @@ spell(参数) ### 参数 -文件:指定需要进行拼写检查的文件。 \ No newline at end of file +文件:指定需要进行拼写检查的文件。 + + + \ No newline at end of file diff --git a/command/split.md b/command/split.md index b2dedc9434..d43047a9be 100644 --- a/command/split.md +++ b/command/split.md @@ -5,7 +5,7 @@ split ## 补充说明 -**split命** 可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,比如为提高可读性,生成日志等。 +**split命令** 可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,比如为提高可读性,生成日志等。 ### 选项 @@ -55,4 +55,7 @@ date.file split_file000 split_file001 split_file002 split_file003 split_fil ``` split -l 10 date.file -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/stat.md b/command/stat.md index 90de4a47f7..4f64851346 100644 --- a/command/stat.md +++ b/command/stat.md @@ -5,7 +5,7 @@ stat ## 补充说明 -**stat命** 用于显示文件的状态信息。stat命令的输出信息比ls命令的输出信息要更详细。 +**stat命令** 用于显示文件的状态信息。stat命令的输出信息比ls命令的输出信息要更详细。 ### 语法 @@ -52,4 +52,7 @@ Inodes: Total: 249364480 Free: 249139691 [root@localhost ~]# stat -t myfile myfile 0 8 81a4 0 0 fd00 194805815 1 0 0 1292127755 1286628261 1286628261 4096 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/su.md b/command/su.md index 8ee81ece92..1c6b3958b9 100644 --- a/command/su.md +++ b/command/su.md @@ -5,7 +5,7 @@ su ## 补充说明 -**su命** 用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。 +**su命令** 用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。 ### 语法 @@ -47,4 +47,7 @@ su root -f ``` su -test -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/sudo.md b/command/sudo.md index 2c1717653e..5df7a34f3e 100644 --- a/command/sudo.md +++ b/command/sudo.md @@ -5,7 +5,7 @@ sudo ## 补充说明 -**sudo命** 用来以其他身份来执行命令,预设的身份为root。在`/etc/sudoers`中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。 +**sudo命令** 用来以其他身份来执行命令,预设的身份为root。在`/etc/sudoers`中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。 ### 语法 @@ -117,7 +117,7 @@ install.log.syslog 当然,你也可以说“某些命令用户foobar不可以运行”,通过使用!操作符,但这不是一个好主意。因为,用!操作符来从ALL中“剔出”一些命令一般是没什么效果的,一个用户完全可以把那个命令拷贝到别的地方,换一个名字后再来运行。 -**日志与安全** + **日志与安全** sudo为安全考虑得很周到,不仅可以记录日志,还能在有必要时向系统管理员报告。但是,sudo的日志功能不是自动的,必须由管理员开启。这样来做: @@ -168,4 +168,7 @@ PWD=/home/foobar ; USER=root ; COMMAND=/bin/cat /etc/shadow [foobar@localhost ~]$ sudo ls /root > /etc/shadowbash: /etc/shadow: 权限不够 ``` -sudo 有自己的方式来保护安全。以root的身份执行`sudo-V`,查看一下sudo的设置。因为考虑到安全问题,一部分环境变量并没有传递给sudo后面的命令,或者被检查后再传递的,比如:PATH,HOME,SHELL等。当然,你也可以通过sudoers来配置这些环境变量。 \ No newline at end of file +sudo 有自己的方式来保护安全。以root的身份执行`sudo-V`,查看一下sudo的设置。因为考虑到安全问题,一部分环境变量并没有传递给sudo后面的命令,或者被检查后再传递的,比如:PATH,HOME,SHELL等。当然,你也可以通过sudoers来配置这些环境变量。 + + + \ No newline at end of file diff --git a/command/swapoff.md b/command/swapoff.md index 82bd17b28a..e7f89af479 100644 --- a/command/swapoff.md +++ b/command/swapoff.md @@ -5,7 +5,7 @@ swapoff ## 补充说明 -**swapoff命** 用于关闭指定的交换空间(包括交换文件和交换分区)。swapoff实际上为swapon的符号连接,可用来关闭系统的交换区。 +**swapoff命令** 用于关闭指定的交换空间(包括交换文件和交换分区)。swapoff实际上为swapon的符号连接,可用来关闭系统的交换区。 ### 语法 @@ -29,4 +29,7 @@ swapoff(选项)(参数) ``` swapoff /dev/sda2 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/swapon.md b/command/swapon.md index 5d33bfe049..8f52e63f33 100644 --- a/command/swapon.md +++ b/command/swapon.md @@ -5,7 +5,7 @@ swapon ## 补充说明 -**swapon命** 用于激活Linux系统中交换空间,Linux系统的内存管理必须使用交换区来建立虚拟内存。 +**swapon命令** 用于激活Linux系统中交换空间,Linux系统的内存管理必须使用交换区来建立虚拟内存。 ### 语法 @@ -36,4 +36,7 @@ swapon -s Filename type Size Used Priority /dev/hda5 partition 506008 96 -1 /dev/hdb4 partition 489972 0 -2 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/sync.md b/command/sync.md index 48506841d0..915922bceb 100644 --- a/command/sync.md +++ b/command/sync.md @@ -5,7 +5,7 @@ sync ## 补充说明 -**sync命** 用于强制被改变的内容立刻写入磁盘,更新超块信息。 +**sync命令** 用于强制被改变的内容立刻写入磁盘,更新超块信息。 在Linux/Unix系统中,在文件或数据处理过程中一般先放到内存缓冲区中,等到适当的时候再写入磁盘,以提高系统的运行效率。sync命令则可用来强制将内存缓冲区中的数据立即写入磁盘中。用户通常不需执行sync命令,系统会自动执行update或bdflush操作,将缓冲区的数据写 入磁盘。只有在update或bdflush无法执行或用户需要非正常关机时,才需手动执行sync命令。 @@ -31,4 +31,7 @@ linux系统为了提高读写磁盘的效率,会先将数据放在一块buffer sync命令用来flush文件系统buffer,这样数据才会真正的写到磁盘中,并且buffer才能够释放出来,flush就是用来清空buffer。sync命令会强制将数据写入磁盘中,并释放该数据对应的buffer,所以常常会在写磁盘后输入sync命令来将数据真正的写入磁盘。 -如果不去手动的输入sync命令来真正的去写磁盘,linux系统也会周期性的去sync数据。 \ No newline at end of file +如果不去手动的输入sync命令来真正的去写磁盘,linux系统也会周期性的去sync数据。 + + + \ No newline at end of file diff --git a/command/talk.md b/command/talk.md index 30416db2c6..6bb352e8bc 100644 --- a/command/talk.md +++ b/command/talk.md @@ -5,7 +5,7 @@ talk ## 补充说明 -**talk命** 是talk服务器的客户端工具,通过talk命令可以让用户和其他用户聊天。linux中talk命令参数程序的使用很简单,只要知道交谈对象的地址,就可以邀请对方交谈。 +**talk命令** 是talk服务器的客户端工具,通过talk命令可以让用户和其他用户聊天。linux中talk命令参数程序的使用很简单,只要知道交谈对象的地址,就可以邀请对方交谈。 ### 语法 @@ -40,9 +40,9 @@ talk: respond with: talk jdx@rs6000.cic.test.com talk jdx@rs6000.cic.test.com ``` -之后,连接建立成功,两个用户就可以进行交谈了。这时,双方的终端屏幕上都将显示信息**[Connection established]**并响铃,同时屏幕被linux中talk命令程序以一条水平线分割为上下两部分,上半部分用来显示用户自己输入的内容,下半部分用来显示对方输入的内容。两个用户可以同时输入,他们输入的内容将会立即显示在双方的屏幕上。 +之后,连接建立成功,两个用户就可以进行交谈了。这时,双方的终端屏幕上都将显示信息 **[Connection established]** 并响铃,同时屏幕被linux中talk命令程序以一条水平线分割为上下两部分,上半部分用来显示用户自己输入的内容,下半部分用来显示对方输入的内容。两个用户可以同时输入,他们输入的内容将会立即显示在双方的屏幕上。 -在用户进行输入时,可按**BACKSPACE**见来更正前一个字符,也可按**CTRL+w**来删除一个完整的单词,或者用**CTRL+U**来删除一整行,另外,用户还可以通过按**CTRL+L**来刷新屏幕。如果要结束交谈,可由任何一方按下**CTRL+C**来中断连接,但在结束对话前最好道声“再见”,并等待对方回应。linux中talk命令程序结束时,在屏幕上将回显示一条信息: +在用户进行输入时,可按 **BACKSPACE** 见来更正前一个字符,也可按 **CTRL+w** 来删除一个完整的单词,或者用 **CTRL+U** 来删除一整行,另外,用户还可以通过按 **CTRL+L** 来刷新屏幕。如果要结束交谈,可由任何一方按下 **CTRL+C** 来中断连接,但在结束对话前最好道声“再见”,并等待对方回应。linux中talk命令程序结束时,在屏幕上将回显示一条信息: ``` [Connection closing. Exiting] @@ -60,7 +60,7 @@ talk jdx@rs6000.cic.test.com [Ringing your party again] ``` -如果用户不愿等待,则可以按**CTRL+C**终止linux中talk命令程序。还有的时候系统可能出现下面的信息: +如果用户不愿等待,则可以按 **CTRL+C** 终止linux中talk命令程序。还有的时候系统可能出现下面的信息: ``` [Checking for invitation on caller’s machine] @@ -82,4 +82,7 @@ mesg n 不过要注意的是,一旦完成紧急工作。最好立即打开信息接收开关(用命令`mesg y`),否则将会失去很多信息交流的机会。 -以上是linux中talk命令参数的是使用方法。 \ No newline at end of file +以上是linux中talk命令参数的是使用方法。 + + + \ No newline at end of file diff --git a/command/tar.md b/command/tar.md index d081577e99..0833a5fab5 100644 --- a/command/tar.md +++ b/command/tar.md @@ -5,7 +5,7 @@ Linux下的归档使用工具,用来打包和备份。 ## 补充说明 -**tar命** 可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。 +**tar命令** 可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。 首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。 @@ -51,7 +51,7 @@ tar(选项)(参数) ### 实例 -**将文件全部打包成tar包**: + **将文件全部打包成tar包** : ``` tar -cvf log.tar log2012.log 仅打包,不压缩! @@ -61,7 +61,7 @@ tar -jcvf log.tar.bz2 log2012.log 打包后,以 bzip2 压缩 在选项`f`之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。 如果加`z`选项,则以.tar.gz或.tgz来代表gzip压缩过的tar包;如果加`j`选项,则以.tar.bz2来作为tar包名。 -**查阅上述tar包内有哪些文件**: + **查阅上述tar包内有哪些文件** : ``` tar -ztvf log.tar.gz @@ -69,7 +69,7 @@ tar -ztvf log.tar.gz 由于我们使用 gzip 压缩的log.tar.gz,所以要查阅log.tar.gz包内的文件时,就得要加上`z`这个选项了。 -**将tar包解压缩**: + **将tar包解压缩** : ``` tar -zxvf /opt/soft/test/log.tar.gz @@ -77,7 +77,7 @@ tar -zxvf /opt/soft/test/log.tar.gz 在预设的情况下,我们可以将压缩档在任何地方解开的 -**只将tar内的部分文件解压出来**: + **只将tar内的部分文件解压出来** : ``` tar -zxvf /opt/soft/test/log30.tar.gz log2013.log @@ -85,7 +85,7 @@ tar -zxvf /opt/soft/test/log30.tar.gz log2013.log 我可以透过`tar -ztvf`来查阅 tar 包内的文件名称,如果单只要一个文件,就可以透过这个方式来解压部分文件! -**文件备份下来,并且保存其权限**: + **文件备份下来,并且保存其权限** : ``` tar -zcvpf log31.tar.gz log2014.log log2015.log log2016.log @@ -93,22 +93,25 @@ tar -zcvpf log31.tar.gz log2014.log log2015.log log2016.log 这个`-p`的属性是很重要的,尤其是当您要保留原本文件的属性时。 -**在文件夹当中,比某个日期新的文件才备份**: + **在文件夹当中,比某个日期新的文件才备份** : ``` tar -N "2012/11/13" -zcvf log17.tar.gz test ``` -**备份文件夹内容是排除部分文件:** + **备份文件夹内容是排除部分文件:** ``` tar --exclude scf/service -zcvf scf.tar.gz scf/* ``` -**其实最简单的使用 tar 就只要记忆底下的方式即可:** + **其实最简单的使用 tar 就只要记忆底下的方式即可:** ``` 压 缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称 查 询:tar -jtv -f filename.tar.bz2 解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/tcpdump.md b/command/tcpdump.md index 09b6ddd6df..3caf0bba4d 100644 --- a/command/tcpdump.md +++ b/command/tcpdump.md @@ -5,7 +5,7 @@ tcpdump ## 补充说明 -**tcpdump命** 是一款sniffer工具,它可以打印所有经过网络接口的数据包的头信息,也可以使用`-w`选项将数据包保存到文件中,方便以后分析。 +**tcpdump命令** 是一款sniffer工具,它可以打印所有经过网络接口的数据包的头信息,也可以使用`-w`选项将数据包保存到文件中,方便以后分析。 ### 语法 @@ -45,13 +45,13 @@ tcpdump(选项) ### 实例 -**直接启动tcpdump将监视第一个网络接口上所有流过的数据包** + **直接启动tcpdump将监视第一个网络接口上所有流过的数据包** ``` tcpdump ``` -**监视指定网络接口的数据包** + **监视指定网络接口的数据包** ``` tcpdump -i eth1 @@ -59,7 +59,7 @@ tcpdump -i eth1 如果不指定网卡,默认tcpdump只会监视第一个网络接口,一般是eth0,下面的例子都没有指定网络接口。 -**监视指定主机的数据包** + **监视指定主机的数据包** 打印所有进入或离开sundown的数据包。 @@ -109,7 +109,7 @@ tcpdump -i eth0 src host hostname tcpdump -i eth0 dst host hostname ``` -**监视指定主机和端口的数据包** + **监视指定主机和端口的数据包** 如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令 @@ -123,7 +123,7 @@ tcpdump tcp port 23 host 210.27.48.1 tcpdump udp port 123 ``` -**监视指定网络的数据包** + **监视指定网络的数据包** 打印本地主机与Berkeley网络上的主机之间的所有通信数据包 @@ -147,4 +147,7 @@ tcpdump 'gateway snup and (port ftp or ftp-data)' tcpdump ip and not net localnet ``` -如果本地网络通过网关连到了另一网络,则另一网络并不能算作本地网络。 \ No newline at end of file +如果本地网络通过网关连到了另一网络,则另一网络并不能算作本地网络。 + + + \ No newline at end of file diff --git a/command/tee.md b/command/tee.md index 65fdd4d1cb..81ae6d9f29 100644 --- a/command/tee.md +++ b/command/tee.md @@ -5,7 +5,7 @@ tee ## 补充说明 -**tee命** 用于将数据重定向到文件,另一方面还可以提供一份重定向数据的副本作为后续命令的stdin。简单的说就是把数据重定向到给定文件和屏幕上。 +**tee命令** 用于将数据重定向到文件,另一方面还可以提供一份重定向数据的副本作为后续命令的stdin。简单的说就是把数据重定向到给定文件和屏幕上。 ! @@ -58,4 +58,7 @@ root@localhost text -n 9 www.pdf 10 WWW.pdf 11 WWW.pef -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/telnet.md b/command/telnet.md index 6917a49d47..1e998f2533 100644 --- a/command/telnet.md +++ b/command/telnet.md @@ -5,7 +5,7 @@ telnet ## 补充说明 -**telnet命** 用于登录远程主机,对远程主机进行管理。telnet因为采用明文传送报文,安全性不好,很多Linux服务器都不开放telnet服务,而改用更安全的ssh方式了。但仍然有很多别的系统可能采用了telnet方式来提供远程登录,因此弄清楚telnet客户端的使用方式仍是很有必要的。 +**telnet命令** 用于登录远程主机,对远程主机进行管理。telnet因为采用明文传送报文,安全性不好,很多Linux服务器都不开放telnet服务,而改用更安全的ssh方式了。但仍然有很多别的系统可能采用了telnet方式来提供远程登录,因此弄清楚telnet客户端的使用方式仍是很有必要的。 ### 语法 @@ -54,4 +54,7 @@ Escape character is '^]'. login: root Password: Login incorrect -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/tftp.md b/command/tftp.md index b35728e95f..828a384773 100644 --- a/command/tftp.md +++ b/command/tftp.md @@ -5,7 +5,7 @@ tftp ## 补充说明 -**tftp命** 用在本机和tftp服务器之间使用TFTP协议传输文件。 +**tftp命令** 用在本机和tftp服务器之间使用TFTP协议传输文件。 TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现。嵌入式linux的tftp开发环境包括两个方面:一是linux服务器端的tftp-server支持,二是嵌入式目标系统的tftp-client支持。因为u-boot本身内置支持tftp-client,所以嵌入式目标系统端就不用配置了。下面就详细介绍一下linux服务器端tftp-server的配置。 @@ -30,7 +30,7 @@ tftp(选项)(参数) ### 实例 -**1、安装tftp服务器** + **1、安装tftp服务器** 需要安装xinetd、tftp和tftp-server 3个软件 @@ -50,7 +50,7 @@ rpm -ivh tftp-0.48-3.fc9.i386.rpm rpm -ivh tftp-server-0.48-3.fc9.i386.rpm ``` -**2、配置tftp服务器** + **2、配置tftp服务器** 修改/etc/xinetd.d/tftp文件,将其中的disable=yes改为disable=no。主要是设置TFTP服务器的根目录,开启服务。修改后的文件如下: @@ -72,7 +72,7 @@ service tftp 说明:修改项`server_args= -s -c`,其中处可以改为你的tftp-server的根目录,参数-s指定chroot,-c指定了可以创建文件。 -**3、启动tftp服务器并关闭防火墙** + **3、启动tftp服务器并关闭防火墙** ``` /etc/init.d/iptables stop //关闭防火墙 @@ -92,7 +92,7 @@ netstat -a | grep tftp 显示结果为`udp 0 0 *:tftp *:*`表明服务已经开启,就表明tftp配置成功了。 -**5、tftp使用** + **5、tftp使用** 复制一个文件到tftp服务器目录,然后在主机启动tftp软件,进行简单测试。 @@ -104,7 +104,7 @@ tftp>put tftp>q ``` -**6、tftp命令用法如下** + **6、tftp命令用法如下** ``` tftp your-ip-address @@ -127,11 +127,11 @@ tftp your-ip-address * help:帮助信息 * ? :帮助信息 -**7、如果老是出现“AVC Denial, click icon to view”的错误,并不能传输文件,需要作如下修改** + **7、如果老是出现“AVC Denial, click icon to view”的错误,并不能传输文件,需要作如下修改** 修改`/etc/sysconfig/selinux`,将SELINUX设定为disable,使用命令`setenforce 0`让selinux配置文件生效。 -**8、Busybox中tftp命令的用法** + **8、Busybox中tftp命令的用法** 命令格式为: @@ -152,4 +152,7 @@ tftp option [port] ``` tftp -g -r embedexpert 192.168.1.2 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/tload.md b/command/tload.md index 928d52397e..6a30c5f682 100644 --- a/command/tload.md +++ b/command/tload.md @@ -5,7 +5,7 @@ tload ## 补充说明 -**tload命** 以图形化的方式输出当前系统的平均负载到指定的终端。假设不给予终端机编号,则会在执行tload指令的终端机显示负载情形。 +**tload命令** 以图形化的方式输出当前系统的平均负载到指定的终端。假设不给予终端机编号,则会在执行tload指令的终端机显示负载情形。 ### 语法 @@ -35,4 +35,7 @@ tload -d 1 0.04, 0.01, 0.00 0.04, 0.01,0.00 0.06, 0.02, 0.00 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/top.md b/command/top.md index 5d13fd1e15..3d17369d1a 100644 --- a/command/top.md +++ b/command/top.md @@ -5,7 +5,7 @@ top ## 补充说明 -**top命** 可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具。通过top命令所提供的互动式界面,用热键可以管理。 +**top命令** 可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具。通过top命令所提供的互动式界面,用热键可以管理。 ### 语法 @@ -62,7 +62,7 @@ Mem: 4147888k total, 2493092k used, 1654796k free, 158188k buffers Swap: 5144568k total, 56k used, 5144512k free, 2013180k cached ``` -**解释:** + **解释:** * top - 09:44:56[当前系统时间], * 16 days[系统已经运行了16天], @@ -86,4 +86,7 @@ Swap: 5144568k total, 56k used, 5144512k free, 2013180k cached * Swap:  5144568k total[交换区总量], * 56k used[使用的交换区总量], * 5144512k free[空闲交换区总量], -* 2013180k cached[缓冲的交换区总量], \ No newline at end of file +* 2013180k cached[缓冲的交换区总量], + + + \ No newline at end of file diff --git a/command/touch.md b/command/touch.md index f94a02013b..7c685b08c7 100644 --- a/command/touch.md +++ b/command/touch.md @@ -5,7 +5,7 @@ touch ## 补充说明 -**touch命** 有两个功能:一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;二是用来创建新的空文件。 +**touch命令** 有两个功能:一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;二是用来创建新的空文件。 ### 语法 @@ -37,4 +37,7 @@ touch(选项)(参数) touch ex2 ``` -在当前目录下建立一个空文件ex2,然后,利用`ls -l`命令可以发现文件ex2的大小为0,表示它是空文件。 \ No newline at end of file +在当前目录下建立一个空文件ex2,然后,利用`ls -l`命令可以发现文件ex2的大小为0,表示它是空文件。 + + + \ No newline at end of file diff --git a/command/tr.md b/command/tr.md index ddde5f591b..72e3371a6a 100644 --- a/command/tr.md +++ b/command/tr.md @@ -5,7 +5,7 @@ tr ## 补充说明 -**tr命** 可以对来自标准输入的字符进行替换、压缩和删除。它可以将一组字符变成另一组字符,经常用来编写优美的单行命令,作用很强大。 +**tr命令** 可以对来自标准输入的字符进行替换、压缩和删除。它可以将一组字符变成另一组字符,经常用来编写优美的单行命令,作用很强大。 ### 语法 @@ -84,7 +84,7 @@ cat file | tr -s "\r" "\n" > new_file cat file | tr -d "\r" > new_file ``` -**tr可以使用的字符类:** + **tr可以使用的字符类:** ``` [:alnum:]:字母和数字 @@ -104,4 +104,7 @@ cat file | tr -d "\r" > new_file ``` tr '[:lower:]' '[:upper:]' -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/traceroute.md b/command/traceroute.md index 266d7777a3..74b02f50b5 100644 --- a/command/traceroute.md +++ b/command/traceroute.md @@ -5,7 +5,7 @@ traceroute ## 补充说明 -**traceroute命** 用于追踪数据包在网络上的传输时的全部路径,它默认发送的数据包大小是40字节。 +**traceroute命令** 用于追踪数据包在网络上的传输时的全部路径,它默认发送的数据包大小是40字节。 通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的。 @@ -66,4 +66,7 @@ traceroute to www.58.com (211.151.111.30), 30 hops max, 40 byte packets 有时我们在某一网关处延时比较长,有可能是某台网关比较阻塞,也可能是物理设备本身的原因。当然如果某台DNS出现问题时,不能解析主机名、域名时,也会 有延时长的现象;您可以加`-n`参数来避免DNS解析,以IP格式输出数据。 -如果在局域网中的不同网段之间,我们可以通过traceroute 来排查问题所在,是主机的问题还是网关的问题。如果我们通过远程来访问某台服务器遇到问题时,我们用到traceroute 追踪数据包所经过的网关,提交IDC服务商,也有助于解决问题;但目前看来在国内解决这样的问题是比较困难的,就是我们发现问题所在,IDC服务商也不可能帮助我们解决。 \ No newline at end of file +如果在局域网中的不同网段之间,我们可以通过traceroute 来排查问题所在,是主机的问题还是网关的问题。如果我们通过远程来访问某台服务器遇到问题时,我们用到traceroute 追踪数据包所经过的网关,提交IDC服务商,也有助于解决问题;但目前看来在国内解决这样的问题是比较困难的,就是我们发现问题所在,IDC服务商也不可能帮助我们解决。 + + + \ No newline at end of file diff --git a/command/tree.md b/command/tree.md index 5951eeaedd..ab7023c2cd 100644 --- a/command/tree.md +++ b/command/tree.md @@ -1,35 +1,46 @@ tree === + +树状图列出目录的内容 -以树状图列出目录的内容 +## 补充说明 -## 语法 +**tree命令** 以树状图列出目录的内容。 +### 语法 + +``` tree(选项)(参数) +``` -## 选项 +### 选项 -- -a:显示所有文件和目录; -- -A:使用ASNI绘图字符显示树状图而非以ASCII字符组合; -- -C:在文件和目录清单加上色彩,便于区分各种类型; -- -d:先是目录名称而非内容; -- -D:列出文件或目录的更改时间; -- -f:在每个文件或目录之前,显示完整的相对路径名称; -- -F:在执行文件,目录,Socket,符号连接,管道名称名称,各自加上`*`,`/`,`@`,`|`号; -- -g:列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码; -- -i:不以阶梯状列出文件和目录名称; -- -l:<范本样式> 不显示符号范本样式的文件或目录名称; -- -l:如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录; -- -n:不在文件和目录清单加上色彩; -- -N:直接列出文件和目录名称,包括控制字符; -- -p:列出权限标示; -- -P:<范本样式> 只显示符合范本样式的文件和目录名称; -- -q:用“?”号取代控制字符,列出文件和目录名称; -- -s:列出文件和目录大小; -- -t:用文件和目录的更改时间排序; -- -u:列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码; -- -x:将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该目录予以排除在寻找范围外。 +``` +-a:显示所有文件和目录; +-A:使用ASNI绘图字符显示树状图而非以ASCII字符组合; +-C:在文件和目录清单加上色彩,便于区分各种类型; +-d:先是目录名称而非内容; +-D:列出文件或目录的更改时间; +-f:在每个文件或目录之前,显示完整的相对路径名称; +-F:在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","@","|"号; +-g:列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码; +-i:不以阶梯状列出文件和目录名称; +-l:<范本样式> 不显示符号范本样式的文件或目录名称; +-l:如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录; +-n:不在文件和目录清单加上色彩; +-N:直接列出文件和目录名称,包括控制字符; +-p:列出权限标示; +-P:<范本样式> 只显示符合范本样式的文件和目录名称; +-q:用“?”号取代控制字符,列出文件和目录名称; +-s:列出文件和目录大小; +-t:用文件和目录的更改时间排序; +-u:列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码; +-x:将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该目录予以排除在寻找范围外。 +``` -## 参数 +### 参数 目录:执行tree指令,它会列出指定目录下的所有文件,包括子目录里的文件。 + + + \ No newline at end of file diff --git a/command/ulimit.md b/command/ulimit.md index 1c56ed8ded..593db05cb9 100644 --- a/command/ulimit.md +++ b/command/ulimit.md @@ -5,7 +5,7 @@ ulimit ## 补充说明 -**ulimit命** 用来限制系统用户对shell资源的访问。如果不懂什么意思,下面一段内容可以帮助你理解: +**ulimit命令** 用来限制系统用户对shell资源的访问。如果不懂什么意思,下面一段内容可以帮助你理解: 假设有这样一种情况,当一台 Linux 主机上同时登陆了 10 个人,在系统资源无限制的情况下,这 10 个用户同时打开了 500 个文档,而假设每个文档的大小有 10M,这时系统的内存资源就会受到巨大的挑战。 @@ -59,4 +59,7 @@ cpu time (seconds, -t) unlimited #进程使用的CPU时间。 max user processes (-u) 98304 #当前用户同时打开的进程(包括线程)的最大个数为98304。 virtual memory (kbytes, -v) unlimited #没有限制进程的最大地址空间。 file locks (-x) unlimited #所能锁住的文件的最大个数没有限制。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/umask.md b/command/umask.md index 075a891b1f..97b5d9f699 100644 --- a/command/umask.md +++ b/command/umask.md @@ -5,7 +5,7 @@ umask ## 补充说明 -**umask命** 用来设置限制新建文件权限的掩码。当新文件被创建时,其最初的权限由文件创建掩码决定。用户每次注册进入系统时,umask命令都被执行, 并自动设置掩码mode来限制新文件的权限。用户可以通过再次执行umask命令来改变默认值,新的权限将会把旧的覆盖掉。 +**umask命令** 用来设置限制新建文件权限的掩码。当新文件被创建时,其最初的权限由文件创建掩码决定。用户每次注册进入系统时,umask命令都被执行, 并自动设置掩码mode来限制新文件的权限。用户可以通过再次执行umask命令来改变默认值,新的权限将会把旧的覆盖掉。 ### 语法 @@ -47,4 +47,7 @@ umask u=, g=w, o=rwx umask -s ``` -选项-s表示以字符形式显示当前的掩码。如果直接输入umask命令,不带任何参数,那么将以八进制形式显示当前的掩码。系统默认的掩码是0022。 \ No newline at end of file +选项-s表示以字符形式显示当前的掩码。如果直接输入umask命令,不带任何参数,那么将以八进制形式显示当前的掩码。系统默认的掩码是0022。 + + + \ No newline at end of file diff --git a/command/umount.md b/command/umount.md index 71d1255809..42aed99615 100644 --- a/command/umount.md +++ b/command/umount.md @@ -5,7 +5,7 @@ umount ## 补充说明 -**umount命** 用于卸载已经加载的文件系统。利用设备名或挂载点都能umount文件系统,不过最好还是通过挂载点卸载,以免使用绑定挂载(一个设备,多个挂载点)时产生混乱。 +**umount命令** 用于卸载已经加载的文件系统。利用设备名或挂载点都能umount文件系统,不过最好还是通过挂载点卸载,以免使用绑定挂载(一个设备,多个挂载点)时产生混乱。 ### 语法 @@ -74,4 +74,7 @@ umount -vl /mnt/mymount/ 执行延迟卸载 ``` eject /dev/cdrom 卸载并弹出CD -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/unalias.md b/command/unalias.md index e3fb3c32fa..58e44d21f6 100644 --- a/command/unalias.md +++ b/command/unalias.md @@ -5,7 +5,7 @@ unalias ## 补充说明 -**unalias命** 用来取消命令别名,是为shell内建命令。如果需要取消任意一个命令别名,则使用该命令别名作为指令的参数选项即可。如果使用`-a`选项,则表示取消所有已经存在的命令别名。 +**unalias命令** 用来取消命令别名,是为shell内建命令。如果需要取消任意一个命令别名,则使用该命令别名作为指令的参数选项即可。如果使用`-a`选项,则表示取消所有已经存在的命令别名。 ### 语法 @@ -37,4 +37,7 @@ unalias cc #取消已经设置的命令别名 cc:no input files ``` -因此,当使用该指令将命令别名取消后,将不能够再进行使用。否则,将出现错误提示。 \ No newline at end of file +因此,当使用该指令将命令别名取消后,将不能够再进行使用。否则,将出现错误提示。 + + + \ No newline at end of file diff --git a/command/uname.md b/command/uname.md index 8b0fb2d438..2134b6f34b 100644 --- a/command/uname.md +++ b/command/uname.md @@ -5,7 +5,7 @@ uname ## 补充说明 -**uname命** 用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。 +**uname命令** 用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。 ### 语法 @@ -70,4 +70,7 @@ Copyright (C) 2006 free Software Foundation, Inc. 这是自由软件。您可以按照 GNU GPL 协议 的条款再发布此软件的副本,但我们无法保证相关法律不对这一情形进行限制。 由 David MacKenzie 编写。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/unarj.md b/command/unarj.md index 8202ef06fd..eedc1c6887 100644 --- a/command/unarj.md +++ b/command/unarj.md @@ -5,7 +5,7 @@ unarj ## 补充说明 -**unarj命** 用来解压缩由arj命令创建的压缩包。 +**unarj命令** 用来解压缩由arj命令创建的压缩包。 ### 语法 @@ -24,4 +24,7 @@ x:解压缩时保留原有的路径。 ### 参数 -.arj压缩包:指定要解压缩的.arj压缩包。 \ No newline at end of file +.arj压缩包:指定要解压缩的.arj压缩包。 + + + \ No newline at end of file diff --git a/command/uniq.md b/command/uniq.md index b6fb865e9f..71fc34cc7a 100644 --- a/command/uniq.md +++ b/command/uniq.md @@ -5,7 +5,7 @@ uniq ## 补充说明 -**uniq命** 用于报告或忽略文件中的重复行,一般与sort命令结合使用。 +**uniq命令** 用于报告或忽略文件中的重复行,一般与sort命令结合使用。 ### 语法 @@ -57,4 +57,7 @@ sort file.txt | uniq -c ``` sort file.txt | uniq -d -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/unset.md b/command/unset.md index 9e2ac55d7f..f376a279fb 100644 --- a/command/unset.md +++ b/command/unset.md @@ -5,7 +5,7 @@ unset ## 补充说明 -**unset命** 用于删除已定义的shell变量(包括环境变量)和shell函数。unset命令不能够删除具有只读属性的shell变量和环境变量。 +**unset命令** 用于删除已定义的shell变量(包括环境变量)和shell函数。unset命令不能够删除具有只读属性的shell变量和环境变量。 ### 语法 @@ -32,4 +32,7 @@ shell变量或函数:指定要删除的shell变量或shell函数。 unset -v mylove #删除指定的环境变量 ``` -执行以上命令后,系统将删除指定的环境变量。用户可以使用env命令和grep命令对其进行查询。已经删除的环境变量再次使用指令查询时,将出现查询不到指定环境变量的输出信息。 \ No newline at end of file +执行以上命令后,系统将删除指定的环境变量。用户可以使用env命令和grep命令对其进行查询。已经删除的环境变量再次使用指令查询时,将出现查询不到指定环境变量的输出信息。 + + + \ No newline at end of file diff --git a/command/unzip.md b/command/unzip.md index 4cd63de508..3ebee0bd39 100644 --- a/command/unzip.md +++ b/command/unzip.md @@ -5,7 +5,7 @@ unzip ## 补充说明 -**unzip命** 用于解压缩由zip命令压缩的“.zip”压缩包。 +**unzip命令** 用于解压缩由zip命令压缩的“.zip”压缩包。 ### 语法 @@ -70,4 +70,7 @@ unzip -v test.zip ``` unzip -o test.zip -d tmp/ -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/useradd.md b/command/useradd.md index 88719e4858..2a4aa87251 100644 --- a/command/useradd.md +++ b/command/useradd.md @@ -5,9 +5,9 @@ useradd ## 补充说明 -**useradd命** 用于Linux中创建的新的系统用户。useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在`/etc/passwd`文本文件中。 +**useradd命令** 用于Linux中创建的新的系统用户。useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在`/etc/passwd`文本文件中。 -在Slackware中,adduser指令是个script程序,利用交谈的方式取得输入的用户帐号资料,然后再交由真正建立帐号的useradd命令建立新用户,如此可方便管理员建立用户帐号。在Red Hat Linux中,**adduser命令**则是useradd命令的符号连接,两者实际上是同一个指令。 +在Slackware中,adduser指令是个script程序,利用交谈的方式取得输入的用户帐号资料,然后再交由真正建立帐号的useradd命令建立新用户,如此可方便管理员建立用户帐号。在Red Hat Linux中, **adduser命令** 则是useradd命令的符号连接,两者实际上是同一个指令。 ### 语法 @@ -51,4 +51,7 @@ useradd –g sales jack –G company,employees //-g:加入主要组、-G: useradd caojh -u 544 ``` -需要说明的是,设定ID值时尽量要大于500,以免冲突。因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号。 \ No newline at end of file +需要说明的是,设定ID值时尽量要大于500,以免冲突。因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号。 + + + \ No newline at end of file diff --git a/command/userdel.md b/command/userdel.md index 475a7db773..bd2efe014c 100644 --- a/command/userdel.md +++ b/command/userdel.md @@ -5,7 +5,7 @@ userdel ## 补充说明 -**userdel命** 用于删除给定的用户,以及与用户相关的文件。若不加选项,则仅删除用户帐号,而不删除相关文件。 +**userdel命令** 用于删除给定的用户,以及与用户相关的文件。若不加选项,则仅删除用户帐号,而不删除相关文件。 ### 语法 @@ -35,4 +35,7 @@ userdel -r linuxde //删除用户linuxde,其家目录及文件一并删除 请不要轻易用`-r`选项;他会删除用户的同时删除用户所有的文件和目录,切记如果用户目录下有重要的文件,在删除前请备份。 -其实也有最简单的办法,但这种办法有点不安全,也就是直接在`/etc/passwd`中删除您想要删除用户的记录;但最好不要这样做,`/etc/passwd`是极为重要的文件,可能您一不小心会操作失误。 \ No newline at end of file +其实也有最简单的办法,但这种办法有点不安全,也就是直接在`/etc/passwd`中删除您想要删除用户的记录;但最好不要这样做,`/etc/passwd`是极为重要的文件,可能您一不小心会操作失误。 + + + \ No newline at end of file diff --git a/command/usermod.md b/command/usermod.md index 2de2154bd3..66582d92cd 100644 --- a/command/usermod.md +++ b/command/usermod.md @@ -5,7 +5,7 @@ usermod ## 补充说明 -**usermod命** 用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称。当usermod命令用来改变user id,必须确认这名user没在电脑上执行任何程序。你需手动更改使用者的crontab档。也需手动更改使用者的at工作档。采用NIS server须在server上更动相关的NIS设定。 +**usermod命令** 用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称。当usermod命令用来改变user id,必须确认这名user没在电脑上执行任何程序。你需手动更改使用者的crontab档。也需手动更改使用者的at工作档。采用NIS server须在server上更动相关的NIS设定。 ### 语法 @@ -57,4 +57,7 @@ usermod -L newuser1 ``` usermod -U newuser1 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/w.md b/command/w.md index 4bbb81ac54..d22f8905ef 100644 --- a/command/w.md +++ b/command/w.md @@ -5,7 +5,7 @@ w ## 补充说明 -**w命** 用于显示已经登陆系统的用户列表,并显示用户正在执行的指令。执行这个命令可得知目前登入系统的用户有那些人,以及他们正在执行的程序。单独执行w命令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。 +**w命令** 用于显示已经登陆系统的用户列表,并显示用户正在执行的指令。执行这个命令可得知目前登入系统的用户有那些人,以及他们正在执行的程序。单独执行w命令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。 ### 语法 @@ -34,4 +34,7 @@ w 20:39:37 up 136 days, 3:58, 1 user, load average: 0.00, 0.00, 0.00 USER TTY FROM login@ IDLE JCPU PCPU WHAT root pts/0 222.94.97.122 20:39 1.00s 0.00s 0.00s w -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/wc.md b/command/wc.md index 57f863c9f4..5aab056ec6 100644 --- a/command/wc.md +++ b/command/wc.md @@ -5,7 +5,7 @@ wc ## 补充说明 -**wc命** 用来计算数字。利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据。 +**wc命令** 用来计算数字。利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据。 ### 语法 @@ -23,4 +23,7 @@ wc(选项)(参数) ### 参数 -文件:需要统计的文件列表。 \ No newline at end of file +文件:需要统计的文件列表。 + + + \ No newline at end of file diff --git a/command/whereis.md b/command/whereis.md index a3d0b58ea8..a0ff8c5050 100644 --- a/command/whereis.md +++ b/command/whereis.md @@ -5,7 +5,7 @@ whereis ## 补充说明 -**whereis命** 用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。 +**whereis命令** 用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。 whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。 @@ -62,4 +62,7 @@ svn: ``` -说明:`whereis -m svn`查出说明文档路径,`whereis -s svn`找source源文件。 \ No newline at end of file +说明:`whereis -m svn`查出说明文档路径,`whereis -s svn`找source源文件。 + + + \ No newline at end of file diff --git a/command/which.md b/command/which.md index 7441a3b553..77c866542c 100644 --- a/command/which.md +++ b/command/which.md @@ -5,7 +5,7 @@ which ## 补充说明 -**which命** 用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 +**which命令** 用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 ### 语法 @@ -39,4 +39,7 @@ root@localhost ~ ``` -说明:which是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的!所以,不同的 PATH 配置内容所找到的命令当然不一样的! \ No newline at end of file +说明:which是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的!所以,不同的 PATH 配置内容所找到的命令当然不一样的! + + + \ No newline at end of file diff --git a/command/who.md b/command/who.md index 3b38a3f992..7ea8c9b74d 100644 --- a/command/who.md +++ b/command/who.md @@ -5,7 +5,7 @@ who ## 补充说明 -**who命** 是显示目前登录系统的用户信息。执行who命令可得知目前有那些用户登入系统,单独执行who命令会列出登入帐号,使用的终端机,登入时间以及从何处登入或正在使用哪个X显示器。 +**who命令** 是显示目前登录系统的用户信息。执行who命令可得知目前有那些用户登入系统,单独执行who命令会列出登入帐号,使用的终端机,登入时间以及从何处登入或正在使用哪个X显示器。 ### 语法 @@ -49,4 +49,7 @@ root pts/1 2013-12-20 10:37 (180.111.155.40) [root@localhost ~]# who -w root + pts/0 2013-08-19 15:04 (192.168.0.134) root + pts/1 2013-12-20 10:37 (180.111.155.40) -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/whoami.md b/command/whoami.md index 583a361387..3cd1c5ec11 100644 --- a/command/whoami.md +++ b/command/whoami.md @@ -5,7 +5,7 @@ whoami ## 补充说明 -**whoami命** 用于打印当前有效的用户名称,相当于执行`id -un`命令。 +**whoami命令** 用于打印当前有效的用户名称,相当于执行`id -un`命令。 ### 语法 @@ -28,4 +28,7 @@ root [root@localhost ~]# id -un root -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/write.md b/command/write.md index 8d583df507..63562207ff 100644 --- a/command/write.md +++ b/command/write.md @@ -5,7 +5,7 @@ write ## 补充说明 -**write命** 用于向指定登录用户终端上发送信息。通过write命令可传递信息给另一位登入系统的用户,当输入完毕后,键入EOF表示信息结束,write命令就会将信息传给对方。如果接收信息的用户不只登入本地主机一次,你可以指定接收信息的终端机编号。 +**write命令** 用于向指定登录用户终端上发送信息。通过write命令可传递信息给另一位登入系统的用户,当输入完毕后,键入EOF表示信息结束,write命令就会将信息传给对方。如果接收信息的用户不只登入本地主机一次,你可以指定接收信息的终端机编号。 ### 语法 @@ -38,4 +38,7 @@ write Rollaend pts/2 接下来就是将信息打上去,结束请Ctrl+C: -若对方设定`mesg n`,则此时信息将无法传给对方。 \ No newline at end of file +若对方设定`mesg n`,则此时信息将无法传给对方。 + + + \ No newline at end of file diff --git a/command/xlsatoms.md b/command/xlsatoms.md index f27fc02324..4d8aad1332 100644 --- a/command/xlsatoms.md +++ b/command/xlsatoms.md @@ -5,7 +5,7 @@ xlsatoms ## 补充说明 -**xlsatoms命** 用于列出X服务器内部所有定义的原子成分,每个原子成分都有自身的编号。可利用参数设置列表范围,或直接指定欲查询的成分名称。 +**xlsatoms命令** 用于列出X服务器内部所有定义的原子成分,每个原子成分都有自身的编号。可利用参数设置列表范围,或直接指定欲查询的成分名称。 ### 语法 @@ -18,4 +18,7 @@ xlsatoms(选项) * -display<显示器编号>:指定X Server连接的显示器编号,该编号由"0"开始计算,依序递增; * -format<输出格式>:设置成分清单的列表格式,您可使用控制字符改变显示样式; * -name<成分名称>:列出指定的成分; -* -range<列表范围>:设置成分清单的列表范围。 \ No newline at end of file +* -range<列表范围>:设置成分清单的列表范围。 + + + \ No newline at end of file diff --git a/command/xlsclients.md b/command/xlsclients.md index 07c34ce1e7..8dbe9bea1b 100644 --- a/command/xlsclients.md +++ b/command/xlsclients.md @@ -5,7 +5,7 @@ xlsclients ## 补充说明 -**xlsclients命** 用来列出显示器中的客户端应用程序。 +**xlsclients命令** 用来列出显示器中的客户端应用程序。 ### 语法 @@ -20,4 +20,7 @@ xlsclients(选项) -display<显示器编号>:指定X Server连接的显示器编号,该编号由"0"开始计算,依序递增; -l:使用详细格式列表; -m<最大指令长度>:设置显示指令信息的最大长度,单位以字符计算。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/xlsfonts.md b/command/xlsfonts.md index 8075b99c1f..3c60edbd0a 100644 --- a/command/xlsfonts.md +++ b/command/xlsfonts.md @@ -5,7 +5,7 @@ xlsfonts ## 补充说明 -**xlsfonts命** 列出X Server使用的字体,也能使用范本样式仅列出的符合条件的字体。 +**xlsfonts命令** 列出X Server使用的字体,也能使用范本样式仅列出的符合条件的字体。 ### 语法 @@ -24,4 +24,7 @@ xlsfonts(选项) -o:以OpenFont的形式列出字体清单; -u:列出字体清单时不依照其名称排序; -w<每列字符数>:设置每列的最大字符数。 -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/yes.md b/command/yes.md new file mode 100644 index 0000000000..07d9cd857f --- /dev/null +++ b/command/yes.md @@ -0,0 +1,37 @@ +yes +=== + +重复打印指定字符串 + +## 补充说明 + +**yes命令** 在命令行中输出指定的字符串,直到yes进程被杀死。不带任何参数输入yes命令默认的字符串就是y。 + +### 语法 + +``` +yes(参数) +``` + +### 参数 + +字符串:指定要重复打印的字符串。 + +### 实例 + +``` +[root@localhost ~]# yes testline + +testline +testline +testline +testline +testline +testline +testline +testline +...一直重复打印 testline,按Ctrl+C结束。 +``` + + + \ No newline at end of file diff --git a/command/zip.md b/command/zip.md index 4cd6db693f..adfe85bacf 100644 --- a/command/zip.md +++ b/command/zip.md @@ -5,7 +5,7 @@ zip ## 补充说明 -**zip命** 可以用来解压缩文件,或者对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。 +**zip命令** 可以用来解压缩文件,或者对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。 ### 语法 @@ -75,4 +75,7 @@ zip -q -r html.zip html ``` zip -q -r html.zip * -``` \ No newline at end of file +``` + + + \ No newline at end of file diff --git a/command/zipinfo.md b/command/zipinfo.md index b62de16366..d54c43bb1c 100644 --- a/command/zipinfo.md +++ b/command/zipinfo.md @@ -5,7 +5,7 @@ zipinfo ## 补充说明 -**zipinfo命** 用来列出压缩文件信息。执行zipinfo指令可得知zip压缩文件的详细信息。 +**zipinfo命令** 用来列出压缩文件信息。执行zipinfo指令可得知zip压缩文件的详细信息。 ### 语法 @@ -32,4 +32,7 @@ zipinfo(选项)(参数) ### 参数 -文件:指定zip格式的压缩包。 \ No newline at end of file +文件:指定zip格式的压缩包。 + + + \ No newline at end of file