Linux
命令快捷键
| 命令 | 内容 | 扩展 |
|---|---|---|
ctrl + c | 强制退出 | |
ctrl + d | 退出或登出当前用户、退出python输入 | |
history | 搜索历史命令 | history | gerp + 过滤关键字 |
!+ 命令 + enter | history从下往上检索命令 | eg: !p 会搜索p开头的命令,点击entre后立即执行该命令 |
ctrl + r | 历史命令搜索 | 当出现reverse-i-search表示成功,按左右拿到命令并修改 |
ctrl + a | 光标移动到开头 | |
ctrl + e | 光标移动到结尾 | |
ctrl + l 或 celar | 清屏 |
基础命令
| 命令 | 描述 |
|---|---|
ls -l | 以列表形式展示内容 |
tail -10 text.txt | 查看text.txt尾部10行文件 |
cd test | 切换到test目录 |
mkdir -p dir/test | 创建多层级目录,dit目录下包含test目录 |
touch test.txt | 创建test.txt文本 |
more test.txt | 查看test文件内容,带分页 |
cat test.txt | 查看test文件内容 |
cp -r dir1 dir2 | 复制文件夹dir1 名字为文件夹dir2 |
mv dir2 dir1 | 移动文件夹dir2为dir1, 会删除原文件 |
rm -rf dir1 | 删除文件夹dir1 |
grep "heima" ./test.txt | 在test.txt文件中过滤是否有heima这个关键字 |
ls |grep t | 将|左边的命令结果,作为右边命令输入, 查找t文件 |
echo hello linux | 在终端输出 hello linux |
echo hello linux > text.txt | 覆盖原text.txt文件 输入hello linux |
echo hello linux >> text.txt | 追加原text.txt文件 输入hello linux |
ping baidu.com | 链接baidu.com是否通 |
wget -c url | 终端下载器, -b:后台下载 |
curl -c url | 发送http请求, 获取信息、-O下载文件 |
ps -ef | grep tail | 查看tail进程 |
kill -9 进程ID | 关闭进程 |
df -h | 查看磁盘使用情况 |
iostat -x 1 3 | 磁盘信息监控(一秒一次一共三次) |
sar -n DEV 1 3 | 网络状态监控(一秒一次一共三次) |
env | grep PATH | 查看PATH环境变量 |
$取环境变量 用法: echo $PATH | 查看PATH环境变量 |
export MANAME=Even | 设置环境变量MANAME |
chmod -R 751 hello.txt | 修改hello文件权限为751 |
chown root hello.txt | 把hello文件改root用户 |
包管理工具
| 命令 | 描述 |
|---|---|
sudo yum -y install net-tool | yum下载net-tool工具 |
sudo yum -y remove net-tool | yum卸载net-tool工具 |
sudo yum -y search net-tool | yum搜索net-tool工具 |
sudo apt -y install wget | apt下载net-tool工具 |
sudo apt -y remove wget | apt卸载net-tool工具 |
sudo apt -y search wget | apt搜索net-tool工具 |
介绍linux之前,需要了解下CentOS和Ubuntu与linux的关系,
CentOS和Ubuntu都是基于Linux内核的操作系统发行版。
CentOS和Ubuntu的区别
- 为什么执行命令钱需要前面添加
sudo- sudo (superuser do)的缩写,超级用户使用者,
- 让开发者使用最大权限
- Centos
- 实用yum包管理工具
- Ubuntu
- 使用apt包管理工具 (Advanced Package Tool:高级软件包工具)
操作基本命令详解
命令结构
command [-option] [parameter]
- command: 命令本身
- -option: [可选,非必填] 命令的
选项 - parameter: [可选,非必填] 命令的参数
ls 显示文件
语法:ls [-a -l -h] [路径:默认当前路径]
ls -a列出全部文件,-a表述:all的意思(包含隐藏文件)ls -l以列表形式展示内容(日期、大小、文件格式等) -l表示list 列表展示更多信息ls -lhh必须和l一起使用,展示列表更全面信息
cd 切换目录 (英文: Change Directory)
语法:cd [参数:路径] (无需选项,只有参数)
cd切换到用户目录.当前目录..上一级目录~home目录
mkdir 创建文件夹 (英文: Make Directory)
语法:mkdir [-p] [路径]
-p自动创建不存在的父目录,创建多层目录等
touch 创建文件
语法:touch [路径]
- 无选项
more、cat 查看文件 (无选项)
语法: more 文件
- more、cat区别,more带翻页功能。
cp 复制文件或文件夹 (英文:copy)
语法:cp [-r] 参数1 参数2
- -r:选项 (英文recursive:递归)可以
递归复制文件夹
- 示例:复制文件test1 名字为 文件test2
cp text1.js text2.js
- 示例:复制文件夹dir1 名字为文件夹dir2
cp -r dir1 dir2
mv 移动文件或文件夹 (英文:move)
语法:mv [参数1] [参数2]
- [参数1] : 原文件
- [参数2] : 目标文件
- 会删除
原文件 - 无选项
rm 删除文件或文件夹 (英文:remove)
语法:rm [-r -f] 参数1 参数2 参数3
- -f 表示 force, 强制删除
- -r 英文(recursive:递归)递归删除文件夹的作用
通配符
- 符号* 表示通配符,示列:
- test* (test开头的内容)
- *test (表示test结尾的内容)
- test (表示包含test的内容)
which 查找命令 针对命令
- 查看一系列命令的
程序文件存放在哪里
语法:which 要查找的命令(command)
find 查找文件
语法:find 起始路径 -name "被查找文件名"
- 样列:查找所有test文件
find / name "test"
/从根目录依次递归查找文件- 也可以使用
*通配符
grep 过滤(中文意思:正则)
语法:grep [-n] "关键字" 文件路径
- 选项-n, 结果显示匹配行的行号
- 参数,关键字:
必填,表示过滤的关键字 - 参数,文件路径:
必填,表示要过滤内容的文件路径
- 示例:在test.txt文件中过滤是否有
heima这个关键字
grep "heima" ./test.txt
展示有heima的一行
wc 数量统计
语法: wc [-c -m -l -w] 文件路径
- 选项 -c: 统计bytes数量
- 选项 -m: 统计字符数量
- 选项 -l: 统计行数量
- 选项 -w: 统计单词数量
- 参数 文件路径,被统计的文件
- 示例:统计text.txt文件
不带参数
wc text.txt
- 结果: 2 11 59 text.txt
- 表示:2行 11个单词 59个字节
| 管道符
语法:将|左边的命令结果,作为右边命令输入
- 实现同grep命令一样
- 示例:在test.txt文件中过滤是否有
heima这个关键字
grep "heima" ./test.txt
或者
cat ./test.txt | grep "heima"
两者代表同一个意思
- 示例:查找test文件
ls | grep test
echo (中文:回声) 输出指定内容
语法:echo 输出内容
- 示例:在终端输出 hello linux
echo hello linux
- 示例:在终端输出当前
目录(变量-模版字符串包裹)
echo `pwd`
> >> 重定向符
内容:将左侧命令的结果,覆盖\追加右侧文件中
> 覆盖>> 追加
- 示例: 覆盖原油text.txt文件 输入hello linux
echo hello linux > text.txt
tail (中文:尾巴) 查看内容
语法:tail [-f -num] Linux路径
- 参数 -f 持续跟踪
- 参数 -num 显示尾部多少行
示例: 查看text.txt尾部10行文件
tail -10 text.txt
vim编辑器
语法: vim 路径 (当前路径如果不存在,会自动创建❤️文件)
- 命令模式
- I 当前行的开口 进入输入模式
- A 当前行的结尾 进入输入模式
- gg 跳到行首
- G 跳到行尾
- dd 删除当前行
- yy 复制当前行
- nyy 复制当前向下的行数
- p 粘贴复制的内容
u 撤销当前更改- 搜索模式:
/+ 搜索内容
- 输入模式
- 底线命令模式
- :wq 保存并退出
- :q 仅退出
- :q! 强制退出(当更改时,不保存更改)
- :w 仅保存
ps查看进程
语法:ps [-e -f] (process status : 进程状态)
- 选项:-e:(everyone:所有)显示出全部的进程
- 选项:-f: (full:完整) 以完全格式化的形式展示信息
用户命令
su (switch user)切换用户
语法:su [-] [用户名]
-符号可选:切换用户后是否加载环境变量- 参数:用户名 (通过exit命令退回)
sudo 命令
语法:sudo 其他命令
作用: 提升为root权限
用户组操作命令
groupadd 创建用户组
语法:groupadd 用户组名
示例:创建test的用户组
groupadd test
groupdel 删除用户组
语法:groupdel 用户组名
用户管理操作命令
useradd 创建用户
语法:useradd [-g -d] 用户名