Skip to content

Commit bf3e205

Browse files
committed
📝 Writing docs.
1 parent 4b27d20 commit bf3e205

4 files changed

Lines changed: 92 additions & 141 deletions

File tree

docs/linux/01.查看Linux命令帮助信息.md

Lines changed: 35 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,44 +12,46 @@ tags:
1212

1313
> Linux 中有非常多的命令,想全部背下来是很困难的事。所以,我认为学习 Linux 的第一步,就是了解如何快速检索命令说明。
1414
>
15-
> 关键词:`help`, `whatis`, `info`, `which`, `man`
15+
> 关键词:`help`, `whatis`, `info`, `which`, `whereis`, `man`
1616
1717
<!-- TOC depthFrom:2 depthTo:3 -->
1818

1919
- [查看 Linux 命令帮助信息的要点](#查看-linux-命令帮助信息的要点)
20-
- [命令概述](#命令概述)
21-
- [查看 Shell 内部命令 - help](#查看-shell-内部命令---help)
22-
- [查看命令的简要说明 - whatis](#查看命令的简要说明---whatis)
23-
- [查看命令的详细说明 - info](#查看命令的详细说明---info)
24-
- [查找命令的绝对路径 - which](#查找命令的绝对路径---which)
25-
- [查看命令的帮助手册 - man](#查看命令的帮助手册---man)
20+
- [命令常见用法](#命令常见用法)
21+
- [help](#help)
22+
- [whatis](#whatis)
23+
- [info](#info)
24+
- [which](#which)
25+
- [whereis](#whereis)
26+
- [man](#man)
2627
- [参考资料](#参考资料)
2728

2829
<!-- /TOC -->
2930

3031
## 查看 Linux 命令帮助信息的要点
3132

32-
- 查看 Shell 内部命令的帮助信息 - 使用 `help`
33-
- 查看命令的简要说明 - 使用 `whatis`
34-
- 查看命令的详细说明 - 使用 `info`
35-
- 查看命令的位置 - 使用 `which`
36-
- 查看命令的帮助手册(包含说明、用法等信息) - 使用 `man`
37-
- 只记得部分命令关键字 - 使用 `man -k`
33+
- 查看 Shell 内部命令的帮助信息 - 使用 [help](#help)
34+
- 查看命令的简要说明 - 使用 [whatis](#whatis)
35+
- 查看命令的详细说明 - 使用 [info](#info)
36+
- 查看命令的位置 - 使用 [which](#which)
37+
- 定位指令的二进制程序、源代码文件和 man 手册页等相关文件的路径 - 使用 [whereis](#whereis)
38+
- 查看命令的帮助手册(包含说明、用法等信息) - 使用 [man](#man)
39+
- 只记得部分命令关键字 - 使用 man -k
3840

3941
> 注:推荐一些 Linux 命令中文手册:
4042
>
4143
> - [Linux 命令大全](http://man.linuxde.net/)
4244
> - [linux-command](https://github.com/jaywcjlove/linux-command)
4345
44-
## 命令概述
46+
## 命令常见用法
4547

46-
### 查看 Shell 内部命令 - help
48+
### help
4749

4850
> help 命令用于查看 Shell 内部命令的帮助信息。而对于外部命令的帮助信息只能使用 man 或者 info 命令查看。
4951
>
5052
> 参考:http://man.linuxde.net/help
5153
52-
### 查看命令的简要说明 - whatis
54+
### whatis
5355

5456
> whatis 用于查询一个命令执行什么功能。
5557
>
@@ -65,7 +67,7 @@ $ whatis man
6567
$ whatis -w "loca*"
6668
```
6769

68-
### 查看命令的详细说明 - info
70+
### info
6971

7072
> info 是 Linux 下 info 格式的帮助指令。
7173
>
@@ -78,7 +80,7 @@ $ whatis -w "loca*"
7880
$ info man
7981
```
8082

81-
### 查找命令的绝对路径 - which
83+
### which
8284

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

100102
cd 这个常用的命令竟然找不到啊!为什么呢?这是因为 cd 是 bash 内建的命令!但是 which 默认是找 PATH 内所规范的目录,所以当然一定找不到的!
101103

102-
### 查看命令的帮助手册 - man
104+
### whereis
105+
106+
> whereis 命令用来定位指令的二进制程序、源代码文件和 man 手册页等相关文件的路径。
107+
>
108+
> whereis 命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man 说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。
109+
>
110+
> 参考:http://man.linuxde.net/whereis
111+
112+
示例:
113+
114+
```sh
115+
whereis git # 将相关的文件都查找出来
116+
```
117+
118+
### man
103119

104120
> man 命令是 Linux 下的帮助指令,通过 man 指令可以查看 Linux 中的指令帮助、配置文件帮助和编程帮助等信息。
105121
>

docs/linux/02.Linux文件目录管理.md

Lines changed: 55 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ tags:
1010

1111
# Linux 文件目录管理
1212

13-
> 关键词:`cd`, `ls`, `pwd`, `mkdir`, `rmdir`, `tree`, `touch`, `ln`, `rename`, `stat`, `file`, `chmod`, `chown`, `cp`, `mv`, `rm`
13+
> 关键词:`cd`, `ls`, `pwd`, `mkdir`, `rmdir`, `tree`, `touch`, `ln`, `rename`, `stat`, `file`, `chmod`, `chown`, `locate`, `find`, `cp`, `mv`, `rm`
1414
1515
<!-- TOC depthFrom:2 depthTo:3 -->
1616

@@ -35,6 +35,8 @@ tags:
3535
- [file](#file)
3636
- [chmod](#chmod)
3737
- [chown](#chown)
38+
- [locate](#locate)
39+
- [find](#find)
3840
- [cp](#cp)
3941
- [mv](#mv)
4042
- [rm](#rm)
@@ -121,6 +123,10 @@ dr-xr-xr-x 4 root root 4096 Apr 19 2012 boot
121123
- 探测文件类型 - 使用 [file](#file)
122124
- 设置文件或目录的权限 - 使用 [chmod](#chmod)
123125
- 设置文件或目录的拥有者或所属群组 - 使用 [chown](#chown)
126+
- 查找文件或目录 - 使用 [locate](#locate)
127+
- 在指定目录下查找文件 - 使用 [find](#find)
128+
- 查找命令的绝对路径 - 使用 [which](#which)
129+
- 查找命令的程序、源代码等相关文件 - 使用 [whereis](#whereis)
124130

125131
### 文件和目录通用管理
126132

@@ -357,6 +363,54 @@ chmod -R 755 /home/wwwroot/*
357363
chown -R liu /usr/meng
358364
```
359365

366+
### locate
367+
368+
> locate 命令和 slocate 命令都用来查找文件或目录。
369+
>
370+
> locate 命令其实是 find -name 的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,这个数据库中含有本地所有文件信息。Linux 系统自动创建这个数据库,并且每天自动更新一次,所以使用 locate 命令查不到最新变动过的文件。为了避免这种情况,可以在使用 locate 之前,先使用 updatedb 命令,手动更新数据库。
371+
>
372+
> 参考:http://man.linuxde.net/locate_slocate
373+
374+
示例:
375+
376+
```sh
377+
locate pwd # 查找和 pwd 相关的所有文件
378+
locate /etc/sh # 搜索 etc 目录下所有以 sh 开头的文件
379+
```
380+
381+
### find
382+
383+
> find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
384+
>
385+
> 参考:http://man.linuxde.net/find
386+
387+
```sh
388+
# 当前目录搜索所有文件,文件内容 包含 “140.206.111.111” 的内容
389+
find . -type f -name "*" | xargs grep "140.206.111.111"
390+
391+
# 列出当前目录及子目录下所有文件和文件夹
392+
find .
393+
394+
# 在 /home 目录下查找以 .txt 结尾的文件名
395+
find /home -name "*.txt"
396+
# 同上,但忽略大小写
397+
find /home -iname "*.txt"
398+
399+
# 当前目录及子目录下查找所有以 .txt 和 .pdf 结尾的文件
400+
find . -name "*.txt" -o -name "*.pdf"
401+
402+
# 匹配文件路径或者文件
403+
find /usr/ -path "*local*"
404+
405+
# 基于正则表达式匹配文件路径
406+
find . -regex ".*\(\.txt\|\.pdf\)$"
407+
# 同上,但忽略大小写
408+
find . -iregex ".*\(\.txt\|\.pdf\)$"
409+
410+
# 找出 /home 下不是以 .txt 结尾的文件
411+
find /home ! -name "*.txt"
412+
```
413+
360414
### cp
361415

362416
> cp 命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp 命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

docs/linux/Linux文件查找和比较命令.md

Lines changed: 0 additions & 118 deletions
This file was deleted.

docs/linux/README.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,10 @@
22

33
## 内容
44

5-
- [查看 Linux 命令帮助信息](01.查看Linux命令帮助信息.md) - 关键词:`help`, `whatis`, `info`, `which`, `man`
6-
- [Linux 文件目录管理](02.Linux文件目录管理.md) - 关键词:`cd`, `ls`, `pwd`, `mkdir`, `rmdir`, `tree`, `touch`, `ln`, `rename`, `stat`, `file`, `chmod`, `chown`, `cp`, `mv`, `rm`
5+
- [查看 Linux 命令帮助信息](01.查看Linux命令帮助信息.md) - 关键词:`help`, `whatis`, `info`, `which`, `whereis`, `man`
6+
- [Linux 文件目录管理](02.Linux文件目录管理.md) - 关键词:`cd`, `ls`, `pwd`, `mkdir`, `rmdir`, `tree`, `touch`, `ln`, `rename`, `stat`, `file`, `chmod`, `chown`, `locate`, `find`, `cp`, `mv`, `rm`
77
- [Linux 文件内容查看命令](Linux文件内容查看命令.md) - 关键词:`cat`, `head`, `tail`, `more`, `less`
88
- [Linux 文件编辑命令](Linux文件编辑命令.md) - 关键词:`sed`, `vi`
9-
- [Linux 文件查找和比较命令](Linux文件查找和比较命令.md) - 关键词:`diff`, `locate`/`slocate`, `find`, `which`, `whereis`
109
- [Linux 文件压缩与解压命令](Linux文件压缩与解压命令.md) - 关键词:`tar`, `gzip`, `zip`, `unzip`
1110
- [Linux 用户管理命令](Linux用户管理命令.md) - 关键词:`groupadd`, `groupdel`, `groupmod`, `useradd`, `userdel`, `usermod`, `passwd`, `su`, `sudo`
1211
- [Linux 系统管理命令](Linux系统管理命令.md) - 关键词:`reboot`, `exit`, `shutdown`, `date`, `mount`, `umount`

0 commit comments

Comments
 (0)