更新文档排版

This commit is contained in:
jaywcjlove 2016-11-30 01:17:50 +08:00
parent b3f2252eee
commit 3ddd612a58
192 changed files with 1553 additions and 861 deletions

View File

@ -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'
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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服务器。
* stop停止Apache服务器。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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记录而不是从网络上监听。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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”。用这个方法格式化硬盘需要有相当大的耐心因为命令运行后会一个个用读的方式检查硬盘。
这个操作已经很清楚地告知我们可以采用`mkfs.ext3 -c`选项用`read-only`方式检查硬盘。这个命令会在格式化硬盘时检查硬盘并标出错误的硬盘“block”。用这个方法格式化硬盘需要有相当大的耐心因为命令运行后会一个个用读的方式检查硬盘。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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 退出
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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文件。
压缩完毕后,在`/opt`下就会生成相应的etc.zip.bz2、var.zip.bz2和backup.zip.bz2文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
这里主要是为了防止文件名中`-`产生以为是选项的歧义。
这里主要是为了防止文件名中`-`产生以为是选项的歧义。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ bzip2recover
## 补充说明
**bzip2recover命** 可用于恢复被破坏的“.bz2”压缩包中的文件。
**bzip2recover命** 可用于恢复被破坏的“.bz2”压缩包中的文件。
bzip2是以区块的方式来压缩文件每个区块视为独立的单位。因此当某一区块损坏时便可利用bzip2recover试着将文件中的区块隔开来以便解压缩正常的区块。通常只适用在压缩文件很大的情况。
@ -17,4 +17,7 @@ bzip2recover(参数)
### 参数
文件:指定要恢复数据的.bz2压缩包。
文件:指定要恢复数据的.bz2压缩包。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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中
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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参数使用。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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]
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ chgrp
## 补充说明
**chgrp命** 用来改变文件或目录所属的用户组。该命令用来改变指定文件所属的用户组。其中组名可以是用户组的id也可以是用户组的组名。文件名可以 是由空格分开的要改变属组的文件列表,也可以是由通配符描述的文件集合。如果用户不是该文件的文件主或超级用户(root),则不能改变该文件的组。
**chgrp命** 用来改变文件或目录所属的用户组。该命令用来改变指定文件所属的用户组。其中组名可以是用户组的id也可以是用户组的组名。文件名可以 是由空格分开的要改变属组的文件列表,也可以是由通配符描述的文件集合。如果用户不是该文件的文件主或超级用户(root),则不能改变该文件的组。
在UNIX系统家族里文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用chgrp指令去变更文件与目录的所属群组设置方式采用群组名称或群组识别码皆可。
@ -37,4 +37,7 @@ chgrp(选项)(参数)
```
chgrp -R mengxin /usr/meng
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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`修改服务的默认启动等级。
3. `chkconfig --level 35 mysqld on`修改服务的默认启动等级。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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的属性
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ chown
## 补充说明
**chown命** 改变某个文件或目录的所有者和所属的组该命令可以向某个用户授权使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户D用户组可以是组名或组id。文件名可以使由空格分开的文件列表在文件名中可以包含通配符。
**chown命** 改变某个文件或目录的所有者和所属的组该命令可以向某个用户授权使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户D用户组可以是组名或组id。文件名可以使由空格分开的文件列表在文件名中可以包含通配符。
只有文件主和超级用户才可以便用该命令。
@ -40,4 +40,7 @@ chown(选项)(参数)
```
chown -R liu /usr/meng
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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`就没有依赖其他库。
这样就能够正确运行a.out了因为a.out使用到了其他的动态连接库所以需要将库拷贝到newRoot中如果没有其他库那么直接拷贝a.out就能运行。例如静态编译后的busybox其安装目录中的`/bin/busybox`就没有依赖其他库。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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.
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ cksum
## 补充说明
**cksum命** 是检查文件的CRC是否正确确保文件从一个系统传输到另一个系统的过程中不被损坏。这种方法要求校验和在源系统中被计算出来在目的系统中又被计算一次两个数字进行比较如果校验和相等则该文件被认为是正确传输了。
**cksum命** 是检查文件的CRC是否正确确保文件从一个系统传输到另一个系统的过程中不被损坏。这种方法要求校验和在源系统中被计算出来在目的系统中又被计算一次两个数字进行比较如果校验和相等则该文件被认为是正确传输了。
注意CRC是指一种排错检查方法即循环冗余校验法。
@ -44,4 +44,7 @@ cksum testfile1 #对指定文件进行CRC校验
上面的输出信息中,"1263453430"表示校验码,"78"表示字节数。
注意如果文件中有任何字符被修改都将改变计算后CRC校验码的值。
注意如果文件中有任何字符被修改都将改变计算后CRC校验码的值。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ cmp
## 补充说明
**cmp命** 用来比较两个文件是否有差异。当相互比较的两个文件完全一样时,则该指令不会显示任何信息。若发现有差异,预设会标示出第一个不通之处的字符和列数编号。若不指定任何文件名称或是所给予的文件名为“-”则cmp指令会从标准输入设备读取数据。
**cmp命** 用来比较两个文件是否有差异。当相互比较的两个文件完全一样时,则该指令不会显示任何信息。若发现有差异,预设会标示出第一个不通之处的字符和列数编号。若不指定任何文件名称或是所给予的文件名为“-”则cmp指令会从标准输入设备读取数据。
### 语法
@ -57,4 +57,7 @@ cmp testfile testfile1 #比较两个文件
testfile testfile1 #有差异第8字节第2行
```
注意:在比较结果中,只能够显示第一比较结果。
注意:在比较结果中,只能够显示第一比较结果。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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列用户可以自行指定缓冲区的大小。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ colrm
## 补充说明
**colrm命** 用于删除文件中的指定列。colrm命令从标准输入设备读取书记转而输出到标准输出设备。如果不加任何参数则colrm命令不会过滤任何一行。
**colrm命** 用于删除文件中的指定列。colrm命令从标准输入设备读取书记转而输出到标准输出设备。如果不加任何参数则colrm命令不会过滤任何一行。
### 语法
@ -16,4 +16,7 @@ colrm(参数)
### 参数
* 起始列号:指定要删除的指定列;
* 结尾列号:指定要删除的结尾列。
* 结尾列号:指定要删除的结尾列。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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文件。所以我们可以透过资料流重导向的方法将资料输出成为另一个档名。
这个`-c`的选项比较有趣会将压缩过程的资料输出到屏幕上而不是写入成为file.Z文件。所以我们可以透过资料流重导向的方法将资料输出成为另一个档名。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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、传递了目录属性、没有略过目录。
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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命令配合使用。其实上面的示例我们已经看到了它们的组合用法。
通过上面的示例可以看出cpio无法直接读取文件它需要每个文件或者目录的完整路径名才能识别读取而find命令的输出刚好做到了这点因此cpio命令一般和find命令配合使用。其实上面的示例我们已经看到了它们的组合用法。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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 #是删除第一个文件,因为分割后的的第一个文件没有内容,匹配的单词就位于文件的第一行中。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ date
## 补充说明
**date命** 是显示或设置系统时间与日期。
**date命** 是显示或设置系统时间与日期。
很多shell脚本里面需要打印不同格式的时间或日期以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印也可以使用命令设置固定的格式。在类UNIX系统中日期被存储为一个整数其大小为自世界标准时间UTC1970年1月1日0时0分0秒起流逝的秒数。
@ -144,4 +144,7 @@ nmap man.linuxde.net &> /dev/null
end=$(date +%s)
difference=$(( end - start ))
echo $difference seconds.
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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。
我编译了一个新的wifi驱动r8192se_pci.ko将其拷贝到`/lib/modules/2.6.31-20-generic/wireless`下,然后到`/lib/modules/2.6.31-20-generic`运行`depmod -a`之后可以在任意目录运行modprobe r8192se_pci。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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。
注意:以上说明指定了两个文件中不同处的行号及其相应的操作。在输出形式中,每一行后面将跟随受到影响的若干行。其中,以<开始的行属于文件1>开始的行属于文件2。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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(-)
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ dirs
## 补充说明
**dirs命** 显示当前目录栈中的所有记录不带参数的dirs命令显示当前目录栈中的记录。dirs始终显示当然目录, 再是堆栈中的内容;即使目录堆栈为空, dirs命令仍然只显示当然目录。
**dirs命** 显示当前目录栈中的所有记录不带参数的dirs命令显示当前目录栈中的记录。dirs始终显示当然目录, 再是堆栈中的内容;即使目录堆栈为空, dirs命令仍然只显示当然目录。
### 语法
@ -34,4 +34,7 @@ dirs(选项)(参数)
```
[root@localhost etc]# dirs
/etc
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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)
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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可以实现无人值守备份。
通过dump命令的备份层级可实现完整+增量备份、完整+差异备份在配合crontab可以实现无人值守备份。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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执行。
执行e2fsck或fsck前请先umount partition否则有机会令档案系统毁损。如果需要对根目录`/`进行检查及修复便需要进入singal user mode执行。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ ed
## 补充说明
**ed命** 是单行纯文本编辑器它有命令模式command mode和输入模式input mode两种工作模式。ed命令支持多个内置命令常见内置命令如下
**ed命** 是单行纯文本编辑器它有命令模式command mode和输入模式input mode两种工作模式。ed命令支持多个内置命令常见内置命令如下
```
A切换到输入模式在文件的最后一行之后输入新的内容
@ -35,4 +35,7 @@ ed(选项)(参数)
### 参数
文件:待编辑的文件。
文件:待编辑的文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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的话查看的是你自己的配额使用情况。
2. 如果不带任何参数运行quota的话查看的是你自己的配额使用情况。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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(选项)(参数)
### 参数
设备名:指定弹出的设备名称。
设备名:指定弹出的设备名称。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ elm
## 补充说明
**elm命** 是一个E-mail客户端管理程序它提供了纯文本交互式全屏幕界面。
**elm命** 是一个E-mail客户端管理程序它提供了纯文本交互式全屏幕界面。
### 语法
@ -23,4 +23,7 @@ elm(选项)
-m进入elm后不显示指令说明
-v显示elm的版本信息
-z若收件信箱没有邮件则不启动elm程序。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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参数
### 参数
文件:指定待编辑的文件。
文件:指定待编辑的文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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"
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ fgrep
## 补充说明
**fgrep命** 是用来搜索 file 参数指定的输入文件缺省为标准输入中的匹配模式的行。fgrep 命令特别搜索 Pattern 参数,它们是固定的字符串。如果在 File 参数中指定一个以上的文件 fgrep 命令将显示包含匹配行的文件。
**fgrep命** 是用来搜索 file 参数指定的输入文件缺省为标准输入中的匹配模式的行。fgrep 命令特别搜索 Pattern 参数,它们是固定的字符串。如果在 File 参数中指定一个以上的文件 fgrep 命令将显示包含匹配行的文件。
fgrep 命令于 grep 和 egrep 命令不同因为它搜索字符串而不是搜索匹配表达式的模式。fgrep 命令使用快速的压缩算法。`$, *, &#91;, |, (, )`和`\`等字符串被 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 字符串的文件名。
搜索当前目录下以 .c 结尾的文件,然后显示包含 strcpy 字符串的文件名。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,31 +5,7 @@ find
## 补充说明
<div id="content-index" class="content-index" style="float:right;">
<div class="content-index-title">本文索引</div>
[隐藏)] <script type="text/javascript" language="javascript">window.content_index_showTocToggle=true;function content_index_toggleToc(){var tts="显示";var tth="隐藏";if(window.content_index_showTocToggle){window.content_index_showTocToggle=false;document.getElementById("content-index-contents").style.display="none";document.getElementById("content-index-togglelink").innerHTML=tts}else{window.content_index_showTocToggle=true;document.getElementById("content-index-contents").style.display="block";document.getElementById("content-index-togglelink").innerHTML=tth}}</script>
* 语法
* 选项
* 参数
* 实例
* 根据文件或者正则表达式进行匹配
* 否定参数
* 根据文件类型进行搜索
* 基于目录深度搜索
* 根据文件时间戳进行搜索
* 根据文件大小进行匹配
* 删除匹配文件
* 根据文件权限/所有权进行匹配
* 借助-exec选项与其他命令结合使用
* 搜索但跳出指定的目录
* find其他技巧收集
</div>
**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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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守护进程的支持。
如果要查询远程机上的用户信息,需要在用户名后面接`@主机名`,采用`用户名@主机名`的格式不过要查询的网络主机需要运行finger守护进程的支持。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ fmt
## 补充说明
**fmt命** 读取文件的内容,根据选项的设置对文件格式进行简单的优化处理,并将结果送到标准输出设备。
**fmt命** 读取文件的内容,根据选项的设置对文件格式进行简单的优化处理,并将结果送到标准输出设备。
### 语法
@ -26,4 +26,7 @@ fmt(选项)(参数)
### 参数
指定要优化格式的文件。
指定要优化格式的文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ fold
## 补充说明
**fold命** 用于控制文件内容输出时所占用的屏幕宽度。fold命令会从指定的文件里读取内容将超过限定列宽的列加入增列字符后输出到标准输出设备。若不指定任何文件名称或是所给予的文件名为“-”则fold指令会从标准输入设备读取数据。
**fold命** 用于控制文件内容输出时所占用的屏幕宽度。fold命令会从指定的文件里读取内容将超过限定列宽的列加入增列字符后输出到标准输出设备。若不指定任何文件名称或是所给予的文件名为“-”则fold指令会从标准输入设备读取数据。
### 语法
@ -23,4 +23,7 @@ fold(选项)(参数)
### 参数
文件:指定要显示内容的文件。
文件:指定要显示内容的文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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反映的是可以挪用的内存总数。
第三部分是指交换分区。
第三部分是指交换分区。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ fsck
## 补充说明
**fsck命** 被用于检查并且试图修复文件系统中的错误。当文件系统发生错误四化可用fsck指令尝试加以修复。
**fsck命** 被用于检查并且试图修复文件系统中的错误。当文件系统发生错误四化可用fsck指令尝试加以修复。
### 语法
@ -50,4 +50,7 @@ fsck
在随后的多个确认对话框中输入`:y`
结束后同样使用reboot命令重启系统这样就好了
结束后同样使用reboot命令重启系统这样就好了
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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]指定需要帮助的命令名称。如果没有指定 commandftp 将显示全部命令的列表。
FTP>! 从 ftp 子系统退出到外壳。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -11,4 +11,7 @@ ftpcount
```
ftpcount
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -18,4 +18,7 @@ ftpshut [-d<分钟>][-l<分钟>][关闭时间]["警告信息"]
```
-d<分钟> 切断所有FTP连线时间。
-l<分钟> 停止接受FTP登入的时间。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ ftpwho
## 补充说明
**ftpwho命** ftp服务器套件proftpd的工作指令用于显示当前每个ftp会话信息。
**ftpwho命** ftp服务器套件proftpd的工作指令用于显示当前每个ftp会话信息。
### 语法
@ -18,4 +18,7 @@ ftpwho(选项)
```
-h显示帮助信息
-v详细模式输出更多信息。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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 //删除这个工作组
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ groupmod
## 补充说明
**groupmod命** 更改群组识别码或名称。需要更改群组的识别码或名称时可用groupmod指令来完成这项工作。
**groupmod命** 更改群组识别码或名称。需要更改群组的识别码或名称时可用groupmod指令来完成这项工作。
### 语法
@ -23,4 +23,7 @@ groupmod(选项)(参数)
### 参数
组名:指定要修改的工作的组名。
组名:指定要修改的工作的组名。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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权限才可以查看。
gshadow, shadow只有root权限才可以查看。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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:
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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`命令。
通过上面的示例可以知道`gzip d`等价于`gunzip`命令。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ gzexe
## 补充说明
**gzexe命** 用来压缩可执行文件压缩后的文件仍然为可执行文件在执行时进行自动解压缩。当您去执行被压缩过的执行文件时该文件会自动解压然后继续执行和使用一般的执行文件相同。这个命令也可以看成是gunzip命令的一个扩展。
**gzexe命** 用来压缩可执行文件压缩后的文件仍然为可执行文件在执行时进行自动解压缩。当您去执行被压缩过的执行文件时该文件会自动解压然后继续执行和使用一般的执行文件相同。这个命令也可以看成是gunzip命令的一个扩展。
### 语法
@ -21,4 +21,7 @@ gzexe(选项)(参数)
### 参数
文件:指定需要压缩的可执行文件。
文件:指定需要压缩的可执行文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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 //关闭系统,但不留下纪录。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ id
## 补充说明
**id命** 可以显示真实有效的用户ID(UID)和组ID(GID)。UID 是对一个用户的单一身份标识。组IDGID则对应多个UID。id命令已经默认预装在大多数Linux系统中。要使用它只需要在你的控制台输入id。不带选项输入id会显示如下。结果会使用活跃用户。
**id命** 可以显示真实有效的用户ID(UID)和组ID(GID)。UID 是对一个用户的单一身份标识。组IDGID则对应多个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)
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ indent
## 补充说明
**indent命** 可辨识C的原始代码文件并加以格式化以方便程序员阅读、修改等操作。
**indent命** 可辨识C的原始代码文件并加以格式化以方便程序员阅读、修改等操作。
### 语法
@ -81,4 +81,7 @@ indent选项)(源文件)(-o 目标文件)
indent -bs /home/rootlocal/桌面/test.c
```
执行上面的命令后用户可以打开指定的源文件查看在sizeof后面是否都添加了一个空格。由于该命令的参数非常多所以用户可以根据实际需要选择适合的参数进行使用即可。
执行上面的命令后用户可以打开指定的源文件查看在sizeof后面是否都添加了一个空格。由于该命令的参数非常多所以用户可以根据实际需要选择适合的参数进行使用即可。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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命令加载模块时需要使用绝对路径方能加载且加载时无法自动解决依赖关系。
从以上显示结果可知RAID1模块已加载成功。只是在使用insmod命令加载模块时需要使用绝对路径方能加载且加载时无法自动解决依赖关系。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ ispell
## 补充说明
**ispell命** 用于检查文件中出现的拼写错误。
**ispell命** 用于检查文件中出现的拼写错误。
### 语法
@ -15,4 +15,7 @@ ispell(参数)
### 参数
文件:指定要进行拼写检查的文件。
文件:指定要进行拼写检查的文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ jed
## 补充说明
**jed命** 是由Slang所开发其主要用用途是编辑程序的源代码。它支持彩色语法加亮显示可以模拟emacsEDTwordstar和Brief编辑器。
**jed命** 是由Slang所开发其主要用用途是编辑程序的源代码。它支持彩色语法加亮显示可以模拟emacsEDTwordstar和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 这是用户配置文件。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ joe
## 补充说明
**joe命** 是一款功能强大的纯文本编辑器,拥有众多编写程序和文本的优良特性。
**joe命** 是一款功能强大的纯文本编辑器,拥有众多编写程序和文本的优良特性。
### 语法
@ -42,4 +42,7 @@ joe(选项)(参数)
### 参数
文件:指定要编辑的文件。
文件:指定要编辑的文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ join
## 补充说明
**join命** 用来将两个文件中,制定栏位内容相同的行连接起来。找出两个文件中,指定栏位内容相同的行,并加以合并,再输出到标准输出设备。
**join命** 用来将两个文件中,制定栏位内容相同的行连接起来。找出两个文件中,指定栏位内容相同的行,并加以合并,再输出到标准输出设备。
### 语法
@ -29,4 +29,7 @@ join(选项)(参数)
### 参数
* 文件1要进行合并操作的第1个文件参数
* 文件2要进行合并操作的第2个文件参数。
* 文件2要进行合并操作的第2个文件参数。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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) - 没有那个进程
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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)
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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)
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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,到当前目录
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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-:加载到与上面相同的阶段。加载描述符表时出现问题,
LILOLILO 成功被加载,没有出现任何错误。
**引导时的附加配置**
**引导时的附加配置**
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`来上传修改。
关于第一次尝试 LILO 的最后一点建议是:我发现使用软盘引导磁盘比使用硬盘实现 LILO 配置更为安全。为此,必须在 lilo.conf 文件中使用`boot=/dev/fd0`替换`boot=/dev/hda`。那样如果弄乱了lilo.conf文件 中的任何配置,都可以取出引导磁盘并像先前一样引导到 Linux。当使用软盘进行引导一切正常以后可以将lilo.conf修改回`boot=/dev/hda`,然后最后一次运行`/sbin/lilo`来上传修改。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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个字符构成。
* 当用`ln -s`命令列出文件时,可以看到符号链接名后有一个箭头指向源文件或目录,例如`lrwxrwxrwx … 14 jun 20 10:20 /etc/motd->/original_file`其中表示“文件大小”的数字“14”恰好说明源文件名`original_file`由14个字符构成。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ login
## 补充说明
**login命** 用于给出登录界面可用于重新登录或者切换用户身份也可通过它的功能随时更换登入身份。在Slackware发行版中 您可在命令后面附加欲登入的用户名称它会直接询问密码等待用户输入。当`/etc/nologin`文件存在时系统只root帐号登入系统其他用户一律不准登入。
**login命** 用于给出登录界面可用于重新登录或者切换用户身份也可通过它的功能随时更换登入身份。在Slackware发行版中 您可在命令后面附加欲登入的用户名称它会直接询问密码等待用户输入。当`/etc/nologin`文件存在时系统只root帐号登入系统其他用户一律不准登入。
### 语法
@ -22,4 +22,7 @@ login(选项)(参数)
### 参数
用户名:指定登录使用的用户名。
用户名:指定登录使用的用户名。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ logname
## 补充说明
**logname命** 用来显示用户名称。
**logname命** 用来显示用户名称。
### 语法
@ -18,4 +18,7 @@ logname(选项)
```
--help在线帮助
--vesion显示版本信息。
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,10 +5,13 @@ logout
## 补充说明
**logout命** 用于退出当前登录的Shelllogout指令让用户退出系统其功能和login指令相互对应。
**logout命** 用于退出当前登录的Shelllogout指令让用户退出系统其功能和login指令相互对应。
### 语法
```
logout
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ logrotate
## 补充说明
**logrotate命** 用于对系统日志进行轮转、压缩和删除也可以将日志发送到指定邮箱。使用logrotate指令可让你轻松管理系统所产生的记录文件。每个记录文件都可被设置成每日每周或每月处理也能在文件太大时立即处理。您必须自行编辑指定配置文件预设的配置文件存放在`/etc/logrotate.conf`文件中。
**logrotate命** 用于对系统日志进行轮转、压缩和删除也可以将日志发送到指定邮箱。使用logrotate指令可让你轻松管理系统所产生的记录文件。每个记录文件都可被设置成每日每周或每月处理也能在文件太大时立即处理。您必须自行编辑指定配置文件预设的配置文件存放在`/etc/logrotate.conf`文件中。
### 语法
@ -26,4 +26,7 @@ logrotate(选项)(参数)
### 参数
配置文件指定lograote指令的配置文件。
配置文件指定lograote指令的配置文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ look
## 补充说明
**look命** 用于显示文件中以指定字符串开头的任意行。
**look命** 用于显示文件中以指定字符串开头的任意行。
### 语法
@ -25,4 +25,7 @@ look(选项)(参数)
### 参数
* 字符串:指定要查找的字符串;
* 文件:指定要查找的目标文件。
* 文件:指定要查找的目标文件。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ losetup
## 补充说明
**losetup命** 用来设置循环设备。循环设备可把文件虚拟成块设备,籍此来模拟整个文件系统,让用户得以将其视为硬盘驱动器,光驱或软驱等设备,并挂入当作目录来使用。
**losetup命** 用来设置循环设备。循环设备可把文件虚拟成块设备,籍此来模拟整个文件系统,让用户得以将其视为硬盘驱动器,光驱或软驱等设备,并挂入当作目录来使用。
### 语法
@ -64,4 +64,7 @@ mount /dev/loop0 /tmp
```
umount /tmp
losetup -d /dev/loop1
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -5,7 +5,7 @@ lsattr
## 补充说明
**lsattr命** 用于查看文件的第二扩展文件系统属性。
**lsattr命** 用于查看文件的第二扩展文件系统属性。
### 语法
@ -34,4 +34,7 @@ lsattr经常使用的几个选项-D-E-R这三个选项不可以一起使
```
lsattr -E -l rmt0 -H
lsattr -EO -l rmt0
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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`这样的命令来查询当前系统是否加载了某些模块。
通常在使用lsmod命令时都会采用类似`lsmod | grep -i ext3`这样的命令来查询当前系统是否加载了某些模块。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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<m
完成后就可以把text.txt文件作为邮件的附件发送出去了。uuencode有两个参数第一个是要发送的文件第二个是显示的文件名称。
这里我主要介绍的是在CentOS下使用mail发送电子邮件的一些使用方法需要的要求是你的linux必须安装了sendmail并开启了同时保证可以连接外网。另外文章中提到的命令本人都经过亲自测试保证完全可用不过你需要将命令中的电子邮件地址换成自己的电子邮件地址。
这里我主要介绍的是在CentOS下使用mail发送电子邮件的一些使用方法需要的要求是你的linux必须安装了sendmail并开启了同时保证可以连接外网。另外文章中提到的命令本人都经过亲自测试保证完全可用不过你需要将命令中的电子邮件地址换成自己的电子邮件地址。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

View File

@ -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
```
```
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->

Some files were not shown because too many files have changed in this diff Show More