linux 常用命令汇总
linux 本质
linux : 文件系统,一切皆文件
- 命令、选项、参数彼此之间要用空格
- 命令本质上就是一个程序文件,选项和参数本质上都是参数
-
Linux 中的大小写是敏感的,单词容易拼错, 建议初学者使用快捷键 TAB:对命令的自动补全
- 按一下自动补全,如果没有自动补全代表有多个候选项 - 按两下显示所有的匹配项
-
最常见的 Linux 初学者的报错:
-
command not found:命令没有找到
- 命令单词写错了
- 语法格式不对
-
No such file or directory:没有找到该文件或者目录
- 文件路径写的不对
- 文件名写的不多
-
绝对路径、相对路径
-
相对路径 :
如果不加 /,即为从当前路径开始计算 -
绝对路径 :
绝对路径都是使用 / 打头
linux 基本命令
1. ls = list 显示当前目录下所有的文件,包括目录
ls /home 显示指定目录下的所有文件
-a 隐藏的文件也要显示出来
-l 显示详细的信息,包括属主,属组,文件大小,创建时间等
-al 显示所有的文件,并且显示详细的信息
2. cd = change directory 切换目录即打开目录
目录结构
/ 根目录
bin:基本命令的目录,所有用户都可以用的命令就在这里
sbin:超级管理员才能使用的命令,root 用户使用的管理类命令
usr:共享软件的安装位置
var:日志目录,重要记录文件的目录
tmp:临时目录
opt:可选目录
lib:库包的目录
etc:Linux 的配置文件目录
root:管理员的家目录,root 用户的家目录
home:用于存储每个普通用户的家目录的,类似于 windows 上的用户目录
zhizuobiao 用户名
haitong 用户名
……
3. 其他常用命令
- pwd = print word directory 显示当前的目录机构
-
clear:清屏,等价于 Ctrl+l
- whereis:用于查找某个命令的位置
- history:查看历史运行的命令
- last:查看登录信息
- man:用于查询某个命令的使用文档
man $command -
du:统计目录或者文件的大小
du [-sh] $dir_path
s:统计总和
h:人性化显示单位du -sh /opt/
- wc:用于统计文件中的单词、行、字符数
wc [-wcl] $file_path
linux 文件管理命令
创建
> 对文件 file
touch:用于修改文件的时间,如果修改一个不存在的文件,就等于创建一个文件
touch $file_path
touch /opt/haitong.txt
touch haitong03.txt haitong04.txt
注意:
1. Linux 中文件的后缀名不影响该文件的格式,文件后缀名只起到一个标示性的作用
2. touch 命令中创建文件时,文件名中不要包含空格,如果文件名中包含空格,请用引号引起来
> 对目录 director:在本质上实际也是一个文件
mkdir:make directory
mkdir $dir_path
mkdir /opt/bigC
-p:递归,在 linux 中有两个选项经常在与目录相关的操作时表示递归 p/r
删除
rm : remove
rm [-rf] $file_path
-r:递归删除目录时使用
-f:免确认
注意:1. 确认要删除的目标路径
2. 备份关键性的文件,可能影响服务或者系统运行的文件
3. 删除
4. 观察测试
5. 删除备份
编辑
vim/vi
vim $file_path
三种编辑模式:刚进入:命令模式
快捷命令
G:跳转到文件最后一行
gg:跳转到文件的第一行
100gg:光标跳转到 100 行
i:进入编辑模式
dd:剪切当前行
10dd:剪切从当前行开始的 10 行
yy:复制当前行
5yy:复制从当前行开始的 5 行
p:粘贴
o:在下一行插入
O:在上一行插入
A:跳转到行尾部,并进入插入模式
u:回退
按 i 进入:编辑模式
按 esc 键退回命令模式
在命令模式下:按:键(shift+:)进入最后行模式
w:保存
q:不保存退出
wq:保存退出
!:强制的
wq!:强制保存退出
x:保存退出
X:加密,等待输入密码
查看
- cat:一次性查看
cat [-n] /etc/passwd
- more:分页查看,不可回退
翻到最后一页自动退出
- less:分页查看,可回退
按 q 手动退出
- head:查看文件的前 n 行,n 默认为 10
head /etc/passwd
head -5 /etc/passwd
- tail:查看文件的末尾 n 行,n 默认也是 10
tail -[nf] $file_path
f:动态显示文件的末尾变化
复制
cp:copy
cp [-r] $sourcePath... $targetPath
r:用于复制文件夹时使用,代表递归
剪切(重命名)
mv:move
mv $sourcePath $targetPath
压缩、解压缩
原始压缩命令:
-
zip
zip/unzip
-
gzip;最常用的压缩格式
gzip/gunzip
-
bzip2:主要压缩大文件
bzip2/bunzip2
缺点:不能对目录进行压缩,只能压缩文件
推荐命令:
tar:打包命令,可以将目录打包成一个文件
c:打包
x:解包
z:gzip 格式
j: bzip2 格式
f:档名
j:bzip2 格式
v:显示打包或者解包的过程
t:查看一个压缩文件的内容
-C:解压到什么地方
示例:压缩一个目录成为 gzip 格式的文件
tar -zcvf /big.tar.gz /opt/bigC/bigD/bigE
将 bigE 目录打包成一个 gizp 格式的压缩文件放在 / 目录下
tar -tvf /big.tar.gz
tar -zxvf bigE.tar.gz -C /opt
gz 格式的压缩文件的后缀名:.tar.gz/.tgz
如果是 bzip2
将上面的 z 改成 j 就可以了
后缀名:.tar.bz2
tar -jxvf bigE.tar.bz2 -C /opt
查找
find 查找文件的位置
示例:在 / 中查找名称中带有 init 的文件或者目录
find / -name *init*
查询条件:-name:按名称查找
-size:按大小查找,默认的单位是块(512 字节),可以指定 K、M、G
-10: 小于 10 个块的大小
+10: 大于 10 个块的大小
-o:表示或者
-a:并且
find /etc -size +1000 -a -size -1100
-type:按类型查找
f:文件
d:目录
-user:按用户查找
符合查询:find /etc/ -size +1000 -a -name *init*
linux 用户管理命令
linux 是一个多用户的管理系统
两类用户:管理员:默认是一个叫 root 的用户
大部分的管理操作都只能由管理员来执行
软件安装、用户的管理、修改系统的属性……
普通用户:普通用户的家目录:/home/$username
创建用户:useradd -[g] $username
useradd haitong
g:指定用户属于哪个组的 id
设置密码:passwd $username
passwd haitong
Linux 中管理用户的配置文件:/etc/passwd
root:x:0:0:root:/root:/bin/bash
用户名:密码:用户 id:组 id:组的名称:家目录:shell 类型
普通用户的 id 都从 500 开始
删除用户:userdel -r $username
r:表示删除用户时同时删除该用户的家目录
创建用户组:groupadd $groupname
删除用户组
groupdel $groupname