在现代计算机操作系统中,Linux 是一个广泛使用且强大的平台,其核心优势之一就是其命令行界面的灵活性和强大功能。无论你是刚刚开始学习 Linux 还是已经在使用它多年,掌握 Linux 命令行都能显著提升你的工作效率和系统管理能力。
为什么学习 Linux 命令?
- 高效操作:通过命令行,你可以快速执行任务和自动化流程,远比图形用户界面(GUI)来的高效。
- 系统管理:掌握命令行操作可以帮助你更好地进行系统管理、故障排除和性能监控。
- 脚本编写:命令行是编写脚本和自动化任务的基础,可以大幅提升你的工作自动化水平。
- 远程管理:使用命令行,你可以方便地通过 SSH 远程管理服务器,执行各种操作而无需直接访问物理机。
一,linux 基础运维命令大全
1.文件和目录操作命令
ls # 列出目录内容
cd # 切换目录
pwd # 显示当前工作目录路径
mkdir # 创建新目录
rmdir # 删除空目录
rm # 删除文件或目录
cp # 复制文件或目录
mv # 移动或重命名文件或目录
touch # 创建空文件或更新文件的时间戳
cat # 显示文件内容
more # 分页显示文件内容
less # 分页显示文件内容,可向前翻页
head # 显示文件开头部分内容
tail # 显示文件末尾部分内容
2.文件权限和所有权管理
chmod # 更改文件或目录的权限
chown # 更改文件或目录的所有者
chgrp # 更改文件或目录的所属组
3.文件查找和比较
find # 在目录中查找文件
locate # 使用数据库查找文件
grep # 在文件中搜索文本
diff # 比较文件的不同
4.文件压缩和解压缩
tar # 创建或解压缩 tar 归档文件
gzip # 压缩文件
gunzip # 解压缩 gzip 文件
zip # 压缩文件或目录
unzip # 解压缩 zip 文件
5.系统信息查看
uname # 显示系统信息
df # 显示文件系统磁盘空间使用情况
du # 显示文件或目录的磁盘使用情况
free # 显示内存使用情况
top # 实时显示系统性能和进程信息
ps # 显示当前运行的进程
6.网络管理
ifconfig # 显示或配置网络接口
ip # 显示或配置网络接口
ping # 测试网络连接
netstat # 显示网络连接、路由表和接口状态
ssh # 通过 SSH 连接到远程主机
scp # 通过 SSH 复制文件到远程主机
wget # 下载文件
curl # 传输数据
7.用户和组管理
adduser # 添加新用户
userdel # 删除用户
passwd # 修改用户密码
groupadd # 添加新组
groupdel # 删除组
8.进程管理
kill # 终止进程
pkill # 根据名称终止进程
killall # 终止所有指定名称的进程
9.磁盘管理
fdisk # 磁盘分区工具
mkfs # 创建文件系统
mount # 挂载文件系统
umount # 卸载文件系统
10.软件包管理 Red Hat 系(如 CentOS、Fedora)使用 yum
和 rpm
1. sudo yum check-update # 检查软件包更新
2. sudo yum update # 更新已安装的软件包
3. sudo yum install package # 安装软件包
4. sudo yum remove package # 删除软件包
5. sudo yum search package # 搜索软件包
6. sudo yum clean all # 清理缓存
7. rpm -i package.rpm # 安装本地 .rpm 包
8. rpm -e package # 删除已安装的软件包
9. rpm -qa # 列出所有已安装的软件包
10. rpm -qi package # 显示已安装软件包的信息
二,基础示例
# 文件和目录操作命令
ls
# 列出当前目录的文件和目录
cd /path/to/directory
# 切换到指定目录
pwd
# 显示当前工作目录的路径
mkdir directory_name
# 创建一个新目录
rm file_name
# 删除文件
rm -r directory_name
# 递归删除目录及其内容
cp source_file destination
# 复制文件到指定位置
cp -r source_directory destination
# 递归复制目录及其内容
mv old_name new_name
# 移动或重命名文件或目录
touch file_name
# 创建一个空文件或更新文件的时间戳
cat file_name
# 显示文件内容
more file_name
# 分页显示文件内容
less file_name
# 分页显示文件内容,支持向前翻页
head -n 10 file_name
# 显示文件的前10行
tail -n 10 file_name
# 显示文件的后10行
tail -f file_name
# 实时显示文件新增内容
# 权限管理命令
chmod 755 file_name
# 修改文件权限
chown user:group file_name
# 修改文件所有者和所属组
chgrp group_name file_name
# 修改文件所属组
# 系统管理命令
ps aux
# 显示所有进程的详细信息
top
# 实时显示系统资源使用情况
df -h
# 显示磁盘分区的使用情况(以人类可读的形式)
du -sh directory_name
# 显示目录或文件的大小(以人类可读的形式)
free -h
# 显示内存使用情况(以人类可读的形式)
uname -a
# 显示系统信息
uptime
# 显示系统运行时间
shutdown -h now
# 立即关闭系统
shutdown -r now
# 立即重启系统
reboot
# 重启系统
# 网络管理命令
ifconfig
# 显示网络接口信息
ping www.example.com
# 检查与指定主机的网络连接
netstat -tuln
# 显示网络连接、监听端口等信息
ss -tuln
# 显示网络连接、监听端口等信息(更现代的替代netstat的命令)
scp local_file user@remote_host:/path/to/destination
# 通过SSH复制文件到远程主机
scp user@remote_host:/path/to/source local_file
# 从远程主机通过SSH复制文件到本地主机
wget http://www.example.com/file
# 从指定URL下载文件
curl -O http://www.example.com/file
# 从指定URL下载文件
curl -I http://www.example.com
# 获取指定URL的HTTP头信息
结语
希望通过本博客的学习,你对 Linux 命令行有了更深入的理解,并能够将这些知识应用到实际工作中。Linux 的力量在于其灵活性和开放性,掌握它,你将能够更有效地控制和优化你的计算环境。让我们一起继续探索和发现 Linux 命令行的无限潜力,迎接未来的挑战与机遇。