Linux常用命令(1)

Posted by AceKei on November 20, 2018

目录


1. cd命令

change directory(更改目录)

切换当前所在目录。

cd 和 cd ~

使用cd不带任何参数,进入当前用户的主目录,和 cd ~ 一样。

1
2
3
4
5
[root@wsk ~]# cd /home/wsk/
[root@wsk wsk]# cd 
[root@wsk ~]# cd /home/wsk/
[root@wsk wsk]# cd ~
[root@wsk ~]# 

cd .. 和 cd ../..

返回上一级目录,如果返回上2级为 cd ../..

1
2
3
4
5
[root@wsk jenkins]# cd ..
[root@wsk wsk]# cd jenkins/
[root@wsk jenkins]# cd ../..
[root@wsk home]# 

cd -

返回进入当前目录之前所在的目录,相当于后退

1
2
3
4
[root@wsk home]# cd -
/home/wsk/jenkins
[root@wsk jenkins]# 

2. pwd命令

print work directory
打印工作目录

用于查看目前工作目录的路径,一般不需要带参数

1
2
[root@wsk jenkins]# pwd
/home/wsk/jenkins

3. mkdir命令

make directory
创建目录

用于创建文件系统的文件夹

创建一个名为“test”的文件夹

1
2
3
4
5
6
7
[root@wsk wsk]# mkdir test
[root@wsk wsk]# pwd
/home/wsk
[root@wsk wsk]# cd test/
[root@wsk test]# pwd
/home/wsk/test

-p 或者 –parents

当创建目录的父目录不存在时,一起创建父目录。

1
2
3
4
5
6
7
8
9
10
[root@wsk test]# mkdir go/to -p
[root@wsk test]# ls
go
[root@wsk test]# cd go
[root@wsk go]# ls
to
[root@wsk go]# cd to
[root@wsk to]# pwd
/home/wsk/test/go/to

{..}

批量创建目录,例如创建2019-01..2019-12共12个目录

1
2
3
4
5
[root@wsk to]# mkdir 2019-{01..12}
[root@wsk to]# ls
2019-01  2019-03  2019-05  2019-07  2019-09  2019-11
2019-02  2019-04  2019-06  2019-08  2019-10  2019-12

{,}

批量创建目录,例如创建2019-01-01,2019-01-02,2019-01-08这3个目录

1
2
3
[root@wsk to]# mkdir 2019-01-{01,02,08}
[root@wsk to]# ls
2019-01-02  2019-01-01  2019-01-08

4. ls命令

list
列表信息

显示当前目录里面的所有可见目录。

ls 不带参数

查看当前目录里面的所有可见目录

1
2
3
4
[root@wsk to]# ls
2019-01  2019-03  2019-05  2019-07  2019-09  2019-11
2019-02  2019-04  2019-06  2019-08  2019-10  2019-12

ll

查看当前目录所有可见目录的详细信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@wsk redis-5.0.3]# ll
total 248
-rw-rw-r--  1 root root 92434 Dec 12 20:25 00-RELEASENOTES
-rw-rw-r--  1 root root    53 Dec 12 20:25 BUGS
-rw-rw-r--  1 root root  1894 Dec 12 20:25 CONTRIBUTING
-rw-rw-r--  1 root root  1487 Dec 12 20:25 COPYING
drwxrwxr-x  6 root root  4096 Dec 28 16:41 deps
-rw-rw-r--  1 root root    11 Dec 12 20:25 INSTALL
-rw-rw-r--  1 root root   151 Dec 12 20:25 Makefile
-rw-rw-r--  1 root root  4223 Dec 12 20:25 MANIFESTO
-rw-rw-r--  1 root root 20555 Dec 12 20:25 README.md
-rw-rw-r--  1 root root 62170 Dec 28 16:45 redis.conf
-rwxrwxr-x  1 root root   275 Dec 12 20:25 runtest
-rwxrwxr-x  1 root root   280 Dec 12 20:25 runtest-cluster
-rwxrwxr-x  1 root root   281 Dec 12 20:25 runtest-sentinel
-rw-rw-r--  1 root root  9710 Dec 12 20:25 sentinel.conf
drwxrwxr-x  3 root root  4096 Dec 28 16:44 src
drwxrwxr-x 10 root root  4096 Dec 12 20:25 tests
drwxrwxr-x  8 root root  4096 Dec 12 20:25 utils

llls -l命令的别称,其中 -l 选项是用长格式方式显示信息,每个信息占据一行。

序号 实例 描述
第一列 drwxr-xr-x 当前文件或者目录的权限描述符
第二列 2 如果是文件,则表示文件的个数(数值必定为1),如果是目录,则表示子目录(包含隐藏的)总数
第三列 root 目录或者文件的所有者
第四列 root 目录或者文件的属组
第五列 4096 文件的大小,但是B
第六列 Mar 目录或者文件最后修改的月份
第七列 15:17 目录或者文件最后修改的时间
第八列 2019-12 目录或者文件名称
文件或者目录的权限描述符

drwxr-xr-x 第一个字符表示文件系统对象的类型,剩下的9个字符每3个一组。

d rwx r-x r-x
文件系统对象类型,有 ~(普通文件),d(目录或文件夹),l(符号链接,包括软连接和硬链接,实质指向另外一个文件) 所有者 属组 其他人

-a 或者 –all

把以 ... 开通的隐藏文件或者目录信息也显示出来

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[root@wsk redis-5.0.3]# ll -a
total 260
drwxrwxr-x  6 root root  4096 Dec 28 16:45 .
drwxr-xr-x  4 root root  4096 Dec 28 17:14 ..
-rw-rw-r--  1 root root 92434 Dec 12 20:25 00-RELEASENOTES
-rw-rw-r--  1 root root    53 Dec 12 20:25 BUGS
-rw-rw-r--  1 root root  1894 Dec 12 20:25 CONTRIBUTING
-rw-rw-r--  1 root root  1487 Dec 12 20:25 COPYING
drwxrwxr-x  6 root root  4096 Dec 28 16:41 deps
-rw-rw-r--  1 root root   376 Dec 12 20:25 .gitignore
-rw-rw-r--  1 root root    11 Dec 12 20:25 INSTALL
-rw-rw-r--  1 root root   151 Dec 12 20:25 Makefile
-rw-rw-r--  1 root root  4223 Dec 12 20:25 MANIFESTO
-rw-rw-r--  1 root root 20555 Dec 12 20:25 README.md
-rw-rw-r--  1 root root 62170 Dec 28 16:45 redis.conf
-rwxrwxr-x  1 root root   275 Dec 12 20:25 runtest
-rwxrwxr-x  1 root root   280 Dec 12 20:25 runtest-cluster
-rwxrwxr-x  1 root root   281 Dec 12 20:25 runtest-sentinel
-rw-rw-r--  1 root root  9710 Dec 12 20:25 sentinel.conf
drwxrwxr-x  3 root root  4096 Dec 28 16:44 src
drwxrwxr-x 10 root root  4096 Dec 12 20:25 tests
drwxrwxr-x  8 root root  4096 Dec 12 20:25 utils

ll 文件名

查看对于文件下的所有内容信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@wsk redis]# ll redis-5.0.3
total 248
-rw-rw-r--  1 root root 92434 Dec 12 20:25 00-RELEASENOTES
-rw-rw-r--  1 root root    53 Dec 12 20:25 BUGS
-rw-rw-r--  1 root root  1894 Dec 12 20:25 CONTRIBUTING
-rw-rw-r--  1 root root  1487 Dec 12 20:25 COPYING
drwxrwxr-x  6 root root  4096 Dec 28 16:41 deps
-rw-rw-r--  1 root root    11 Dec 12 20:25 INSTALL
-rw-rw-r--  1 root root   151 Dec 12 20:25 Makefile
-rw-rw-r--  1 root root  4223 Dec 12 20:25 MANIFESTO
-rw-rw-r--  1 root root 20555 Dec 12 20:25 README.md
-rw-rw-r--  1 root root 62170 Dec 28 16:45 redis.conf
-rwxrwxr-x  1 root root   275 Dec 12 20:25 runtest
-rwxrwxr-x  1 root root   280 Dec 12 20:25 runtest-cluster
-rwxrwxr-x  1 root root   281 Dec 12 20:25 runtest-sentinel
-rw-rw-r--  1 root root  9710 Dec 12 20:25 sentinel.conf
drwxrwxr-x  3 root root  4096 Dec 28 16:44 src
drwxrwxr-x 10 root root  4096 Dec 12 20:25 tests
drwxrwxr-x  8 root root  4096 Dec 12 20:25 utils

-t

按文件或者目录最后的修改时间降序排序。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@wsk redis-5.0.3]# ll -t
total 248
-rw-rw-r--  1 root root 62170 Dec 28 16:45 redis.conf
drwxrwxr-x  3 root root  4096 Dec 28 16:44 src
drwxrwxr-x  6 root root  4096 Dec 28 16:41 deps
-rw-rw-r--  1 root root 92434 Dec 12 20:25 00-RELEASENOTES
-rw-rw-r--  1 root root    53 Dec 12 20:25 BUGS
-rw-rw-r--  1 root root  1894 Dec 12 20:25 CONTRIBUTING
-rw-rw-r--  1 root root  1487 Dec 12 20:25 COPYING
-rw-rw-r--  1 root root    11 Dec 12 20:25 INSTALL
-rw-rw-r--  1 root root   151 Dec 12 20:25 Makefile
-rw-rw-r--  1 root root  4223 Dec 12 20:25 MANIFESTO
-rw-rw-r--  1 root root 20555 Dec 12 20:25 README.md
-rwxrwxr-x  1 root root   275 Dec 12 20:25 runtest
-rwxrwxr-x  1 root root   280 Dec 12 20:25 runtest-cluster
-rwxrwxr-x  1 root root   281 Dec 12 20:25 runtest-sentinel
-rw-rw-r--  1 root root  9710 Dec 12 20:25 sentinel.conf
drwxrwxr-x 10 root root  4096 Dec 12 20:25 tests
drwxrwxr-x  8 root root  4096 Dec 12 20:25 utils

-r

反向排序,默认按文件或者目录名称降序排序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@wsk redis-5.0.3]# ll -r
total 248
drwxrwxr-x  8 root root  4096 Dec 12 20:25 utils
drwxrwxr-x 10 root root  4096 Dec 12 20:25 tests
drwxrwxr-x  3 root root  4096 Dec 28 16:44 src
-rw-rw-r--  1 root root  9710 Dec 12 20:25 sentinel.conf
-rwxrwxr-x  1 root root   281 Dec 12 20:25 runtest-sentinel
-rwxrwxr-x  1 root root   280 Dec 12 20:25 runtest-cluster
-rwxrwxr-x  1 root root   275 Dec 12 20:25 runtest
-rw-rw-r--  1 root root 62170 Dec 28 16:45 redis.conf
-rw-rw-r--  1 root root 20555 Dec 12 20:25 README.md
-rw-rw-r--  1 root root  4223 Dec 12 20:25 MANIFESTO
-rw-rw-r--  1 root root   151 Dec 12 20:25 Makefile
-rw-rw-r--  1 root root    11 Dec 12 20:25 INSTALL
drwxrwxr-x  6 root root  4096 Dec 28 16:41 deps
-rw-rw-r--  1 root root  1487 Dec 12 20:25 COPYING
-rw-rw-r--  1 root root  1894 Dec 12 20:25 CONTRIBUTING
-rw-rw-r--  1 root root    53 Dec 12 20:25 BUGS
-rw-rw-r--  1 root root 92434 Dec 12 20:25 00-RELEASENOTES

-S

文件或者目录的大小降序排序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@wsk redis-5.0.3]# ll -S
total 248
-rw-rw-r--  1 root root 92434 Dec 12 20:25 00-RELEASENOTES
-rw-rw-r--  1 root root 62170 Dec 28 16:45 redis.conf
-rw-rw-r--  1 root root 20555 Dec 12 20:25 README.md
-rw-rw-r--  1 root root  9710 Dec 12 20:25 sentinel.conf
-rw-rw-r--  1 root root  4223 Dec 12 20:25 MANIFESTO
drwxrwxr-x  6 root root  4096 Dec 28 16:41 deps
drwxrwxr-x  3 root root  4096 Dec 28 16:44 src
drwxrwxr-x 10 root root  4096 Dec 12 20:25 tests
drwxrwxr-x  8 root root  4096 Dec 12 20:25 utils
-rw-rw-r--  1 root root  1894 Dec 12 20:25 CONTRIBUTING
-rw-rw-r--  1 root root  1487 Dec 12 20:25 COPYING
-rwxrwxr-x  1 root root   281 Dec 12 20:25 runtest-sentinel
-rwxrwxr-x  1 root root   280 Dec 12 20:25 runtest-cluster
-rwxrwxr-x  1 root root   275 Dec 12 20:25 runtest
-rw-rw-r--  1 root root   151 Dec 12 20:25 Makefile
-rw-rw-r--  1 root root    53 Dec 12 20:25 BUGS
-rw-rw-r--  1 root root    11 Dec 12 20:25 INSTALL

-h 或者 –human-readable

以易读的方式显示文件或者目录的大小,默认是B单位,使用后悔自动转换为K,M,G单位显示

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@wsk redis-5.0.3]# ll -h
total 248K
-rw-rw-r--  1 root root  91K Dec 12 20:25 00-RELEASENOTES
-rw-rw-r--  1 root root   53 Dec 12 20:25 BUGS
-rw-rw-r--  1 root root 1.9K Dec 12 20:25 CONTRIBUTING
-rw-rw-r--  1 root root 1.5K Dec 12 20:25 COPYING
drwxrwxr-x  6 root root 4.0K Dec 28 16:41 deps
-rw-rw-r--  1 root root   11 Dec 12 20:25 INSTALL
-rw-rw-r--  1 root root  151 Dec 12 20:25 Makefile
-rw-rw-r--  1 root root 4.2K Dec 12 20:25 MANIFESTO
-rw-rw-r--  1 root root  21K Dec 12 20:25 README.md
-rw-rw-r--  1 root root  61K Dec 28 16:45 redis.conf
-rwxrwxr-x  1 root root  275 Dec 12 20:25 runtest
-rwxrwxr-x  1 root root  280 Dec 12 20:25 runtest-cluster
-rwxrwxr-x  1 root root  281 Dec 12 20:25 runtest-sentinel
-rw-rw-r--  1 root root 9.5K Dec 12 20:25 sentinel.conf
drwxrwxr-x  3 root root 4.0K Dec 28 16:44 src
drwxrwxr-x 10 root root 4.0K Dec 12 20:25 tests
drwxrwxr-x  8 root root 4.0K Dec 12 20:25 utils

-R 或者 –recursive

递归显示目录下的子目录的树信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
./utils:
total 76
-rw-rw-r-- 1 root root 1277 Dec 12 20:25 redis-copy.rb
-rwxrwxr-x 1 root root 1352 Dec 12 20:25 redis_init_script
-rwxrwxr-x 1 root root 1047 Dec 12 20:25 redis_init_script.tpl
-rw-rw-r-- 1 root root 1762 Dec 12 20:25 redis-sha1.rb
drwxrwxr-x 2 root root 4096 Dec 12 20:25 releasetools
-rwxrwxr-x 1 root root 3787 Dec 12 20:25 speed-regression.tcl
-rwxrwxr-x 1 root root  693 Dec 12 20:25 whatisdoing.sh

./utils/create-cluster:
total 8
-rwxrwxr-x 1 root root 2344 Dec 12 20:25 create-cluster
-rw-rw-r-- 1 root root 1317 Dec 12 20:25 README

5. rm命令

remove
移除

删除文件或者目录

-f 或者 –force

强制执行删除文件操作,例如删除一个wsk.txt

1
2
3
4
5
6
[root@wsk go]# ls
to  wsk.txt
[root@wsk go]# rm wsk.txt 
rm: remove regular empty file ‘wsk.txt’? y
[root@wsk go]# ls
to

-r ,-R,–recursive

递归删除一个目录

1
2
3
4
5
[root@wsk go]# rm -r to/
rm: descend into directory ‘to/’? y
rm: remove directory ‘to/2019-03’? y
rm: remove directory ‘to/2019-01-01’? y
rm: remove directory ‘to/2019-01-08’? y

-rf

删除整个目录

1
2
3
[root@wsk go]# ls
to
[root@wsk go]# rm -fr to/

6. mv命令

move
移动

移动文件或者目录到另外一个目录中,也可以用于重命名

mv a.txt b.txt

重命名操作,将a.txt重命名为b.txt

1
2
3
4
5
[root@wsk go]# ls
a.txt
[root@wsk go]# mv a.txt b.txt
[root@wsk go]# ls
b.txt

mv b.txt s/

将文件b.txt移动到s目录下,如果s目录下已经存在,则覆盖。

1
2
3
4
5
6
[root@wsk go]# ls
b.txt  s  w
[root@wsk go]# mv b.txt s/
[root@wsk go]# ll s
total 0
-rw-r--r-- 1 root root 0 Mar 26 16:01 b.txt

mv b.txt ../w/a.txt

将b.txt移动到上一级目录w下,并重命名为a.txt

1
2
3
4
5
[root@wsk s]# mv b.txt ../w/a.txt
[root@wsk s]# ll ../w/
total 0
-rw-r--r-- 1 root root 0 Mar 26 16:01 a.txt

mv w/ s/ 或者 mv -b w/ s/

将目录w移动到s/目录下。

如果s/目录中已经存在w目录并且子目录不为空,则会报出警告,不能成功的进行移动。除非先把s目录中的w目录的子目录删除,或者使用-b选项(如果移动的目录或者文件已经存在于对象目录中,则移动前进行备份,备份的文件或者目录默认名称为 原名称+~结束)

7. chmod命令

change mode
改变模式

用于变更文件或者目录的权限 Linux系统的文件或者目录是由读取r,写入w,执行x这3种权限公共觉得。执行ll命令出来的第一列就是了。

  • 属主u:文件或者目录的创建者
  • 属组g:文件或者目录所属用户组
  • 其他人o:既不是属主也不是属组里面的用户。

文件或者目录的读取r,写入w,执行权限控制说明

字符 数值 描述
r 4 读取权限,如果是目录,那么就是查看目录的权限。
w 2 写入权限
x 1 执行权限,如果是目录,那么就是切换cd到目录的权限
- 0 没有权限

假设目前有一文件的权限如下。

1
2
3
[root@wsk w]# ll
total 0
-rw-r--r-- 1 root root 0 Mar 26 16:01 a.txt

chmod u=rwx a.txt 或者 chmod u=rwx,g=w a.txt

给文件或者目录授权,属主u=r|w|x,属组g=r|w|x,其他人o=|r|w|x

同时多个授权,用英文逗号隔开。

1
2
3
4
[root@wsk w]# chmod u=rwx a.txt 
[root@wsk w]# ll
total 0
-rwxr--r-- 1 root root 0 Mar 26 16:01 a.txt

chmod o-x a.txt

变更文件或者目录的权限,+ 表示增加,- 表示删除

1
2
3
4
5
[root@wsk w]# chmod o-w,g+w a.txt 
[root@wsk w]# ll
total 0
-rwxrw-r-- 1 root root 0 Mar 26 16:01 a.txt

chmod 755 a.txt

使用数值代码改变文件或者目录的权限,例如将文件的权限修改为“755”(rwxr-xr-x)

一般最常见的是改为“777”(所有人拥有所有权限)

1
2
3
4
5
[root@wsk w]# chmod 755 a.txt
[root@wsk w]# ll
total 0
-rwxr-xr-x 1 root root 0 Mar 26 16:01 a.txt

-R,–recursive

改变一个目录及其以下所有文件的权限

1
2
3
4
[root@wsk go]# chmod -R 777 w/
[root@wsk go]# ll w/
total 0
-rwxrwxrwx 1 root root 0 Mar 26 16:01 a.txt

8. chown命令

change owner
改变所有者

拥有改变文件或者目录的属主和属组。只有文件或目录的创建者,管理员才有权限。

ll 命令显示的第三列和第四列分别表示属主和属组。

1
2
3
[root@wsk go]# ll w/
total 0
-rwxrwxrwx 1 root root 0 Mar 26 16:01 a.txt

chown 属主:属组 文件或者目录

1
2
3
4
5
[root@wsk go]# chown wsk:wsk w/
[root@wsk go]# ll
total 8
drwxr-xr-x 3 root root 4096 Mar 26 16:06 s
drwxrwxrwx 2 wsk  wsk  4096 Mar 26 16:06 w

-R,–recursive

改变目录及其下面所有文件或者目录的属主和属组。

9. cp命令

copy 复制

用于复制文字或者目录

cp w/a.txt s/

将目录w下的a.txt复制到目录s下

1
2
3
4
[root@wsk go]# cp w/a.txt s/
[root@wsk go]# ll s
total 4
-rwxr-xr-x 1 root root    0 Mar 26 16:47 a.txt

cp s/a.txt w/b.txt

将目录s下的a.txt复制到目录w下,并且重命名为b.txt

1
2
3
4
5
[root@wsk go]# ll w/
total 0
-rwxrwxrwx 1 root root 0 Mar 26 16:01 a.txt
-rwxr-xr-x 1 root root 0 Mar 26 16:49 b.txt

-r,-R,–recursive

复制一个目录及其目录中的所有内容到另外一个目录。

如果复制的目录在目标目录中已经存在同名,那么会覆盖,可以使用 -b 选项生成备份,名称为 原名称+~

1
2
3
4
[root@wsk go]# cp -r w/ k/
[root@wsk go]# ll k
total 4
drwxr-xr-x 2 root root 4096 Mar 26 16:51 w

10. scp命令

secure copy 安全复制

用于远程复制文件或者目录。和cp类型,但是cp只能复制本机内的文件或者目录,而scp则是2台服务器之间的复制。

scp 本机文件或者目录 远程登录主机的用户名@远程主机IP:复制到远程主机的目标路径

例如将“a.txt”复制到“192.168.15.15”服务器中。

1
scp a.txt wsk1103@192.168.15.15:/home/wsk/test/

如果远程服务器中存在该文件,则覆盖。

-P

指定端口。默认端口为22

1
scp -P 8080 a.txt wsk1103@192.168.15.15:/home/wsk/test/

-r

将一个目录复制到远程服务器中

1
scp -r 8080 s/ wsk1103@192.168.15.15:/home/wsk/test/

如果远程服务器中存在该目录,则覆盖。

scp 远程登录主机的用户名@远程主机IP:复制到远程主机的目标路径 本机文件或者目录

将远程服务器的文件或者目录复制到本机

1
scp wsk1103@192.168.15.15:/home/wsk/test/a.txt s/

11. cat命令

concatenate 串联

将文件内容打印到标准输出设备上,适用于查看小文件的内容。

-n,–number

对文件内的每一行内容用数字编号。

1
2
3
4
5
6
7
8
9
10
11
[root@wsk redis-5.0.3]# cat -n redis.conf
  1370	# Minimal effort for defrag in CPU percentage
  1371	# active-defrag-cycle-min 5
  1372	
  1373	# Maximal effort for defrag in CPU percentage
  1374	# active-defrag-cycle-max 75
  1375	
  1376	# Maximum number of set/hash/zset/list fields that will be processed from
  1377	# the main dictionary scan
  1378	# active-defrag-max-scan-fields 1000
  1379	

-b,–number-nonblank

对非空行的用数字进行编号

1
2
3
4
5
6
7
[root@wsk redis-5.0.3]# cat -b redis.conf
  1257	# Maximal effort for defrag in CPU percentage
  1258	# active-defrag-cycle-max 75

  1259	# Maximum number of set/hash/zset/list fields that will be processed from
  1260	# the main dictionary scan
  1261	# active-defrag-max-scan-fields 1000

-s,–squeeze-blank

如果连续出现多个空行,则压缩成1行。

去掉空白行

1
2
3
4
5
6
7
[root@wsk redis-5.0.3]# cat redis.conf |grep -v ^$
# active-defrag-cycle-min 5
# Maximal effort for defrag in CPU percentage
# active-defrag-cycle-max 75
# Maximum number of set/hash/zset/list fields that will be processed from
# the main dictionary scan
# active-defrag-max-scan-fields 1000

其中 | 是管道,^$ 是正则表达式,用于匹配空格

去掉 “#”注释行

1
2
3
4
5
6
7
8
[root@wsk redis-5.0.3]# cat redis.conf | grep -v ^#
hz 10

dynamic-hz yes

aof-rewrite-incremental-fsync yes

rdb-save-incremental-fsync yes

去掉 “#”注释行和空白行

1
2
3
4
5
6
7
8
[root@wsk redis-5.0.3]# cat redis.conf | grep -v ^# |grep -v ^$
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit replica 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes

12. more命令

分页显示文本内容。适用与查看较大文件的内容。

每次显示一屏的内容,想屏幕的左下方有 –More–(n%) 的内容表示浏览进度条提示。

支持按键操作响应事件:

按键 描述
回车键 向下滚动一行
空格键 向下滚动一屏
f 向下滚动一屏
b 向上滚动一屏
= 显示当前行的行号
q 退出命令
/pattern 搜索字符,匹配字符不高亮,只能向下搜索,按n搜索下一个

-s

将多行空行压缩成1行

1
[root@wsk redis-5.0.3]# more -s redis.conf 

+n

指定从第n行开始显示

1
[root@wsk redis-5.0.3]# more +50 redis.conf 

-n

每屏只显示n行

1
[root@wsk redis-5.0.3]# more -10 redis.conf 

+/pattern

从搜索到的地方开始显示

1
[root@wsk redis-5.0.3]# more +/wsk redis.conf 

13. less命令

more相似,但是功能更强大。

用于以分页的形式来显示文本内容。适用于查看较大的文件内容。

该命令每次显示一屏的内容,同时还支持按键响应事件:

|按键 | 描述| |—-|—-| 回车键|向下滚动一行 空格键 | 向下滚动一屏 f | 向下滚动一屏 b | 向上滚动一屏 d | 向下滚动半屏 u | 向上滚动半屏 q | 退出命令 PgUp↑ | 向上翻一屏 PgDn↓ | 向下翻一屏 /pattern | 向下搜索字符,匹配字符高亮,按n向下搜索,按N反方向向上搜索 ?pattern | 向上搜索字符,匹配字符高亮,按n向上搜索,按N反方向向下搜索

-s

将连续出现的多个空白行合并为一行。

1
[root@wsk redis-5.0.3]# less -s redis.conf

+n

指定从第n行开始显示,例如从第50行开始显示。

1
[root@wsk redis-5.0.3]# less +50 redis.conf

-n

定义每屏显示的行数,例如每屏显示50行

1
[root@wsk redis-5.0.3]# less -50 redis.conf

+/pattern

从匹配到的搜索处开始显示,例如搜索wsk

1
[root@wsk redis-5.0.3]# less /wsk redis.conf

-N

显示的时候,显示行号

1
[root@wsk redis-5.0.3]# less -N redis.conf

-m

右下角显示文本浏览进度的百分比。

1
[root@wsk redis-5.0.3]# less -m redis.conf