当前位置:首页 > 学海无涯 > 正文内容

Linux常用命令大全

清羽天2个月前 (09-02)学海无涯10

Linux是开发与运维工作中不可或缺的工具,掌握常用命令能显著提升效率。本篇整理了一些高频使用的命令,覆盖文件操作、系统监控、网络调试等核心场景,适合入门学习或作为日常参考使用。以下是一些常用的Linux命令:



1. ls:列出当前目录中的文件和子目录

ls

2. pwd:显示当前工作目录的路径

pwd

3. cd:切换工作目录

cd /path/to/directory

4. mkdir:创建新目录

mkdir directory_name

5. rmdir:删除空目录

rmdir directory_name

6. rm:删除文件或目录

rm file_name
rm -r directory_name  # 递归删除目录及其内容

7. cp:复制文件或目录

cp source_file destination
cp -r source_directory destination  # 递归复制目录及其内容

8. mv:移动或重命名文件或目录

mv old_name new_name

9. touch:创建空文件或更新文件的时间戳

touch file_name

10. cat:连接和显示文件内容

cat file_name

11. more/less:逐页显示文本文件内容

more file_name
less file_name

12. head/tail:显示文件的前几行或后几行

head -n 10 file_name  # 显示文件的前10行
tail -n 20 file_name  # 显示文件的后20行

13. grep:在文件中搜索指定文本

grep search_term file_name

14. ps:显示当前运行的进程

ps aux

15. kill:终止进程

kill process_id

16. ifconfig/ip:查看和配置网络接口信息

ifconfig
ip addr show

17. ping:测试与主机的连通性

ping host_name_or_ip

18. wget/curl:从网络下载文件

wget URL
curl -O URL

19. chmod:修改文件或目录的权限

chmod permissions file_name

20. chown:修改文件或目录的所有者

chown owner:group file_name

21. tar:用于压缩和解压文件和目录

tar -czvf archive.tar.gz directory_name  # 压缩目录
tar -xzvf archive.tar.gz  # 解压文件

22. df/du:显示磁盘使用情况

df -h  # 显示磁盘空间使用情况
du -h directory_name  # 显示目录的磁盘使用情况

23. mount/umount:挂载和卸载文件系统

mount /dev/sdX1 /mnt  # 挂载分区到指定目录
umount /mnt  # 卸载挂载的文件系统

24. psql/mysql:用于与PostgreSQL或MySQL数据库交互的命令行工具

psql -U username -d database_name  # 连接到PostgreSQL数据库
mysql -u username -p  # 连接到MySQL数据库

25. top/htop:显示系统资源的实时使用情况和进程信息

top
htop

26. ssh:远程登录到其他计算机

ssh username@remote_host

27. scp:安全地将文件从本地复制到远程主机,或从远程主机复制到本地

scp local_file remote_user@remote_host:/remote/directory

28. find:在文件系统中查找文件和目录

find /path/to/search -name "file_pattern"

29. grep:在文本中搜索匹配的行,并可以使用正则表达式进行高级搜索

grep -r "pattern" /path/to/search

30. sed:流编辑器,用于文本处理和替换

sed 's/old_text/new_text/' file_name

31. awk:用于文本处理和数据提取的文本处理工具

awk '{print $1}' file_name  # 提取文件中的第一列数据

32. ssh-keygen:生成SSH密钥对,用于身份验证远程服务器

ssh-keygen -t rsa

33. date:显示或设置系统日期和时间

date

34. echo:将文本输出到标准输出

echo "Hello, World!"

35. ln:创建硬链接或符号链接

ln source_file link_name  # 创建硬链接
ln -s source_file link_name  # 创建符号链接

36. uname:显示系统信息

uname -a

37. shutdown/reboot:关闭或重新启动系统

shutdown -h now  # 立即关闭系统
reboot  # 重新启动系统

38. who/w:显示当前登录的用户信息

who
w

39. curl:用于与网络资源进行交互,支持各种协议

curl -X GET http://example.com

40. zip/unzip:用于压缩和解压ZIP文件

zip archive.zip file1 file2  # 压缩文件
unzip archive.zip  # 解压ZIP文件

41. chmod/chown:修改文件或目录的权限和所有者

chmod permissions file_name  # 修改文件权限
chown owner:group file_name  # 修改文件所有者

42. useradd/userdel:用于添加和删除用户账户

useradd new_user  # 添加用户
userdel username  # 删除用户

43. passwd:更改用户密码

passwd username

44. cron:定时任务管理器,用于自动执行计划任务

crontab -e  # 编辑用户的定时任务

45. uptime:显示系统的运行时间和负载情况

uptime

46. hostname:显示或设置计算机的主机名

hostname  # 显示主机名

47. iptables/ufw:用于配置防火墙规则

iptables -A INPUT -p tcp --dport 80 -j ACCEPT  # 允许HTTP流量
ufw enable  # 启用Uncomplicated Firewall

48. netstat/ss:显示网络连接信息

netstat -tuln  # 显示所有TCP和UDP端口
ss -tuln  # 使用Socket Stat查看网络连接

49. ps/top/htop:显示进程信息和系统资源使用情况

ps aux  # 显示所有进程
top  # 实时监视系统资源
htop  # 更友好的进程监视器

50. history:查看命令历史记录

history

51. free:显示系统内存使用情况

free -m  # 以MB为单位显示内存使用情况

52. lsblk/fdisk:查看磁盘分区信息和管理磁盘

lsblk  # 显示块设备信息
fdisk /dev/sdX  # 打开磁盘分区工具

53. nc:用于网络连接测试和数据传输

nc -vz host_name_or_ip port  # 测试主机的端口是否可达

54. stat:显示文件或目录的详细信息

stat file_or_directory

55. nmcli:用于管理网络连接的命令行工具

nmcli connection show  # 显示网络连接信息

56. tailf:实时追踪文件的末尾,类似于tail -f

tailf file_name

57. scp:安全地将文件从本地复制到远程主机,或从远程主机复制到本地

scp local_file remote_user@remote_host:/remote/directory  # 从本地到远程
scp remote_user@remote_host:/remote/file local_directory  # 从远程到本地

58. rsync:用于在本地和远程系统之间同步文件和目录

rsync -avz source_directory/ remote_user@remote_host:/remote/directory/

59. dd:用于复制和转换文件

dd if=input_file of=output_file bs=block_size

60. sudo:以超级用户权限运行命令

sudo command_to_run_as_superuser

61. alias:为命令创建别名

alias ll='ls -alF'

62. unalias:删除命令别名

unalias ll

63. env:显示当前环境变量

env

64. export:设置或导出环境变量

export PATH=$PATH:/new/path

65. xargs:将标准输入转换为命令参数

cat files.txt | xargs rm  # 删除files.txt中列出的文件

66. man:查看命令的帮助文档

man ls

67. tee:从标准输入读取并写入到标准输出和文件

echo "Log entry" | tee -a log.txt

68. trap:定义脚本中接收到信号时执行的动作

trap 'echo "Script interrupted!"' INT

69. watch:周期性执行命令并显示输出

watch -n 5 df -h  # 每5秒显示一次磁盘使用情况

70. basename:从路径中提取文件名

basename /path/to/file.txt  # 输出 file.txt

71. dirname:提取文件路径中的目录部分

dirname /path/to/file.txt  # 输出 /path/to

72. yes:持续输出字符串,通常用于自动确认

yes | apt install package_name

73. sleep:延迟指定时间后再继续执行

sleep 5  # 暂停5秒

74. seq:生成指定范围的数字序列

seq 1 5  # 输出 1 2 3 4 5

75. cut:按列提取文本内容

cut -d ':' -f1 /etc/passwd  # 提取第1列用户名

76. tr:替换或删除字符

echo "hello" | tr 'a-z' 'A-Z'  # 输出 HELLO

77. uniq:去除重复行(通常配合 sort 使用)

sort file.txt | uniq

78. sort:对文本内容排序

sort file.txt

79. wc:统计文件中的行数、单词数和字节数

wc -l file.txt  # 统计行数

80. file:查看文件类型

file filename

本文整理的命令涵盖了日常使用的关键场景,建议结合实际项目反复练习,加深理解。如果你有更多实用技巧,欢迎交流补充。


分享给朋友:

“Linux常用命令大全” 的相关文章

Linux 忘记密码解决方法

Linux 忘记密码解决方法

很多朋友经常会忘记Linux系统的root密码,linux系统忘记root密码的情况该怎么办呢?重新安装系统吗?当然不用!进入单用户模式更改一下root密码即可。步骤如下:重启linux系统3 秒之内要按一下回车,出现如下界面然后输入e在 第二行最后边输入 single...

Spring Boot 配置 Redis 入门指南:从环境搭建到实战操作

Spring Boot 配置 Redis 入门指南:从环境搭建到实战操作**Redis 作为一款高性能的键值对存储数据库,在缓存、会话存储、分布式锁等场景中应用广泛。而 Spring Boot 凭借其 “约定优于配置” 的特性,能极大简化 Redis 的集成流程。本文将从零基础出发,带大家一步步完成...

Spring Boot 实现 MySQL 数据多选删除功能详解

在实际的 Web 开发中,数据删除是常见操作,而多选删除能极大提升用户操作效率,比如批量删除商品、订单、用户信息等场景。本文将基于 Spring Boot 框架,结合 MySQL 数据库,从需求分析到代码实现,完整讲解多选删除功能的开发过程,包含前端页面交互、后端接口设计、数据库操作及异常处理,适合...

Spring Boot 过滤器入门:从概念到实战配置

在 Web 开发中,过滤器(Filter)是处理 HTTP 请求和响应的重要组件,它能在请求到达控制器前、响应返回客户端前进行拦截和处理。比如日志记录、权限验证、字符编码转换等场景,都离不开过滤器的身影。本文将带大家从零开始,掌握 Spring Boot 中过滤器的入门知识和完整设置流程。一、过滤器...