Linux 常用命令

文章目录

文件与目录操作 :

  • ls:列出当前目录的文件和子目录,常用参数如-l(详细信息)、-a(包括隐藏文件)。
  • cd:切换目录,用于在文件系统中导航。
  • mkdir:创建新目录。
  • rm:删除文件或目录,用于删除文件时加上-f参数,删除目录时加上-r参数。
  • cp:复制文件或目录,cp -r用于递归复制目录。
  • mv:移动或重命名文件或目录。

文件内容查看:

  • cat:查看文件内容,常用于查看小型文本文件。
  • more/less:分页查看文件内容,less支持向上翻页,适合查看大文件。
  • tail:查看文件末尾的若干行,tail -f用于实时监控文件内容变化,如日志文件。
  • head:查看文件的开头几行。

系统管理:

  • ps:显示当前运行的进程列表,ps aux可以查看所有用户的进程。
  • top/htop:实时查看系统中的进程状态和资源使用情况。
  • kill/killall:终止进程,kill后跟进程ID,killall后跟进程名。
  • df:显示文件系统的磁盘使用情况。
  • du:统计目录或文件所占用的磁盘空间,du -h以人类可读的格式显示。

网络配置与调试:

  • ping:测试与目标主机的连通性。
  • ifconfig/ip:查看和配置网络接口信息,ifconfig已逐渐被ip命令替代。
  • netstat/ss:查看网络连接和端口使用情况,ss是netstat的替代品,提供更详细的信息。
  • curl/wget:发送HTTP请求或下载文件,curl更适合进行API调试,wget则用于下载文件。

文件权限与用户管理:

  • chmod:修改文件或目录权限,常用模式如chmod 755。
  • chown:更改文件或目录的所有者。
  • useradd/userdel:添加或删除用户。
  • passwd:修改用户密码。

高效使用文件和目录操作命令

find命令:用于查找文件或目录,支持按文件名、大小、修改时间等条件查找。

例如,查找当前目录下所有.txt文件:

bash 复制代码
find . -name "*.txt"

grep命令:用于在文件中搜索特定的字符串或正则表达式,支持按行输出匹配结果。

例如,查找文件log.txt中包含error的行:

java 复制代码
grep "error" log.txt

常用参数有-r(递归查找)、-i(忽略大小写)。

文件压缩与解压缩

tar命令 :常用于打包和解包文件,支持多种压缩格式(如gz、bz2)。

例如,打包目录mydir并压缩成tar.gz文件:

bash 复制代码
tar -czvf mydir.tar.gz mydi

解压缩时使用-x参数:

bash 复制代码
tar -xzvf mydir.tar.gz

zip/unzip命令 :zip用于压缩文件或目录,unzip用于解压缩。

例如:

bash 复制代码
zip -r myfile.zip mydir
unzip myfile.zip

进程管理与系统性能调优

nice/renice命令 :用于调整进程的优先级,nice用于启动进程时设置优先级,renice用于调整运行中的进程优先级。较低的nice值代表更高的优先级。

例如,将进程ID为1234的进程优先级降低:

bash 复制代码
renice +10 1234

strace命令 :用于跟踪系统调用和信号,是调试程序的利器。通过strace可以查看程序运行过程中与内核的交互,帮助排查程序的运行问题。

任务调度与自动化

crontab :crontab用于定时执行脚本或任务,适用于周期性任务。编辑用户的crontab任务表:

bash 复制代码
crontab -e

常用的格式包括:

bash 复制代码
# 每天凌晨2点执行backup.sh脚本
0 2 * * * /path/to/backup.sh

at命令 :at命令用于在指定时间执行一次性任务,适合于非周期性任务。

例如,设置在下午3点执行script.sh:

bash 复制代码
echo "/path/to/script.sh" | at 3pm

监控与日志管理

journalctl :在使用systemd的Linux系统中,journalctl可以查看系统日志。

例如,查看最新的系统启动日志:

bash 复制代码
journalctl -b

dmesg命令 :用于查看内核日志消息,通常用于查看系统启动过程和硬件相关的日志信息。可以通过grep筛选特定关键词,如查看硬盘相关信息:

bash 复制代码
dmesg | grep sda

网络调试的高级工具

tcpdump :tcpdump是Linux中的强大网络抓包工具,可以用于调试网络通信和分析流量。

例如,捕获来自指定IP地址的数据包:

bash 复制代码
tcpdump src 192.168.1.100

nmap : 用于网络扫描,nmap可以探测网络中的开放端口和服务,适用于网络安全分析和主机检测。

例如,扫描某个IP的开放端口:

bash 复制代码
nmap 192.168.1.1

数据流操作与管道

awk:用于数据处理和格式化输出,适合处理结构化的文本数据。

例如,统计文件中某个字段的总和:

bash 复制代码
awk '{sum += $2} END {print sum}' data.txt

sed:是流编辑器,常用于文本替换和处理。

例如,将file.txt中的foo替换为bar:

bash 复制代码
sed 's/foo/bar/g' file.txt

管道|与重定向>:

管道|用于将一个命令的输出作为下一个命令的输入

例如筛选出ls的结果中的.txt文件:

bash 复制代码
ls -l | grep ".txt"

重定向>用于将命令输出保存到文件,>>用于追加到文件。

相关推荐
为思念酝酿的痛33 分钟前
数据链路层--帧传输与链路控制
网络·网络协议·计算机网络·数据链路层
头发还在的女程序员34 分钟前
【无标题】
网络·数据库·短剧小程序·短剧系统·海外短剧·短剧后台
是jin奥1 小时前
Ubuntu 访问 Windows 共享目录
linux·运维·ubuntu
Gauss松鼠会1 小时前
【GaussDB】破除gaussdb ugin索引支持中文模糊查询的迷思-字符序
java·运维·服务器·网络·数据库·gaussdb·经验总结
luiyarch1 小时前
汽车电子ISO 21448 SOTIF系列(第26期):未知危险场景的确认方法(下)——AI驱动的场景发现
网络·人工智能·安全·车载系统·汽车
砚凝霜1 小时前
【软考信息安全】第十六章 网络安全风险评估项目流程与应用
网络·安全·web安全
Mr_韩1 小时前
子网路由实战:无需公网 IP,异地直接访问家庭内网全部设备
运维·网络·物联网·nas
Bruce_Liuxiaowei1 小时前
内网“影子资产“:串口服务器安全盲区剖析
服务器·网络·安全·iot
星恒随风1 小时前
Linux基础IO万字详解:从文件描述符fd到重定向、FILE缓冲机制及MiniShell升级
linux·运维·笔记·学习·状态模式
yunwei372 小时前
eBPF 入门开发实践教程一:Hello World,基本框架和开发流程
linux·后端·性能优化