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权限)