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