<返回更多

Linux中100个必备命令和技巧

2023-08-12  微信公众号  运维家
加入收藏

引言

欢迎来到《运维家》!作为一个持续学习linuxPython/ target=_blank class=infotextkey>Python技术的码农,我非常荣幸与大家分享这篇关于Linux命令行的文章。无论你是初学者还是有一定经验的运维工程师,本文都将为你揭示100个常用命令和技巧。加强你的命令行技能将让你事半功倍,让我们一起进入命令行的奇妙世界吧!

要求环境

为了能够顺利跟随本文实战,你需要:

- 一台装有Linux操作系统的计算机或虚拟机
- 使用root或具备sudo权限的用户账号

实战案例

下面是经过筛选的100个常用Linux命令和技巧,每个命令都附带简短的注释和示例。让我们一起领略它们的威力!

  1. ls - 列出目录内容
用于显示当前目录下的文件和文件夹。
示例:
ls
  1. cd - 切换目录
用于进入指定目录。
示例:
cd /path/to/directory
  1. pwd - 显示当前目录路径
用于显示当前所在的目录路径。
示例:
pwd
  1. mkdir - 创建目录
用于创建一个新目录。
示例:
mkdir new_directory
  1. rm - 删除文件或目录
用于删除文件或目录。
示例: 
rm file.txt
rm -r directory/
  1. cp - 复制文件和目录
用于复制文件或目录到指定位置。
示例:
cp file.txt /path/to/destination
cp -r directory/ /path/to/destination
  1. mv - 移动文件和目录
用于移动文件或目录到指定位置。
示例:
mv file.txt /path/to/destination
mv directory/ /path/to/destination
  1. cat - 查看文件内容
用于查看文件的内容。
示例:
cat file.txt
  1. grep - 在文件中搜索文本
用于在文件中搜索特定的文本。
示例:
grep "keyword" file.txt
  1. vi - 编辑文件
用于打开vi编辑器进行文件编辑。
示例:
vi file.txt
  1. man - 查看命令的帮助文档
用于查看命令的详细说明和使用方法。
示例:
man ls
  1. chmod - 修改文件权限
用于修改文件或目录的权限。
示例:
chmod 755 file.txt
  1. chown - 修改文件所有者
用于修改文件或目录的所有者。
示例:
chown user:group file.txt
  1. ps - 查看进程状态
用于查看系统中运行的进程状态。
示例:
ps aux
  1. top - 实时监控系统状态
用于实时监视系统的CPU、内存和进程等信息。
示例:
top
  1. grep -r - 递归搜索文件内容
用于在目录及其子目录中递归搜索指定文本。
示例:
grep -r "keyword" /path/to/directory
  1. tar - 打包和解压文件
用于将文件打包成压缩文件,或解压已有的压缩文件。
示例:
tar -czvf archive.tar.gz file1 file2
tar -xzvf archive.tar.gz
  1. ssh - 远程登录到其他主机
用于通过安全的方式远程登录到其他主机。
示例:
ssh user@hostname
  1. scp - 在主机之间拷贝文件
用于在不同主机之间复制文件和目录。
示例:
scp file.txt user@hostname:/path/to/destination
  1. find - 查找文件
用于在指定目录下查找符合条件的文件。
示例:

find /path/to/directory -name "*.txt"
  1. curl - 发送HTTP请求
用于在命令行中发送HTTP请求并获取响应。
示例:
curl https://example.com
  1. wget - 下载文件
用于通过命令行下载文件。
示例:
wget https://example.com/file.txt
  1. history - 查看命令历史记录
用于查看之前执行过的命令历史记录。
示例:
history
  1. du - 查看文件和目录的磁盘使用情况
用于查看文件或目录占用的磁盘空间大小。
示例:
du -h file.txt
  1. df - 查看磁盘使用情况
用于查看文件系统的磁盘空间使用情况。
示例:
df -h
  1. ifconfig - 查看和配置网络接口
用于查看和配置系统的网络接口信息。
示例:
ifconfig
  1. ping - 测试网络连接
用于测试与目标主机的网络连接。
示例:
ping example.com
  1. .NETstat - 查看网络连接和统计信息
用于查看系统的网络连接状态和统计信息。
示例:
netstat -a
  1. systemctl - 管理系统服务
用于启动、停止、重启和管理系统服务。
示例:
systemctl start service_name
  1. crontab - 创建和管理定时任务
用于创建和管理定时执行的任务。
示例:
crontab -e
  1. nslookup - 查询域名解析
用于查询域名的IP地址和反向解析。
示例:
nslookup example.com
  1. ssh-keygen - 生成SSH密钥对
用于生成SSH公钥和私钥对,用于远程登录认证。
示例:
ssh-keygen -t rsa
  1. diff - 比较文件差异
用于比较两个文件之间的差异。
示例:
diff file1.txt file2.txt
  1. sed - 流编辑器
用于查找、替换、插入和删除文件中的文本。
示例:
sed 's/old_word/new_word/' file.txt
  1. awk - 文本处理工具
用于处理文本数据并生成报告。
示例:
awk '{print $1}' file.txt
  1. cut - 提取文本字段
用于提取文件中指定列的字段。
示例:
cut -d',' -f1 file.csv
  1. sort - 对文件内容排序
用于对文件中的行进行排序。
示例:
sort file.txt
  1. tAIl - 显示文件末尾内容
用于显示文件的最后几行内容。
示例:
tail -n 5 file.txt
  1. head - 显示文件开头内容
用于显示文件的前几行内容。
示例:
head -n 10 file.txt
  1. zip/unzip - 压缩和解压文件
用于创建压缩文件或解压已有的压缩文件。
示例:
zip archive.zip file1 file2
unzip archive.zip
  1. grep -v - 筛选排除匹配的行
用于排除匹配某个模式的行。
示例:
grep -v "pattern" file.txt
  1. diff -u - 以上下文格式比较文件差异
用于以上下文格式比较两个文件之间的差异。
示例:
diff -u file1.txt file2.txt
  1. xargs - 从标准输入构建和执行命令
用于从标准输入读取数据,并用于构建和执行命令。
示例:
echo "file.txt" | xargs rm
  1. wget -r - 递归下载整个网站
用于递归下载整个网站的内容。
示例:
wget -r https://example.com
  1. tar -xvf - 解压指定类型的压缩文件
用于解压指定类型的压缩文件。
示例:
tar -xvf archive.tar.gz
  1. find -exec - 在文件中查找并执行命令
用于在指定的文件中查找,并对匹配的文件执行命令。
示例:
find /path/to/directory -name "*.txt" -exec grep "pattern" {} ;
  1. crontab -l - 显示当前用户的定时任务列表
用于显示当前用户设定的定时任务列表。
示例:
crontab -l
  1. whoami - 显示当前用户的用户名
用于显示当前登录的用户的用户名。
示例:
whoami
  1. tee - 将输出重定向到文件和标准输出
用于同时将输出写入文件和显示在标准输出。
示例:
echo "Hello, World!" | tee output.txt
  1. ln - 创建链接
用于创建硬链接或符号链接到文件或目录。
示例:
ln file.txt link.txt
  1. chmod +x - 使文件可执行
用于将文件设置为可执行权限。
示例:
chmod +x script.sh
  1. man -k - 搜索命令帮助页
用于搜索命令帮助页中的关键词。
示例:
man -k keyword
  1. sed -i - 原地编辑文件
用于直接在文件中进行编辑并保存修改。
示例:
sed -i 's/old_word/new_word/' file.txt
  1. awk -F - 自定义字段分隔符
用于指定字段分隔符进行文本处理。
示例:
awk -F',' '{print $1}' file.csv
  1. tail -f - 实时监视文件变化
用于实时监视文件的变化并输出新增的内容。
示例:
tail -f logfile.txt
  1. find -mtime - 按修改时间查找文件
用于按文件的修改时间查找符合条件的文件。
示例:
find /path/to/directory -mtime +7
  1. grep -l - 查找包含匹配的文件
用于查找包含匹配内容的文件。
示例:
grep -l "pattern" directory/*
  1. tar -cvf - 创建归档文件
用于创建归档文件,并将文件打包到归档中。
示例:
tar -cvf archive.tar file1 file2
  1. dmesg - 显示内核消息
用于显示内核的消息缓冲区内容。
示例:
dmesg | tail
  1. mount - 挂载文件系统
用于挂载文件系统到指定的挂载点。
示例:
mount /dev/sdb1 /mnt
  1. umount - 卸载文件系统
用于卸载已挂载的文件系统。
示例:
umount /mnt
  1. chown - 更改文件所有者
用于更改文件或目录的所有者。
示例:
chown user1 file.txt
  1. chgrp - 更改文件所属组
用于更改文件或目录的所属组。
示例:
chgrp group1 file.txt
  1. tar -zxvf - 解压 gzip 压缩文件
用于解压 .tar.gz 或 .tgz 压缩文件。
示例:
tar -zxvf archive.tar.gz
  1. ps - 显示进程状态
用于显示当前运行的进程状态。
示例:
ps aux
  1. kill - 终止进程
用于终止指定进程。
示例:
kill PID
  1. top - 动态显示系统资源使用情况
用于实时显示系统的资源使用情况。
示例:
top
  1. free - 显示系统内存使用情况
用于显示当前系统的内存使用情况。
示例:
free -h
  1. fdisk - 磁盘分区管理工具
用于创建、删除和调整磁盘分区。
示例:
fdisk /dev/sda
  1. mkfs - 格式化文件系统
用于创建文件系统。
示例:
mkfs.ext4 /dev/sdb1
  1. ln -s - 创建符号链接
用于创建符号链接(软链接)到文件或目录。
示例:
ln -s /path/to/file link
  1. du -sh - 显示文件或目录的磁盘使用情况
用于计算文件或目录的磁盘使用情况。
示例:
du -sh path/to/directory
  1. history - 显示命令历史记录
用于显示之前执行过的命令历史记录。
示例:
history
  1. ifconfig - 显示或配置网络接口信息
用于显示或配置网络接口的信息。
示例:
ifconfig
  1. ping - 测试网络连接
用于测试与目标主机的网络连接情况。
示例:
ping example.com
  1. traceroute - 跟踪数据包传输路径
用于跟踪数据包从源到目的地的路径。
示例:
traceroute example.com
  1. ssh - 远程登录到其他主机
用于从本地主机远程登录到其他主机。
示例:
ssh user@example.com
  1. scp - 安全复制文件和目录
用于在本地主机和远程主机之间安全复制文件和目录。
示例:
scp file.txt user@example.com:/path/to/destination
  1. crontab -e - 编辑定时任务列表
用于编辑当前用户的定时任务列表。
示例:
crontab -e
  1. nohup - 在后台运行命令
用于在后台运行命令,即使终端关闭也不会停止。
示例:
nohup command &
  1. scp -r - 安全复制目录和子目录
用于在本地主机和远程主机之间安全复制目录和其子目录。
示例:
scp -r directory user@example.com:/path/to/destination
  1. rsync - 远程数据同步工具
用于在本地和远程主机之间同步文件和目录。
示例:
rsync -avz source/ user@example.com:/path/to/destination
  1. history | grep keyword - 在历史记录中搜索命令
用于在命令历史记录中搜索特定关键词的命令。
示例:
history | grep "keyword"
  1. crontab -r - 删除定时任务列表
用于删除当前用户的定时任务列表。
示例:
crontab -r
  1. shutdown - 关闭系统
用于安全地关闭系统。
示例:
shutdown -h now
  1. reboot - 重启系统
用于重启系统。
示例:
reboot
  1. watch - 动态监视命令输出
用于动态监视命令的输出,并间隔刷新显示。
示例:
watch -n 1 command
  1. lsof -i - 显示打开的网络连接信息
用于显示当前打开的网络连接信息。
示例:
lsof -i
  1. chmod -R - 递归更改文件权限
用于递归地更改文件和目录的权限。
示例:
chmod -R 755 directory/
  1. grep -R - 递归搜索文件内容
用于递归地搜索文件内容。
示例:
grep -R "pattern" directory/
  1. grep -v - 反向匹配搜索
用于在文件中进行反向匹配搜索。
示例:
grep -v "pattern" file.txt
  1. sed - 流编辑器
用于对文件进行文本编辑和转换操作。
示例:
sed 's/search/replace/' file.txt
  1. awk - 文本处理工具
用于对文本进行分析和处理的强大工具。
示例:
awk '{print $1}' file.txt
  1. find - 查找文件和目录
用于在指定路径下查找匹配的文件和目录。
示例:
find /path/to/search -name "filename"
  1. sort - 排序文件行
用于对文件内容按行排序。
示例:
sort file.txt
  1. uniq - 去除重复行
用于去除文件中相邻重复的行。
示例:
uniq file.txt
  1. wc - 统计文件中的字数、行数和字节数
用于统计文件中的字数、行数和字节数。
示例:
wc file.txt
  1. tar -cvf - 创建 tar 压缩文件
用于将文件打包成 tar 压缩文件。
示例:
tar -cvf archive.tar file1 file2
  1. grep -ri - 递归搜索文件内容(忽略大小写)
用于递归地在文件中搜索指定内容,忽略大小写。
示例:
grep -ri "pattern" directory/
  1. history -c - 清除命令历史记录
用于清除当前用户的命令历史记录。
示例:
history -c

文章总结

恭喜你!通过阅读本文,你已经了解并掌握了100个Linux命令行的常用命令和技巧。这些命令将极大地提高你在Linux系统中的工作效率,并使你更加熟练地与终端交互。记得将这些命令和技巧融会贯通,灵活运用在你的日常工作中。

关键词:Linux      点击(13)
声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多Linux相关>>>