linux常用命令
O 补充说明
(一)基本信息
- 命令参考手册:https://www.linuxcool.com/
- 当前用户名@主机名:~$
- ~当前所在目录
- $代表是普通用户
- #root登陆就是超级管理员
- linux严格区分大小写
linux终端命令格式:command [-options] [parameter]
- [-options]:选项:用于调整命令的功能
- 可以有零个、一个或者多个选项,多个选项可以合并,比如使用的 -r 就是选项。
- 选项可以分为短选项和长选项
a. 短选项的格式: '-'后面接单个字母, 比如:-r
b. 长选项的格式: '–'后面接单词, 比如:–help
- [parameter]:参数:命令的操作对象,一般是文件名或者目录名。
- 可以有零个、一个 或者 多个参数, 比如: touch 文件名、mkdir 目录名、cd 目标目录(路径),这些文件名和目录名都是参数。
- [ ]:代表可选
- 对于命令,它的选项和参数一般情况下没有顺序要求,但是scp命令是必须先选项然后在跟上参数。
(二)快捷键
大概记点
- ctrl + shift + ‘+’ 放大字体
ctrl + ‘-’ 缩小字体
ctrl + alt + t 启动终端
ctrl + l 清空终端
ctrl + a 回到行首
ctrl + e 回到行尾
ctrl + u 快速删除当前行的命令
ctrl + c 强制终止当前命令执行
vim 文件 编辑文件 ctrl s 报存
(三)相对路径与绝对路径
绝对路径
- 从根目录算起的路径叫做绝对路径
- 举例
- /home/juran/Desktop
- /usr/bin
相对路径
- 从当前目录算起的路径叫做相对路径
- 举例
- ./test/hello
- …/static/images
(四)其他
能使用正则的命令 | 语句 |
---|---|
ls | 文件名可正则表示,如ls ‘*.txt’ 显示当前的文本文件 |
rm | 文件名可正则表示 |
mv | 文件名可正则表示 |
cp | 文件名可正则表示 |
tar | 文件名可正则表示 |
- pwd:显示当前工作路径
- shutdown -h now 立刻关机
- rebot 重启
一、查看命令
(一)查看目录命令
命令 | 语句 | 说明 |
---|---|---|
ls | ls [路径] | 查看当前目录下信息,只能看一层 ,后面跟上路径 就是查看指定路径上的文件 |
tree | tree [路径] | 以树状方式显示目录信息,可以看到子目录 ,后面跟上路径… |
ll | ll | 查看当前目录下信息 |
ls [-选项]
- -l 以列表的方式显示
- -h 以大小单位显 示,默认字节
- -a 显示隐藏文件和隐藏目录
ls -l -a 或ls la 查看隐藏+普通文件+显示字节数 ls -lh 查看隐藏+普通文件+显示字节大小 ls -lha 查看隐藏+普通文件+显示字节大小
tree效果
- 需要下载该命令:sudo apt install tree
- 下载的时候输入密码是隐藏不显示
(二)查看帮助文档
命令 | 语句 | 说明 |
---|---|---|
help | ls --help | 用的多些 |
man | man ls | 更加详细 |
(三)查看文件内容
命令 | 语句 | 说明 |
---|---|---|
cat | cat 文件名 | 查看小型文件,支持查看多个(空格隔开)cat命令结合重定向可以完成多个文件合并 |
more | more 文件名 | 分屏查看大型文件 |
more操作键
- 空格 显示下一屏
- 回车 显示下一行
- b 显示上一屏
- q 退出
(四)查看高级命令
命令 | 语句 | 说明 |
---|---|---|
ps | ps -aux | 显示进程状态,就是运行的文件 |
which | which 命令 | 查看命令文件位置 |
ifconfig | ifconfig | 查看IP地址信息 |
config get | config get 某参数 | 查询配置文件设置 |
应用
- 查看redis是否运行
- ps -aux
- ps aux|grep redis
- 查看运行的文件,根据进程号,关闭运行的文件
- kill -9 进程号 干掉进程
二、改变文件目录命令
(一)创建文件、目录
命令 | 语句 | 说明 |
---|---|---|
touch | touch 文件名 | 可一次创建多个文件(空格隔开),可指定文件夹下创建touch CC/2.py (CC得存在) |
mkdir | mkdir 文件夹名 | 默认创建一层目录,可指定文件夹下创建目录mkdir AA/CC(AA得存在)-p 创建嵌套多个文件夹 |
config set | config set 参数 某值 | 修改配置文件设置 |
取名规范
- /不能用,其他可以但最好都规范不要用特殊字符取名
- .开头是一个隐藏文件
(二)复制、移动文件/目录
命令 | 语句 | 说明 |
---|---|---|
cp | cp 文件/目录 文件/目录 | 拷贝目录文档目录,可以指定文件夹下操作,可重命名 ,文件夹要加-r |
mv | mv 文件/目录 文件/目录 | 移动目录文档目录,可以指定文件夹下操作,可重命名 ,不需要加-r |
cp [-选项]
- -i 交互式提示 只有要覆盖的时候会提示
- -r 递归拷贝目录及其内容
- -v 显示拷贝后的路径描述
- -a 保留文件的原有权限,选项还支持拷贝文件夹并且文件夹的文件权限不丢失
mv [-选项]
- -i 交互式提示 只有要覆盖的时候会提示
- -v 显示移动后的路径描述
应用
- 拷贝文件防止覆盖 :cp -i
- 拷贝文件夹 : cp -r
- 拷贝文件夹并且文件权限不丢失 : cp -a
- 移动文件放置覆盖 : mv -i
(三)编辑文件
命令 | 说明 | 语句 |
---|---|---|
gedit | gedit 文件名 | 直接进入文件编辑 |
vim | vim 文件名 | 在终端写,主要用于修改配置文件 |
vim
- esc:退出
- wq:保存并退出
- dd:双击dd删除当前行
- i:插入行
应用
- 定位到行号编写:vim 文件 +行号
(四)删除文件目录
命令 | 语句 | 说明 |
---|---|---|
rm | rm 文件名/文件夹名 | 删除文件或目录,不添加参数-i会直接删,文件夹要加-r |
rmdir | rmdir 文件夹名 | 只能删除空目录,直接删 |
rm [-选项]
- -i 交互式提示
- -r 递归删除目录及其内容,删除目录必须得加
- -f 强制删除,忽略不存在的文件,无需提示
- -d 删除空目录
应用
- 先删最里面的文件,递归,提示删不不删:rm -ri
- 强制删除,无论有没有:rm -rf
- 删除空目录:rmdir 目录名、rm -d 目录名
- 删除非空目录:rm -r 目录名
三、搜索命令
(一)文本内容搜索命令
命令 | 语句 | 说明 |
---|---|---|
grep | grep 文件名 ‘搜索字段’ | 文本搜索,搜索字段也可以用正则来匹配 |
config | config get 参数 | get搜索配置文件参数值 ,set修改立即生效,不需要重启 Redis 服务,缺点是重启 Redis 之后,设值就会失效 |
: / | : / 搜索的字段 | 在文件里面搜索,vim打开文件后 |
grep [-选项]
- -i :忽略大小写
- -n:显示匹配行号
- -v:取反
应用
- grep 命令还可以文本搜索管道中的内容 比如ls / | grep ‘lib’
- 通过搜索文本位置行号,然后用vim打开文件可以定位到这一行
- vim +行号 文本
- vim +行号 文本
(二)查找搜索文件或目录
命令 | 语句 | 说明 |
---|---|---|
find | find 路径 ‘要查找的文件名’ | 在指定目录下查找文件/目录,会递归查找,不止一层目录下,查找的文件名也可以正则表示,加引号 |
which | which [参数] [文件] | 查找文件、显示命令路径: |
grep [-选项]
- name:根据文件名包括目录查找
- size:根据文件大小查找
- size +2M 大于2M
- size +2M -size +3M 大于2M且小于3M
- size +2M -o -size +3M 大于2M或小于3M
应用
- 查找配置文件
四、特殊命令
(一)重定向命令
命令 | 语句 | 说明 |
---|---|---|
> | 命令结果 > 文件名 | 如果文件存在会覆盖文件内容,相当于’W’的重写 |
>> | 命令结果 >> 文件名 | 如果文件存在会追加文件内容,相当于’a’的重写 |
使用说明
- 重定向定义:也称为输出重定向,把终端要执行命令的结果保存到目标文件
- 只要在终端能显示信息的命令都可以使用重定向
应用
- tree AA >> t.txt
(二)管道|
命令 | 语句 | 说明 |
---|---|---|
| | 命令 | 命令 | 一个命令的输出可以通过管道作为另一个命令的输入,可以理解成是一个容器,存放在终端显示的内容 |
应用
- 管道一般结合more命令使用,主要是分配查看终端显示内容
- 查看终端显示内容并分屏展示,使用管道结合more命令
(三)软连接硬链接
命令 | 语法 | 定义 | 路径 | 目录 |
---|---|---|---|---|
ln -s | ln -s 源文件 新文件 | 创建软连接(快捷方式文件,方便访问),信息同步,删除源文件软连接失效 | 软连接和源链接文件不在同一个目录的话,源文件要使用绝对路径 | 可以给目录创建软连接 |
ln | ln -s 源文件 新文件 | 创建硬连接(文件备份),信息同步,删除源文件对硬链接无影响 | 无要求 | 不可以 |
硬链接数:
- 就是文件数据被文件数据被文件名使用的次数,好比引用计数
- 创建硬链接,硬链接数会加1,删除源文件或者硬链接,硬链接数会减1
- 创建软连接,硬链接数不会变化
硬链接与cp的区别
- 硬链接会数据同步
效果
(四)压缩与解压命令
命令 | 语法 | 定义 | linux支持的压缩格式 |
---|---|---|---|
tar | tar 新文件 源文件 | 压缩和解压的命令,压缩名要指定后缀 | .gz(尽量选这个,占用空间最少) .bz2 |
zip unzip | zip/unzip 新文件 源文件 | 压缩和解压的命令,压缩名可以不指定后缀 | .zip(占用内存最多,通用,操作简单) |
tar [-选项]
- -c 创建打包文件
- -C 解压缩到指定目录
- -v 显示打包或者解包的详细信息
- -r 指定文件名称 必须放到所有选项后面
- -z 压缩或解压缩(.gz)
- -j 压缩或解压缩(.bz2)
- -x 解包
unzip [-选项]
- -d 解压缩到指定文件夹
应用
- tar -zxvf test.tar.gz *.txt -CC …/CC/ 解压到指定目录
- tar -jxvf test.bz2 *.txt -CC …/CC/ 解压到指定目录
(五)权限命令
命令 | 语句 | 说明 |
---|---|---|
chmod | chmod | 修改文件权限 |
sudo | sudo 命令 | 临时获取管理员权限,某个命令执行需要获取管理员权限可以在执行命令前加上sodu |
sudo -s | sudo -s | 切换到root 用户,获取管理员权限,大量操作但谨慎使用,exit退出登入用户 |
whoami | whoami | who am I查看当前用户权限 |
who | who | 查看所有登陆用户,还可以看到连接到ubuntu的windows用户 |
chmod修改权限方式
-
字母法
- 角色说明
- u user表示文件的所有者
- g group表示用户组
- o other表示其他用户
- a all表示所有用户
- 如果要给多个用户加权限用逗号隔开
- 权限设置说明
-
- 增加权限
- -撤销权限
- =设置权限
-
- 权限说明
- r 可读
- w 可写
- x 可执行
- -无任何权限
- 角色说明
-
数字法
- 权限说明
- r 可读 4
- w 可写 2
- x 可执行 1
- -无任何权限 0
- 777最高权限对应用户user group other,7=1+2+4
- 644 常用权限
- 权限说明
应用
- 字母法:chmod u+r 1.txt
- 数字法:chmod 777 1.txt
(六)用户相关
命令 | 语句 | 说明 |
---|---|---|
sudo -s | sudo -s | 切换到root 用户,获取管理员权限,大量操作但谨慎使用,exit退出登入用户 |
su | su 指定用户 | 切换指定用户或以指定用户的身份执行命令或程序 |
who | who | 查看所有登陆用户,还可以看到连接到linux的windows用户 |
whoami | whoami | who am I查看当前用户权限 |
useradd / userdel | useradd/userdel 新用户名 | 创建新用户,选项 -m 指定在home下创建 -g 修改分组 /删除用户 |
groupadd / groupdel | groupadd/groupdel 工作组名 | 创建用户组/删除用户组,-g指定新建工作组的id |
usermod | usermod [参数] | 修改用户账号 |
id | id [参数] [用户名] | 显示用户ID和组ID |
exit | exit | 退出当前用户 |
passwd | passwd [用户名] | 修改用户密码,不指定用户默认修改当前登陆的用户密码 |
应用
- 创建test用户组
- groupadd -g 1005 test
- 添加用户到test组
- sudo useradd -m laowang -g test
- 修改用户到test组
- sudo usermod -G