1. Linux命令
1.1. 文件操作命令
(1) cd 目录名 : 切换到指定目录(目录可以是一条路径(绝对路径/相对路径))
路径 | 说明 | 实例 |
目录名 | 切换到制定目录 | cd /home |
.. | 返回上一级 | cd ../ |
../.. | 返回上两级目录 | cd ../.. |
/ | 切换到根目录 | cd / |
- | 返回上一次操作所在的目录 | cd - |
~ | 返回用户家目录 root目录 | cd ~ |
(2) pwd :查看当前位置(以绝对路径显示)
(3) ls [参数] : 查看目录下的文件
参数 | 说明 | 实例 |
-a | 显示所有文件(包括隐藏文件) | ls -a :显示当前目录下所有文件 |
-l | 查看详细的文件信息 | ls -l :可以简写为ll |
文件颜色说明:
颜色 | 说明 |
白色 | 代表普通文件 |
蓝色 | 代表目录文件 |
绿色 | 代表可执行文件 |
红色 | 代表压缩文件 |
浅蓝色 | 代表链接文件 |
红色闪烁 | 代表链接文件有问题 |
黄色 | 代表设备文件 |
灰色 | 代表其他文件 |
(4) mkdir 目录名 创建文件夹(目录文件)
参数 | 说明 | 实例 |
-p | 可以创建递归目录 | mkdir -p aaa/bbb/ccc |
(5) rm 文件名(没有参数的时候,删除普通文件)
参数 | 说明 | 实例 |
-r | 删除目录文件 | rm -r AAA :删除AAA这个目录文件 |
-f | 取消提示(又叫强制删除) | rm -f a.out :删除a.out这个文件(无提示信息) |
(6) cp 源文件 目的文件(可以更改文件名字) copy
复制文件(将源文件复制到目的文件,可以添加路径,默认复制文件)
参数 | 说明 | 实例 |
-r | 复制目录文件 | cp -r /opt/AAA /home :将AAA目录复制到home目录下 |
touch 创建一个普通文件
(7) mv 源文件 目的文件 :剪切(移动)
(8) cat 文件(可加路径) :查看文件内容
参数 | 说明 | 实例 |
-n | 显示行号 | cat -n a.out: 查看文件内容,并显示行号 |
(9) tail 文件名 :默认显示文件后十行内容
参数 | 说明 | 实例 |
-n | 显示后n行 | tail -n 3 a.out : 查看文件后三行内容 |
-f | 循环显示文件尾部内容(常用于查看日志信息) | tail -f a.out : 循环显示文件后十行内容 |
(10) less 文件名 :分页显示
操作 | 说明 | 实例 |
空格 | 翻一页 |
|
Pageup | 向上一页 |
|
Pagedown | 向下翻一页 |
|
G | 跳到最后一行 |
|
g | 跳到第一行 |
|
q | 离开 |
|
/关键字 | 向下查找关键字 | /中国 :向下查找关键字“中国” |
?关键字 | 向上查找关键字 | ?中国 :向上查找关键字“中国” |
(11) 重定向
符号 | 说明 | 实例 |
> | 覆盖重定向(原内容不存在)将前一个命令的结果(必须是有输出结果的,例如:ls,pwd,cat,more等)导入到后一个命令中 | echo abc > a.out :将abc这三个字符,重定向到a.out这个文件中,原文件内容被覆盖 |
>> | 追加重定向(原内容存在,追加到最后一行)将前一个命令的结果(必须是有输出结果的,例如:ls,pwd,cat,more等)导入到后一个命令中 | echo abc >> a.out :将abc这三个字符,追加重定向到a.out这个文件中的最后一行 |
(12) vim(vi) :文本编辑器(相当于Windows的记事本,多平台的)
模式 | 操作 | 说明 |
命令模式 | wq | 保存退出 |
q | 不保存退出 | |
wq! | 保存强制退出 | |
q! | 不保存强制退出 | |
w | 另存为新文件名 | |
Set nu | 显示行号 | |
Set nonu | 取消显示行号 | |
n1,n2 s/关键字1/关键字2/g | 从n1行到n2行,用关键字2替换关键字1 | |
% s/关键字1/关键字2/g | 全文替换关键字 | |
一般模式 | dd | 删除光标所在的一行 |
ndd | ndd删除光标所在行以及下面的n-1行(n必须大于0) | |
D | 删除光标及光标之后的内容 | |
x | 删除光标所在位置的字符 | |
nx | 删除光标所在位置以及后面的n-1个字符 | |
nX | 删除光标之前的n个字符,不包括光标所在位置 | |
u | 撤销 | |
yy | 复制光标所在的一行 | |
nyy | 复制光标光标所在行以及下面的n-1行 | |
p | 在光标下一行粘贴 | |
P | 在光标上一行粘贴 | |
v | 选中文本(光标所在的字符,按y复制,p粘贴,d删除,退出v) | |
V | 选中文本(光标所在的一行,按y复制,p粘贴,d删除,退出V) | |
gg | 光标跳到第一行 | |
G | 光标跳到最后一行 | |
^ | 光标移动到行首 | |
$ | 光标移动到行尾(^$代表空行) | |
/关键字 | 向下查找关键字 | |
?关键字 | 向上查找关键字 | |
编辑模式 | A | 在光标所在行的行尾开始插入 |
a | 在光标所在字符后开始插入 | |
I | 在光标所在行的行首开始插入 如果行首有空格则在空格之后插入 | |
i | 在光标所在字符前开始插入 | |
O | 在光标所在行的上面另起一行开始插入 | |
o | 在光标所在行的下面另起一新行插入 |
(13) wc 文件名 :统计文件中的信息(多少行,词组)
参数 | 说明 | 实例 |
-l | 统计文件有多少行 | wc -l a.out:统计a.out中有多少行 |
-w | 统计文件中有多少词组(单词) | wc -w a.out:统计a.out中有多少行 |
(14) locate 文件名 :查找文件(从数据库查找,速度快比较快)
数据库存放的是文件名字等信息,默认一天更新一次
查找当天文件时,需要更新数据库updatedb
一般使用前,先更新updatedb再查找locate
(15) grep 关键字 文件名 :从文件中过滤出来含有关键字的行
参数 | 说明 | 实例 |
-n | 显示行号 |
|
-v | 反向过滤(关键字所在的行不显示) | grep -v abc a.out:过滤a.out文件中不带abc的行 |
(16) tar 参数 打包后/压缩后的文件名 要打包/压缩的文件名 :打包/压缩文件
参数 | 说明 | 实例 |
-c | 打包(由多个文件(包括文件夹)形成一个文件) | tar -cvf abc.tar A B C 将A B C 三个文件打包为abc.tar并显示打包过程 |
-z | 压缩(由一个体积大的文件形成一个体积小的文件) | tar -cvzf abc.tar A B C 将A B C 三个文件打包为abc.tar并压缩且显示打包过程 |
-v | 显示打包过程中的详细信息 | -P参数可以解决压缩时的路径问题 |
-f | 后面紧跟打包文件名 |
|
-x | 解包 | tar -xvf abc.tar 将abc.tar解包为A B C 三个文件 |
-C(大写) | 解包到指定目录 | tar -xzvf abc.tar.gz -C 路径 将abc.tar.gz解包并解压缩到制定目录下 |
(17) ln 文件名 :链接文件
参数 | 说明 | 实例 |
-s | 创建软连接,删除源文件之后,软连接不能工作(没有那个目录或文件呢),软连接占用空间小,随着源文件的更新而更新 | ln -s 源文件 链接后文件 创建软链接 |
| 不加任何参数,创建硬链接,删除源文件之后,硬链接正常工作,硬链接占用空间的源文件一样大,随着源文件的更新而更新 |
|
(18) chmod 权限 文件名 :修改文件权限 change mode
参数 | 动作 | 实例 |
u(user)拥有者 | +、(追加权限)-、(减少权限)=(赋予权限) | chmod u+r, ls.txt 给ls.txt这个文件的拥有者增加读权限 |
g(group)所属组 | ||
o(other)其他人 | ||
a(all)所有人 |
1.2. 用户管理命令
su 用户名 :切换用户(如果不加用户名,默认切换到root用户)
sudo + 命令:提升用户权限(暂时使用root权限)