Linux系统命令大全

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Linux系统命令大全

一、Linux远程连接


:::tips

主要目录介绍

  • /:根目录
  • /home:用户目录
  • /root:系统管理员root目录
  • /usr:应用程序
  • /etc:系统配置
  • /boot:内核文件
  • /tmp:临时文件
  • /bin:放命令,工具
    :::
  • 前置步骤
  • 确定linux服务器的IP地址,可以通过ifconfig查看对应的IP地址
  • 实际工作中,IP地址由服务器管理人员给提供
  • 确定IP地址是否可以ping通(在本地电脑进行ping命令操作)
  • 确定linux当中ssh的服务器是否开通
  • netstart -anpt | grep ssh
  • 对方开启服务
  • netstart -anpt | grep ssh
  • 知道对方IP地址和端口
  • ifconfig
  • 自己电脑能ping通对方的电脑
  • ping 对方ip


二、Linux文件操作常用命令



1 Linux的命令格式

格式:command [-options] [parameter]

command 表示的是命令的名称

[ ] 表示是可选的可有可无

[-options]:表示命令的选项,可有一个或多个,也可没有

[parameter]:表示命令的参数,可有一个或多个,也可没有


2 帮助信息查看


  • command --help
  • 显示命令的帮助信息
  • man command
  • man命令查看的帮助信息会更加详细


3 文件或目录常用命令


3.1 查看目录内容:ls


格式:ls [-lah] [文件或目录]

-l:以列表的形式显示出文件或目录的内容

-a:显示所有的文件或目录,包含隐藏文件

-h:显示出文件的目录或大小

ls    # 列举当前目录的文件内容
ls -l
ls -a
ls -lh  # h一定要和l一起使用
ls -lha # 以列表方式,更加人性化,显示所有文件
ls -lha /usr/bin # 查看/usr/bin文件夹里面的内容

通配符可以匹配符合条件的文件或者目录

  • *:表示匹配0到多个任意字符
  • ?:表示匹配单个任意字符
  • [abcd]:表示匹配括号内(a、b、c、d中的)任意一个字符
  • [a-d]:a-d表示的是从a到d的范围


3.2 目录切换:cd


格式:cd [目录路径]

  • 绝对路径:必须是以根目录(/)开头或者家(~)目录开头,然后一个层级一个层级定义对应目录,目录与目录之间用/分隔
  • 相对路径:不以根目录(/)或者家目录(~)开头,而是以当前路径开始,结合返回上层路径(…)来实现相对路径的切换
  • cd 或者cd ~:返回到家目录
  • cd … :返回到上一层目录
  • cd - :返回到上一次的目录


3.3 创建文件:touch


格式:touch 文件名(多个文件名之间用空格隔开)

  • 如果创建的文件名不存在,则新建一个文件
  • 如果创建的文件名已存在,则更新文件的修改时间


3.4 创建目录:mkdir


格式:mkdir 目录名称(多个目录之间用空格隔开)

  • 通过 -p 的选项,实现多个层级的目录创建
  • 如果创建的目录名称已存在,则创建失败
  • mkdir mike:在当面路径下,新建mike文件夹
  • mkdir /mike:在根路径下,新建mike文件夹


3.5 删除文件或目录:rm


格式:rm [-irf] 目录名或者文件

  • -i:表示交互式执行删除操作,删除前会有提示
  • -f:表示强制删除,忽略不存在的文件
  • -r:表示删除目录及目录下所有的内容
  • sudo:用于提升权限


3.6 文件或目录的复制:cp


格式:cp 源文件 目标文件

  • -f:强制覆盖已存在的文件而不提示
  • -i:覆盖已存在文件时,会提示用户是否确认
  • -r:复制目录及目录下所有的内容时,必须带上-r参数
  • -v:显示复制的进度(一般不用)


3.7 文件或目录的移动:mv


格式:mv 源文件 目标文件

  • -f:强制覆盖已存在的文件而不提示
  • -i:覆盖已存在文件时,会提示用户是否确认
  • -v:显示复制的进度(一般不用)


3.8 查看文件内容


3.8.1 cat


适用于查看文件内容较少的文件

  • 可以用来查看文件、创建文件、合并文件、追加文件
  • -b:表示输出非空的行编号
  • -n:表示输出所有的行编号
cat /usr/include/stdio.h
cat -n /usr/include/stdio.h
• 1
• 2


3.8.2 more


适用于查看文件内容较多的文件

  • 空格:显示下一页内容
  • 回车:滚动显示下一行
  • b键:显示上一页内容
  • f键:显示下一页内容
  • q键:退出


3.8.3 grep


格式:grep ‘关键字’ 文件名

搜索文件并显示对应的关键字信息

  • -v:显示不包含匹配文本的所有行(取反)
  • -n:显示匹配的行及行号
  • -i:忽略大小写
    :::tips
    grep正则表达式
  • ‘^a’:表示搜索的文件内容行是以a开头
  • ‘ke$’:表示搜索的文件内容是以ke结尾
  • [Ss]igna[Ll]:匹配[]中的任意一个字符
    :::


3.9 重定向:> 和 >>


将命令输出的结果写入到(重定向)另外的文件当中

:将命令输出的结果覆盖到对应的文件当中

:将命令输出的结果追加到对应的文件当中

cat 1.txt > 2.txt   # 将1.txt的内容覆盖掉2.txt的内容
cat 1.txt >> 2.txt  # 追加1.txt文件到2.txt后面
cat 1.txt 2.txt > 3.txt   # 将1.txt和2.txt的内容合并到3.txt文件当中


3.10 管道符命令 |


通过管道命令可以将一个命令的执行结果,传给另一个命令当做参数来使用

  • more:分屏显示执行结果
  • grep:过滤执行结果
ls -l /usr/bin | more
ls /usr/bin | grep '^au'


3.11 其他命令:pwd、clear、which


  • pwd:查看当前目录的路径
  • clear:清屏
  • which 工具名称:查找工具的安装位置
  • echo:回显


三、信息系统相关命令


1 重启和关机的命令


  • 重启命令:reboot
  • 关机命令:shutdown
  • shutdown -r now:表示重启时,会给其他用户发送提示信息
  • shutdown -h row:表示立刻关机
  • shutdown -h 20:25:表示定时关机
  • shutdown -h +10:表示从当前时再往后10min进行关机


2 查看系统进程:ps


格式:ps -aux | grep ‘关键字’

  • -a:显示所有用户的进程
  • -u:显示进程的详细状态
  • -x:显示没用控制终端进程

一般会结合grep及管道符去查找特定的进程信息

  • ps -aux | grep ‘sedispatch’:查找系统进程中包含sedispatch关键字的进程信息


3 实时查看系统的进程信息:top


格式:top

  • M(shift+m)可以按内存的使用率降序排列显示进程信息
  • P(shift+p)可以按cpu的使用率降序排列显示进程信息


4 关闭进程:kill


格式:kill -9 进程id

  • 进程id一般会通过ps命令去查看
  • -9 表示强制关闭对应的进程

注意:当前执行操作的用户,普通用户不能关闭其他用户的进程,只能关闭自己打开的进程


5 查看系统监听端口:netstat


格式:netstat [-anptu] | grep ‘关键字’ (root用户操作)

  • -a:查看所有已打开的端口
  • -n:以数字方式显示已打开的端口,不显示别名
  • http:80 https:443 mysql:3306 ssh:22
  • -p:显示对应进程的PID
  • -t:显示出tcp协议的端口
  • -u:显示出udp协议的端口


6 查看系统监听端口:lsof


格式:lsof -i (root用户操作)

  • -i:表示查看所有已打开的进程的端口
  • lsof -i:端口号 表示查看特定端口是否已打开

  • 使用场景
  • 当我们去启动某个应用程序时,该应用程序的端口有可能被其他程序所占用
  • 那么此时就可以通过netstat或者lsof查看对应的端口被谁占用
  • 然后关闭对应进程,重新启动要启动的应用程序即可


7 查看日志信息:head


格式:head 文件名

  • 默认查看文件前10条信息
  • head -20 文件名:查看文件的前20条信息


8 查看日志信息:tail


格式:tail -f 文件名

  • tail 文件名:默认查看文件最后10条信息
  • tail -20 文件名:查看文件的最后20条信息
  • tail -f 文件名:实时查看日志的文件信息

使用场景:

  • 当测试发现问题时,需要去查看后台的日志信息
  • 通过tail -f 日志文件名(实时打开对应的日志文件并查看)
  • 操作系统复现对应的问题


9 查看操作系统信息


  • cat /pro/version
  • 查看当前操作系统版本信息
  • cat /etc/issue
  • 查看版本当前操作系统发行信息


四、用户权限和管理


1 权限的概念


2 修改用户权限chmod:字母法


命令格式:chmod u+rwx 1.txt

  • 用户选项:
  • u:所属的用户
  • g:所属的用户组
  • o:其他用户
  • a:所有的用户
  • 设置选项:
  • +:表示增加权限
  • -:表示取消权限
  • =:表示设置权限


3 修改用户权限chmod:数字法

命令格式:chmod 755 1.txt


4 增加用户、查看登录用户


  • 增加用户:useradd 用户名
  • useradd -g root admin1:创建用户时,并指定用户的组为root
  • 查看当前登录的用户:who
  • 删除用户:userdel -r 用户名
  • -r 作用把用户目录都删除


5 切换用户、修改密码、退出


  • 切换用户
  • su - :切换到root用户,需要输入root密码
  • su 用户名:切换到指定的用户下,如果是从root用户下切换,不需要输入密码
  • 修改密码
  • passwd:修改当前用户的密码,需要输入原密码
  • passwd 用户名:修改指定用户的密码,必须通过root用户来实现
  • 退出登录的用户 exit
  • 如果是图形界面,退出当前终端
  • 如果是ssh远程登录,退出登录账户
  • 如果是切换后的登录用户,退出则返回上一个登录账号


五、其他命令


1 查找文件


命令格式:find [路径] -name 文件名

  • 路径可有可无,没有的情况表示的是当前目录
  • 文件名可以使用通配符,使用通配符,文件名必须在引号里面
  • find . -name test.sh 在当前目录及子目录下查找名称为test.sh的文件
  • find . -name ‘abc*.txt’ 在当前目录及子目录下查找名称为abc开头的txt文件


2 软连接:In

3 打包和解包

4 压缩解压缩:gzip

5 压缩解压缩:biz2

6 压缩解压缩:zip、unzip

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
29天前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
73 8
|
29天前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
205 6
|
4天前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
28 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
11天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
39 14
Linux 10 个“who”命令示例
|
27天前
|
缓存 Java Linux
如何解决 Linux 系统中内存使用量耗尽的问题?
如何解决 Linux 系统中内存使用量耗尽的问题?
115 48
|
14小时前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
32 20
|
14小时前
|
存储 缓存 监控
Linux缓存管理:如何安全地清理系统缓存
在Linux系统中,内存管理至关重要。本文详细介绍了如何安全地清理系统缓存,特别是通过使用`/proc/sys/vm/drop_caches`接口。内容包括清理缓存的原因、步骤、注意事项和最佳实践,帮助你在必要时优化系统性能。
59 47
|
21小时前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
20 7
|
20天前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
30 9
|
18天前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解