目录
一、帮助指令
1.man获取帮助信息
2.help指令
3.常用快捷键
二、文件和目录相关指令
1.pwd 指令
2.ls 指令
3.cd 指令
4.mkdir 指令
5.rmdir指令
6.touch指令
7.cp 指令
8.rm 指令
9.mv 指令
10.cat 指令
11.more 指令
12.less 指令
13.echo 指令
14.head 指令
15.tail 指令
16. > 指令和 >> 指令
17.ln 指令
18.history 指令
man 命令或配置文件 //获取帮助信息
显示说明
信息 | 功能 |
NAME | 命令的名称和单行描述 |
SYNOPSIS | 怎样使用命令 |
DESCRIPTION | 命令功能的深入讨论 |
EXAMPLES | 怎样使用命令的例子 |
SEE ALSO | 相关主题(通常是手册页) |
外部命令的另一种查询方法 : ls --help
举个例子:
(1)使用man查看shell内置
man -f cd
(2)man也可以自查
man man
help 命令 //获得shell内置命令的帮助信息
一部分基础功能的系统命令是直接内嵌在 shell 中的,系统加载启动之后会随着 shell 一起加载,常驻系统内存中。这部分命令被称为“内置(built-in)命令”;相应的其它命令被称为“外部命令”。
type 命令 可以查询该命令是否为shell内置命令。
举个例子:
help cd
常用快捷键
常用快捷键 | 功能 |
ctrl + c | 停止进程 |
ctrl + l | 清屏,等同于 clear;彻底清屏是:reset |
tab | 提示 |
上下键 | 查找执行过的命令 |
pwd // 显示当前工作目录的绝对路径
ls [选项] [目录或文件]
选项说明
选项 | 功能 |
-a | 全部的文件,连同隐藏文件(开头为 . 的文件)一起列出来 |
-l or ll | 长数据串列出,包含文件的属性与权限等数据 |
-h | 显示文件大小时,以 k,m,g单位显示 |
每行列出的信息依次是:文件类型与权限 链接数 文件属主 文件属组 文件大小(用byte来表示)、 建立或最近修改的时间 文件名
举个例子:
(1)查看当前目录的所有内容信息
ls -alh //显示当前的目录内容
(2)查看指定目录的内容信息
ls -alh 指定目录
cd [参数] //切换到指定目录
参数说明
参数 | 功能 |
cd 绝对路径 | 切换路径 |
cd 相对路径 | 切换路径 |
cd ~ or cd |
回到自己的家目录 |
cd - | 回到上一次所在的目录 |
cd .. | 回到当前目录的上一级目录 |
cd -P | 跳转到实际物理路径,而非快捷方式路径 |
举个例子:
使用相对路径切换到root下的bin文件夹
cd ../../root/bin
mkdir [选项] 要创建的目录
选项说明
选项 | 功能 |
-p | 创建多层目录 |
举个例子:
(1)在当前目录创建一个文件夹 puppy
mkdir puppy
(2)同时创建b、c文件夹
mkdir b c
(3)同时创建b、c、e文件夹,关系为b/c/e
mkdir -p b/c/e
或者 mkdir b b/c b/c/e
不可以 mkdir b/c/e
rmdir [选项] 要删除的空目录 //删除空目录
举个例子
(1)删除一个空的文件夹f,其中 d/e/f
rmdir d/e/f
(2)删除一个不为空的目录d,其中 d/e/f
rmdir d //删除失败,因为d不为空
rmdir d/e/f d/e d
或者 rmdir -p d/e/f
或者 rm -rf d/ (慎用,r表示递归,f表示强制删除且不提示)
touch 文件名称 // 创建空文件,还可以更新文件的修改时间
举个例子:
创建一个空文件:
touch hello.txt
如果文件不存在,则创建一个空文件;如果文件存在则刷新该文件的修改时间。
cp [选项] source dest // 复制source到dest
选项说明
选项 | 功能 |
-r | 递归复制整个文件夹 |
参数说明
参数 | 功能 |
source | 源文件夹或文件 |
dest | 目标文件 |
若 cp a.txt /home/mm/b.txt 则会覆盖b.txt,会提示是否覆盖,若不需要提示则将 cp 替换为 \cp 。
举个例子:
(1)将/home/xx/a.txt 复制到 /home/mm目录下
cp /home/xx/a.txt /home/mm/
(2)递归复制整个文件夹,将xx文件夹复制到mm下
cp -r /home/xx/ /home/mm/
rm [选项] 要删除的文件或目录 // 移除文件或目录
选项说明
选项 | 功能 |
-r | 递归删除目录中所有内容 |
-f | 强制执行删除操作,且不提示 |
-v | 显示指令的详细执行过程 |
举个例子:
(1)递归删除目录中所有内容
rm -rf hello/
(2)删除整个数据库(删库跑路)
rm -rf /* // * 表是根目录下的所有目录都迭代强制删除
mv OldFileName NewFileName // 重命名
mv sourceFileOrFolder TargetFolder // 移动文件或目录
cat [选项] 要查看的文件 // 查看文件内容
选项说明
选项 | 功能 |
-n | 显示所有的行号,包括空行 |
cat只能浏览文件,不能修改文件。一般查看比较小的文件,一屏幕能显示全的。
为了浏览方便,一般会带上管道命令 | more:
eg:cat xxx.txt | more
把 cat xxx.txt 输出结果交给 more 处理,如果需要下翻一行,输入enter;如果需要翻页,输入空格;如果需要退出,输入q。
more 指令是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more 指令中内置了若干快捷键。
more 要查看的文件
快捷键
操作 | 功能 |
空格键 | 下翻一页 |
Enter | 下翻一行 |
q | 立刻离开more,不再显示该文件内容 |
ctrl + f | 向下滚动一屏 |
ctrl + b | 返回上一屏 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行的行号 |
less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
less 要查看的文件
操作说明
操作 | 功能说明 |
空格键 | 向下翻动一页 |
[pagedown] | 向下翻动一页 |
[pageup] | 向上翻动一页 |
/ 字串 | 向下搜寻 [字串] 的功能。n:向下查找 N:向上查找 |
?字串 | 向上搜寻 [字串] 的功能。n:向上查找 N:向下查找 |
q | 离开 less 这个程序 |
g | 到首行 |
shift + g | 到最后一行 |
echo [选项] [输出内容] // 输出内容到控制台
选项说明
选项 | 功能 |
-e | 支持反斜线控制的字符转换 |
控制字符 | 作用 |
\\ | 输出 \ 本身 |
\n | 换行符 |
\t | 制表符,也就是Tab键 |
举个例子:
(1)输入 :echo "hello\tworld" 输出 :hello\tworld
(2)输入 :echo "hello\tworld" 输出 :hello world
(3)输出环境变量 (echo $系统环境变量)
echo $PATH
(4)输入 :echo hello world 输出 :hello world (只输出一个空格)
(5)输入 :echo "hello world" 输出:hello world(加引号可以保留输出内容)
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容。
head 文件 //查看文件前十行内容
head -n 5 文件 //查看文件前5行内容,5可以是任意数字
选项说明
选项 | 功能 |
-n <行数> | 显示头部 n 行的内容 |
tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的后 10 行内容。
tail 文件 // 查看文件尾部 10 行内容
tail -n 5 文件 // 查看文件尾部 5 行内容,5 可以是任意数
tail -f 文件 // 实时追踪该文档的所有更新
选项说明
选项 | 功能 |
-n <行数> | 显示尾部 n 行的内容 |
-f | 显示文件最新追加的内容,监视文件变化 |
> 输出重定向 >> 追加
ls -l > 文件 // 列表的内容写入文件 a.txt 中(覆盖写)
ls -al >> 文件 // 列表的内容追加到文件 a.txt 的末尾
cat 文件1 > 文件2 // 将文件1的内容覆盖到文件2
echo “内容” >> 文件
举个例子:
采用 echo 将 hello 单词追加到文件中
echo hello>>a.txt
软链接也称为符号链接,类似于 Windows 里的快捷方式,有自己的数据块,主要存放了链接其他文件的路径。(硬链接是直接指向,软链接是创建另一个链接)
软链接:
ln -s [原文件或目录] [软链接名] // 给原文件创建一个软链接
硬链接:
ln 文件名或目录 链接名 //创建一个硬链接
删除软链接:rm -rf 软链接名, 而不是 rm -rf 软链接名/。如果使用rm -rf 软链接名/ 删除,会把软链接对应的真实目录下的内容删掉。
查询:通过 ll 就可以查看,列表属性第 1 位是 l ,尾部会有位置指向。
注意:当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录。
举个例子:
进入软链接实际屋里路径
# ln -s hello/mm/ ./name
# cd -P name/
history // 查看已经执行过的历史命令
!+ 命令行ID号 //重复调用该命令
history -c //历史命令全部清空
举个例子:
(1)显示最近使用过的10个命令
history 10
(2)执行历史编号为5的指令
!5