最近在进行操作系统的实验,涉及到Linux系统的使用,下面总结一些常用指令,涵盖文件管理、系统信息、进程管理、用户与权限、网络工具、文本处理、压缩与归档、系统维护等核心功能。每个指令均附带简要说明和常用示例,方便快速查阅和学习:
一、文件与目录管理
1. 查看与导航
-
ls
- 功能:列出目录内容。
- 常用选项:
ls -l
:长格式显示(权限、所有者、大小、修改时间)。ls -a
:显示隐藏文件(以.
开头的文件)。ls -lh
:以人类可读格式显示文件大小(如1K
,2G
)。
- 示例:
ls -l /home/user # 查看用户目录下的详细文件列表
-
cd
- 功能:切换目录。
- 常用选项:
cd ..
:返回上一级目录。cd ~
:跳转到用户主目录。cd -
:切换回前一个目录。
- 示例:
cd /var/log # 进入系统日志目录
-
pwd
- 功能:显示当前工作目录的绝对路径。
- 示例:
pwd # 输出类似:/home/user/project
2. 创建与删除
-
mkdir
- 功能:创建目录。
- 选项:
-p
:递归创建多级目录。
- 示例:
mkdir -p /path/to/new_dir # 创建多级目录
-
touch
- 功能:创建空文件或更新文件时间戳。
- 示例:
touch new_file.txt # 创建新文件
-
rm
- 功能:删除文件或目录。
- 选项:
-r
:递归删除目录及子目录。-f
:强制删除(不提示确认)。
- 示例:
rm -rf /path/to/dir # 强制删除目录及其内容
-
rmdir
- 功能:删除空目录。
- 示例:
rmdir empty_dir # 仅删除空目录
3. 复制与移动
-
cp
- 功能:复制文件或目录。
- 选项:
-r
:递归复制目录。
- 示例:
cp file.txt /backup/ # 复制文件到指定目录 cp -r dir/ /backup/ # 复制目录
-
mv
- 功能:移动文件或目录,或重命名。
- 示例:
mv old_name.txt new_name.txt # 重命名文件 mv file.txt /new/location/ # 移动文件
二、系统信息与监控
1. 系统信息
-
uname
- 功能:显示系统内核版本和操作系统信息。
- 示例:
uname -a # 显示内核版本、主机名、操作系统等
-
date
- 功能:显示或设置系统时间。
- 示例:
date "+%Y-%m-%d %H:%M:%S" # 格式化输出当前时间
-
hostname
- 功能:显示或设置主机名。
- 示例:
hostname # 输出当前主机名
2. 系统资源监控
-
top
- 功能:实时显示系统进程和资源使用情况(CPU、内存)。
- 示例:
top # 按 `q` 退出
-
free
- 功能:显示内存使用情况。
- 示例:
free -h # 以人类可读格式显示内存
-
df
- 功能:显示磁盘空间使用情况。
- 示例:
df -h / # 查看根目录磁盘使用情况
-
ps
- 功能:显示当前进程状态。
- 常用选项:
ps aux
:显示所有进程的详细信息。ps -ef
:以树状结构显示进程。
- 示例:
ps aux | grep "nginx" # 查找nginx进程
三、用户与权限管理
1. 用户管理
-
useradd
- 功能:创建新用户。
- 示例:
sudo useradd newuser # 创建用户newuser
-
passwd
- 功能:修改用户密码。
- 示例:
sudo passwd newuser # 设置用户newuser的密码
-
userdel
- 功能:删除用户。
- 示例:
sudo userdel -r newuser # 删除用户并删除其主目录
2. 文件权限管理
-
chmod
- 功能:修改文件或目录的权限。
- 权限模式:
755
:所有者可读写执行,其他用户可读执行。644
:所有者可读写,其他用户只读。
- 示例:
chmod 755 script.sh # 设置脚本可执行权限
-
chown
- 功能:修改文件或目录的所有者。
- 示例:
sudo chown user:group file.txt # 修改文件所有者和组
四、网络工具
1. 网络诊断
-
ping
- 功能:测试网络连通性。
- 示例:
ping -c 4 google.com # 发送4个ICMP请求测试连通性
-
ifconfig
/ip
- 功能:查看或配置网络接口。
- 示例:
ip addr show # 显示所有网络接口信息
-
netstat
- 功能:显示网络连接和端口状态。
- 示例:
netstat -tuln # 显示监听的TCP/UDP端口
2. 远程连接
-
ssh
- 功能:远程登录到另一台主机。
- 示例:
ssh user@192.168.1.100 # 连接到IP为192.168.1.100的服务器
-
scp
- 功能:通过SSH安全复制文件。
- 示例:
scp local_file.txt user@remote_host:/path/to/destination # 上传文件到远程服务器
五、文本处理与搜索
1. 文件查看与编辑
-
cat
- 功能:显示文件内容或合并文件。
- 示例:
cat file.txt # 显示文件内容
-
less
/more
- 功能:分页查看大文件。
- 示例:
less /var/log/syslog # 分页查看系统日志
-
vi
/vim
- 功能:文本编辑器(支持命令模式和插入模式)。
- 示例:
vi config.conf # 编辑配置文件
2. 搜索与过滤
-
grep
- 功能:在文件中搜索指定模式的文本。
- 示例:
grep "error" /var/log/syslog # 搜索包含"error"的日志行
-
find
- 功能:在目录树中搜索文件。
- 示例:
find /home -name "*.log" # 查找所有以.log结尾的文件
六、压缩与归档
-
tar
- 功能:打包和解压文件。
- 常用选项:
-c
:创建归档。-x
:解压归档。-z
:通过gzip压缩/解压。-f
:指定归档文件名。
- 示例:
tar -czvf archive.tar.gz dir/ # 压缩目录为tar.gz格式 tar -xzvf archive.tar.gz -C /target/ # 解压到指定目录
-
gzip
/gunzip
- 功能:压缩/解压单个文件。
- 示例:
gzip file.txt # 压缩为file.txt.gz gunzip file.txt.gz # 解压文件
七、进程管理
-
kill
- 功能:终止进程。
- 示例:
kill -9 1234 # 强制终止PID为1234的进程
-
bg
/fg
- 功能:将进程在后台或前台运行。
- 示例:
ctrl+z # 挂起当前进程 bg # 将挂起的进程放到后台运行
八、高级技巧
1. 管道与重定向
-
管道(
|
):将前一个命令的输出作为后一个命令的输入。ps aux | grep "nginx" # 查找nginx进程
-
重定向(
>
、>>
):将命令输出保存到文件。ls -l > file_list.txt # 将目录列表保存到文件 echo "Hello" >> log.txt # 追加内容到文件末尾
2. 通配符
-
*
:匹配任意字符。rm *.log # 删除所有以.log结尾的文件
-
?
:匹配单个字符。ls file?? # 匹配file后跟两个任意字符的文件
九、其他常用命令
-
man
:查看命令手册。man ls # 查看ls命令的详细帮助
-
history
:显示历史命令。history 10 # 显示最近10条命令
-
clear
:清空终端屏幕。clear
总结
建议通过实际操作加深理解:
- 使用
man
命令查看每个指令的详细帮助。 - 在虚拟机或容器中练习操作,避免误操作系统关键文件。