请关注微信公众号:拾荒的小海螺
博客地址:http://lsk-ww.cn/
1、简述
Linux 是一个功能强大且广泛使用的操作系统,其命令行界面(CLI)提供了丰富的工具来完成各种任务。熟练掌握这些指令可以极大地提高工作效率。本文将介绍一些常用的 Linux 指令,并通过详细的示例帮助你更好地理解和使用这些指令。
2、文件和目录管理
- ls - 列出目录内容
ls 命令用于列出目录中的文件和子目录。
# 列出当前目录内容
ls
# 列出详细信息(包括权限、所有者、大小和修改时间)
ls -l
# 列出所有文件,包括隐藏文件
ls -a
- cd - 切换目录
cd 命令用于在不同目录之间切换。
# 切换到用户主目录
cd ~
# 切换到根目录
cd /
# 切换到上一级目录
cd ..
# 切换到指定目录
cd /path/to/directory
- mkdir - 创建目录
mkdir 命令用于创建新目录。
# 创建单个目录
mkdir new_directory
# 创建嵌套目录
mkdir -p parent_directory/child_directory
- rm - 删除文件和目录
rm 命令用于删除文件和目录。
# 删除文件
rm file.txt
# 递归删除目录及其内容
rm -r directory
# 强制删除,不提示确认
rm -rf directory
- cp - 复制文件和目录
cp 命令用于复制文件和目录。
# 复制文件
cp source.txt destination.txt
# 递归复制目录
cp -r source_directory destination_directory
- mv - 移动或重命名文件和目录
mv 命令用于移动或重命名文件和目录。
# 移动文件
mv source.txt /path/to/destination/
# 重命名文件
mv oldname.txt newname.txt
- touch - 创建空文件或更新文件时间戳
touch 命令用于创建空文件或更新文件时间戳。
# 创建空文件
touch newfile.txt
# 更新文件时间戳
touch existingfile.txt
3、文件内容查看和编辑
- cat - 查看文件内容
cat 命令用于查看文件内容。
# 查看文件内容
cat file.txt
# 连接多个文件并显示内容
cat file1.txt file2.txt
- less - 分页查看文件内容
less 命令用于分页查看文件内容,适合查看大文件。
# 分页查看文件内容
less file.txt
- head - 查看文件开头部分内容
head 命令用于查看文件的前几行。
# 查看文件的前 10 行(默认)
head file.txt
# 查看文件的前 n 行
head -n 20 file.txt
- tail - 查看文件结尾部分内容
tail 命令用于查看文件的最后几行。
# 查看文件的最后 10 行(默认)
tail file.txt
# 查看文件的最后 n 行
tail -n 20 file.txt
# 实时查看文件新增内容(常用于日志文件)
tail -f file.txt
- nano - 简易文本编辑器
nano 是一个简单易用的文本编辑器。
# 编辑文件
nano file.txt
- vim - 强大的文本编辑器
vim 是一个功能强大的文本编辑器,适合高级用户。
# 编辑文件
vim file.txt
4、系统管理
- ps - 查看进程
ps 命令用于查看当前运行的进程。
# 查看当前用户的进程
ps
# 查看所有用户的所有进程
ps aux
- top - 动态查看系统资源使用情况
top 命令用于动态查看系统资源使用情况,包括 CPU 和内存使用情况。
# 启动 top 命令
top
- kill - 终止进程
kill 命令用于终止进程。
# 终止指定 PID 的进程
kill 1234
# 强制终止指定 PID 的进程
kill -9 1234
- df - 查看磁盘空间使用情况
df 命令用于查看磁盘空间使用情况。
# 查看所有文件系统的磁盘使用情况
df -h
- du - 查看目录或文件的磁盘使用情况
du 命令用于查看目录或文件的磁盘使用情况。
# 查看当前目录及其子目录的磁盘使用情况
du -h
# 查看指定目录的磁盘使用情况
du -h /path/to/directory
- free - 查看内存使用情况
free 命令用于查看系统内存的使用情况。
# 查看内存使用情况
free -h
- uname - 查看系统信息
uname 命令用于查看系统信息。
# 查看基本系统信息
uname
# 查看详细系统信息
uname -a
- systemctl - 系统服务管理器
systemctl 命令用于管理系统服务。
# 启动服务
sudo systemctl start servicename
# 停止服务
sudo systemctl stop servicename
# 重启服务
sudo systemctl restart servicename
# 查看服务状态
sudo systemctl status servicename
# 设置服务开机自启动
sudo systemctl enable servicename
- journalctl - 查看系统日志
journalctl 命令用于查看系统日志。
# 查看所有日志
journalctl
# 查看特定服务的日志
journalctl -u servicename
# 实时查看日志
journalctl -f
- shutdown - 关闭或重启系统
shutdown 命令用于关闭或重启系统。
# 立即关闭系统
sudo shutdown now
# 立即重启系统
sudo shutdown -r now
- reboot - 重启系统
reboot 命令用于重启系统。
# 立即重启系统
sudo reboot
5、网络管理
- ping - 检查网络连接
ping 命令用于检查网络连接状态。
# 检查与目标主机的网络连接
ping google.com
- ifconfig - 配置网络接口
ifconfig 命令用于配置网络接口。现代 Linux 系统中更推荐使用 ip 命令。
# 查看网络接口配置
ifconfig
- netstat - 查看网络连接
netstat 命令用于查看网络连接状态。
# 查看所有网络连接
netstat -a
# 查看监听端口
netstat -tuln
# 查看端口号占用
netstat -anp |grep 端口号
- curl - 命令行 HTTP 客户端
curl 命令用于从命令行执行 HTTP 请求。
# 发起 GET 请求
curl http://example.com
# 发起 POST 请求
curl -X POST -d "param1=value1¶m2=value2" http://example.com
- wget - 命令行下载工具
wget 命令用于从网络下载文件。
# 下载文件
wget http://example.com/file.zip
6、压缩和解压缩
- tar - 归档工具
tar 命令用于创建和解压归档文件。
# 创建归档文件
tar -cvf archive.tar file1 file2
# 创建 gzip 压缩的归档文件
tar -czvf archive.tar.gz file1 file2
# 解压归档文件
tar -xvf archive.tar
# 解压 gzip 压缩的归档文件
tar -xzvf archive.tar.gz
- zip 和 unzip - 压缩和解压缩工具
zip 和 unzip 命令用于压缩和解压缩 ZIP 文件。
# 创建 ZIP 文件
zip archive.zip file1 file2
# 解压 ZIP 文件
unzip archive.zip
7、权限管理
- chmod - 修改文件权限
chmod 命令用于修改文件或目录的权限。
# 赋予所有者读写权限,组和其他用户读权限
chmod 644 file.txt
# 赋予所有者、组和其他用户执行权限
chmod +x script.sh
- chown - 修改文件所有者
chown 命令用于修改文件或目录的所有者。
# 修改文件所有者
chown newowner file.txt
# 修改文件所有者和组
chown newowner:newgroup file.txt
- chown - 修改文件所有者
chown 命令用于修改文件或目录的所有者。
# 修改文件所有者
chown newowner file.txt
# 修改文件所有者和组
chown newowner:newgroup file.txt
8、用户和组管理
- useradd - 添加用户
useradd 命令用于添加新用户。
# 添加新用户
sudo useradd -m newuser
# 设置用户密码
sudo passwd newuser
- usermod - 修改用户属性
usermod 命令用于修改用户的属性。
# 修改用户的主目录
sudo usermod -d /new/home/directory username
# 将用户添加到附加组
sudo usermod -aG groupname username
- groupadd - 添加组
groupadd 命令用于添加新组。
# 添加新组
sudo groupadd newgroup
- id - 查看用户和组的标识
id 命令用于查看指定用户或当前用户的 UID(用户标识)、GID(组标识)以及附加组。
# 查看当前用户的标识
id
# 查看指定用户的标识
id username
- passwd - 修改用户密码
passwd 命令用于修改用户密码。
# 修改当前用户的密码
passwd
# 修改指定用户的密码
sudo passwd username
9、其他常用命令
- find - 查找文件
find 命令用于在目录中查找文件。
# 在当前目录及其子目录中查找名为 file.txt 的文件
find . -name file.txt
# 查找大于 10MB 的文件
find / -size +10M
- grep - 搜索文本
grep 命令用于在文件中搜索文本。
# 在文件中搜索包含 "pattern" 的行
grep "pattern" file.txt
# 递归搜索目录中的文件
grep -r "pattern" /path/to/directory
- alias - 创建命令别名
alias 命令用于创建命令别名,简化命令输入。
# 创建别名
alias ll='ls -l'
# 取消别名
unalias ll
- history - 查看命令历史
history 命令用于查看命令历史。
# 查看命令历史
history
10、总结
掌握 Linux 的常用指令可以极大地提高工作效率。这篇博客介绍了文件和目录管理、文件内容查看和编辑、系统管理、网络管理、压缩和解压缩、权限管理等方面的常用指令,并通过详细的示例帮助你更好地理解和使用这些指令。希望这篇博客能对你在日常工作中使用 Linux 有所帮助。