Linux常用命令自查
Linux常用命令自查
Linux操作系统提供了丰富的命令行工具,用于文件管理、系统监控、网络管理、进程控制等各个方面。以下是一些常见的Linux命令及其基本用法:
文件和目录操作
- ls:列出目录内容
- cd:更改当前目录
- pwd:显示当前工作目录
- mkdir:创建新目录
- rmdir:删除空目录
- rm:删除文件或目录
- cp:复制文件或目录
- mv:移动或重命名文件或目录
- touch:创建空文件或更新文件的时间戳
- cat:显示文件内容
- more和less:逐屏显示文件内容
- head和tail:显示文件的头部或尾部内容
- grep:搜索文件中的文本模式(筛选)
- find:查找文件和目录
权限和所有权
- chmod:更改文件权限
- chown:更改文件所有者
- chgrp:更改文件所属组
系统信息
- uname:显示系统信息
- df:显示目录或文件的磁盘使用情况
- du:显示目录或文件的磁盘使用情况
- free:显示内存使用情况
- top:实时显示系统任务和资源使用情况
- ps:显示当前进程
- uptime:显示系统运行时间和负载
网络管理
- ifconfig或ip:显示或配置网络接口
- ping:测试网络连通性
- netstat:显示网络连接、路由表、接口状态
- ss:显示套接字统计信息
- traceroute:跟踪数据包的路由路径
- wget和curl:下载文件或进行网络请求
包管理
- apt(Debian/Ubuntu):包管理工具
- yum(CentOS/RHEL):包管理工具
- dnf(Fedora):包管理工具
归档和压缩
- tar:创建和解压归档文件
- gzip和gunzip:压缩和解压文件
- zip和unzip:创建和解压zip文件
脚本编写
-
wc:计算文件的行数、字数和字节数
-
echo:打印输出,类似print
-
read:接受用户输入
-
if,elif,else:条件判断
-
case:选择语句
-
for,while,until:循环语句
-
定义函数
示例:定义函数greet,并且调用该函数且传递参数
greet() { echo "Hello, $1!" } greet "Alice" greet "Bob"
-
trap:捕捉信号
-
获取参数和特殊变量:见符号的10-16
其他
-
awk:处理文本文件
语法:awk options 'pattern {action}' file
options
:是一些选项,用于控制awk
的行为。pattern
:是用于匹配输入数据的模式。如果省略,则awk
将对所有行进行操作。{action}
:是在匹配到模式的行上执行的动作。如果省略,则默认动作是打印整行。
-
test
命令行选项
-
-p(端口选项)
用于指定端口号,通常与网络相关命令使用
ssh secure@177.181.10.10 -p10000
-
-e(执行选项)
用于指定要执行的命令,或在某些情况下,指定环境变量
ps -ef
-
-f(强制选项)
用于强制执行某些操作,通常用于覆盖默认行为
-
-c(命令选项)
用于指定要执行的命令,通常用于shell或编程语言解释器
-
-i 和 -t(交互式和终端选项)
-i:交互式模式
-t:分配一个伪终端
-
-n(无参数或计数参数)
用于指定无参数选项或计数参数
-
-a(全选项)
用于显示所有项目或包含隐藏文件
-
-r(递归选项)
用于递归地执行操作,通常用于目录或文件系统操作
-
-v(详细选项)
用于输出详细信息,通常用于调试或查看更多信息
组合选项
-
ps 命令的 -ef
...
一些符号
-
管道符:|,将一个命令的输出作为下一个命令的输入
-
重定向符:> 和 >>,将命令的输出重定向到文件。>会覆盖文件,>>会追加到文件末尾
-
输入重定向符:<,将文件的内容作为命令的输入
-
后台运行符:&,将命令放入后台执行
-
子Shell:(),在子Shell中执行命令
-
命令替换符:$(...)或``,将命令的输出结果用于另一个命令
-
问号:?,匹配单个字符
-
子表达式:{},生成字符串序列
-
沉默模式:>/dev/null 2>&1,忽略命令的输出及错误消息
-
引用:$,个人感觉类似引用值(变量)
-
参数总数:$#,传递给脚本的参数总数
-
$@:独立参数的形式,表示传递给脚本的所有参数
-
$*:将传递给脚本的所有参数作为一个字符串(拼接成一个字符串)
-
$?:上一个命令的退出状态码。通常0表示成功,非0表示失败
-
$$:当前脚本的进程ID
-
$!:上一个后台运行命令的进程ID