Linux常用命令大全(超全面!超详细!)

        本文全面总结了Linux中常见的命令以及一些实际操作示例,包括文件目录操作、时间日期管理、用户与组管理、文件权限管理、网络管理、进程管理、压缩和解压缩、搜索查找、软件包管理以及关机重启和帮助命令等方面。

本文目录

一、文件目录命令

1. pwd:显示当前目录路径

语法:pwd
显示当前所在目录的完整路径。
在这里插入图片描述

2. ls:查看文件和目录

语法:ls [OPTION]... [FILE]...
ls命令用于查看当前目录下的所有文件和目录。常用选项如下:

  • -a:显示当前目录所有的文件和目录,包括隐藏文件和目录。
  • -l:使用列表的方式显示信息,等同于ll命令,能详细展示文件的权限、所有者、大小、修改时间等信息。

ls后面直接跟目录或者文件,用于指定查看的目录或者文件。

3. cd:切换目录

语法:cd [-L|[-P [-e]]] [dir]
cd命令用于切换目录,常见示例如下:

  • cd 目录名:切换到指定目录。
  • cd ..:切换到上一级目录。
  • cd /cd ~:切换到home目录。
  • cd -:切换到上次访问的目录。

4. mkdir:创建目录

语法:mkdir [OPTION]... DIRECTORY...
mkdir用于创建目录。如果要创建多级目录,需要使用-p选项。

5. rmdir:删除空目录

语法:rmdir [OPTION]... DIRECTORY...
rmdir只能用于删除空目录。如果目录非空,使用该命令会提示错误。

6. touch:创建空文件

语法:touch [OPTION]... FILE...
touch命令用于创建一个或多个空文件。
touch test.txt会在当前目录下创建一个名为test.txt的空文件。

7. rm:删除文件或目录

语法:rm [OPTION]... FILE...
rm命令可用于删除文件或目录,使用时需谨慎。常用选项如下:

  • -r:递归删除整个文件夹。
  • -f:强制删除不提示。

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

语法:mv [OPTION]... SOURCE... DIRECTORY
mv命令有两个主要用途:一是重命名文件或目录,二是将文件或目录从一个位置移动到另一个位置。

9. cp:复制文件或目录

语法:cp [OPTION]... SOURCE... DIRECTORY
cp命令用于复制文件或目录。递归复制目录需要使用-r选项。

10. 文件查看命令

(1)cat:显示文件内容

语法:cat [OPTION]... [FILE]...
cat用于查看文件内容,但只能显示最后一屏内容。使用-n选项可以显示行号。

(2)more:百分比查看文件内容

语法:more [options] file...
more命令以百分比的形式查看文件内容,回车可以向下一行,空格向下一页,按q退出查看。

(3)less:分屏查看文件内容

语法:less [options] file...
less功能与more相似,但更强大,适合查看大文件。常用快捷键如下:

  • 空格:向下一页。
  • q:退出。
  • pagedown:向下一页。
  • pageup:向上一页。
  • /字符串:向下搜索字符串,n向下查找,N向上查找。
  • ?字符串:向上搜索字符串,操作与/字符串类似。
(4)head:从文件头开始查看内容

语法:head [OPTION]... [FILE]...
head命令从文件头开始查看内容,使用-n 行数可以指定查看的行数。

(5)tail:从文件尾部开始查看内容

语法:tail [OPTION]... [FILE]...
tailhead原理类似,但从文件尾部开始查看。-n用于指定行数,表示查看文件尾部的行数。

在这里插入图片描述

11. 重定向指令

(1)>:覆盖写入

语法:命令 > 目标文件
该指令将命令所产生的结果写入目标文件中,会覆盖原有内容。

(2)>>`:追加写入

语法:命令 >> 目标文件
>>也是将结果写入目标文件中,但采用追加的方式,不会覆盖原有内容。

二、时间日期指令

1. date:显示和设置时间

语法:date [OPTION]... [+FORMAT]
date命令用于显示当前时间。[+FORMAT]用于指定显示的格式,常用格式如下:

  • date +%Y:显示当前年份。
  • date +%m:显示当前月份。
  • date +%d:显示当前日。
  • date -s 时间字符串:用于设置时间。

2. cal:显示日历

语法:cal [options] [[[day] month] year]
cal命令用于显示日历。常用指令如下:

  • cal:显示当前月的日历。
  • cal 年份:显示某年份的日历。



三、用户管理和组管理

1. 用户管理

(1)新增用户

语法:useradd [选项] username
例如,useradd test会创建一个名为test的用户,并指定组为test,同时在/home目录下创建test目录作为用户的主目录。使用passwd test可以给新建的test用户设置密码。常见选项如-d /home/test1,用于手动指定主目录。

(2)删除用户

语法:userdel [选项] username
userdel test用于删除用户test,但保留其主目录。使用-r选项(如userdel -r test)可以在删除用户时一起删除主目录。

(3)查看用户信息

语法:id username
id test用于查看用户test的信息。

(4)切换用户

语法:su username
su root用于切换到root用户。低权限用户切换到高权限用户需要输入密码,使用exit命令可以回到之前的用户。

(5)查看当前用户

语法:whoami
输入该命令会显示当前用户名。

2. 组管理

(1)新增组

语法:groupadd groupname
groupadd test用于创建组test

(2)删除组

语法:groupdel groupname
groupdel test用于删除组test

(3)指定组

有两种方式:

  • useradd -g groupname username:在新增用户时手动指定组,需要先创建组。
  • gpasswd -a username groupname:将用户添加到组里面。
(4)将用户从组中移除

语法:gpasswd -d username groupname
该命令用于将指定用户从指定组中移除。



四、文件权限管理

1. 文件权限基础知识

在Linux中,每个文件和目录都有相关的权限,权限类型有三种:读取(Read)、写入(Write)和执行(Execute)。每一个文件或目录都有一个文件类型标识和9个权限位,权限位分为三组,分别代表文件所有者、同组用户和不同组用户的权限。具体对应关系如下:

  • 读取权限(Read):对应数字为 4,对应字符为 r,可以查看文件内容,列出目录中的内容。
  • 写入权限(Write):对应数字为 2,对应字符为 w,可以修改文件内容,在目录中创建、删除文件。
  • 执行权限(Execute):对应数字为 1,对应字符为 x,可以执行文件或者进入目录。
    在这里插入图片描述

2. 权限相关命令

(1)chmod:更改文件权限

语法:chmod [OPTION]... MODE[,MODE]... FILE...
有两种更改方式:

  • 通过r、w、x更改:例如,chmod u=rwx,g=wx,o=r 文件名,u、g、o、a分别是文件所有者、文件所在组用户、其他组用户、所有用户的标识;=、+、-分别代表设置权限、增加权限、取消权限的含义。
  • 通过数字更改:例如,chmod 754 文件名,其中r=4w=2x=1rwx=4+2+1=7

u、g、o、a 分别是文件所有者、文件所在组用户、其他组用户、所有用户的标识
=、+、-分别代表设置权限、增加权限、取消权限的含义

在这里插入图片描述

(2)chown:改变文件或目录的所有者

语法:chown [OPTION]... [OWNER][:[GROUP]] FILE...

在这里插入图片描述

(3)chgrp:改变文件或目录的所属组

语法:chgrp [OPTION]... GROUP FILE...
例如,chgrp centos test.txt将文件test.txt的所属组改为centos

在这里插入图片描述

(4)umask:查看和修改新建时默认文件权限

语法:umask [-p] [-S] [mode]
使用umask命令可以显示新建时默认文件权限。

在这里插入图片描述



五、网络管理命令

1. ifconfig

语法:ifconfig
作用:查看网卡信息。通过该命令可以获取网卡的IP地址、子网掩码、MAC地址等信息,帮助我们了解网络接口的配置情况。

2. ping

语法:ping ip地址/域名
作用:测试与某台主机的连通性。例如,ping www.baidu.com 可以测试当前主机与百度服务器之间的网络连接是否正常。

3. curl

语法:curl [options...] <url>
作用:用来发送HTTP请求。可以用于获取网页内容、上传文件等操作。

4. host

语法:host ip/域名
作用:做DNS查询,可以查询ip相关的域名,反之也可。比如,host 8.8.8.8 可以查询该IP对应的域名信息。

5. netstat

语法:netstat [options...]
作用:监测网络连接状态、查找端口占用情况、分析网络通信状况。常用选项如下:

  • -a:显示所有端口。
  • -n:数字形式显示网络地址和端口号。



六、进程管理命令

1. 进程基本介绍

  • 在Linux中,每一个正在执行的程序都称为一个进程,每个进程都有各自的pid(进程ID)。
  • 进程分为后台与前台进程,前台进程是用户可以感知到的,后台进程则相反。

2. 进程相关命令

(1)ps

语法:ps [options]
作用:查看进程相关信息。常用选项如下:

  • -a:显示当前终端下的所有进程信息。
  • -u:以用户的格式显示进程信息。
  • -x:显示后台进程运行的参数。
  • -f:用全格式显示进程信息。
  • -e:显示所有进程信息。

例如:ps -aux 可以查看所有用户的所有进程信息。

在这里插入图片描述

(2)kill、killall

语法:kill [options] pid / killall 进程名称
作用:停止进程。示例:kill -9 进程号,其中-9是一种信号,用于强制终止进程。

(3)top

语法:top
作用:用于实时显示进程的信息。可以动态查看系统中各个进程的资源占用情况。
在这里插入图片描述

(4)pstree

语法:pstree [options...]
作用:以树的形式直观的查看进程信息。常用选项如下:

  • -p:显示进程的pid。
  • -u:显示进程所属的用户。



七、压缩和解压缩命令

1. zip

语法:zip [-options] targetName 将要压缩的文件或目录
作用:将指定文件或者目录压缩。用于目录压缩需要指定选项-r进行递归压缩。
在这里插入图片描述

2. unzip

语法:unzip [OPTION]... 被zip命令压缩的文件
作用:用于解压zip命令压缩生成的文件。默认解压后文件存放在当前文件夹,-d可以手工指定文件夹。

3. gzip

语法:gzip file
作用:与zip相比,只能压缩单个文件,并会删除源文件,后缀格式为.gz。

4. gunzip

语法:gunzip 压缩文件
作用:解压gzip压缩的文件,解压后会删除原压缩文件。

5. tar

语法:tar [OPTION]... targetName 待打包文件或者目录
作用:tar只是一个简单的打包命令,压缩和解压缩都是由选项决定的。常用选项如下:

  • -c:生成.tar.gz文件。
  • -z:打包的时候压缩。
  • -x:解压文件。
  • -v:显示详细信息。
  • -f:指定压缩/解压后的文件名。
  • -C:指定解压到哪个目标目录。

示例:

  • tar -zcvf demo.tar.gz demo demo.txt 将文件demodemo.txt打包成demo.tar.gz
    在这里插入图片描述

  • tar -zxvf demo.tar.gz -C test/demo.tar.gz解压到指定的目录test/中。
    在这里插入图片描述



八、搜索查找指令

1. find

find命令会从指定目录向下递归遍历各个子目录,从而找到满足条件的文件或目录。
语法:find [指定查找目录]... [OPTION]
OPTION常用可选值有以下几种,可以自由组合:

  • -name:按照名称查找,支持通配符。
  • -user:使用用户名查找。
  • -size :按照文件大小查找,+号表示大于,-号表示小于。
  • -perm:指定文件的权限。
  • -type :指定文件的类型,d为目录。

示例:

  • find -name test.txt:在当前目录下查找test.txt
  • find / -name '*.txt':从根目录下递归查找以.txt结尾的文件。
  • find -type d:查找当前目录下的所有目录。
  • find -size +100M/-100M:查找当前目录下大于100M/小于100M的文件。
    在这里插入图片描述

2. locate

系统默认每天自动备份更新系统的文件路径数据,使用locate指令可以快速定位整个系统的文件路径。使用locate命令查不到最新变动过的文件,可以使用命令updatedb手动更新到最新。
语法:locate [OPTION]... [PATTERN]...
示例:locate test.txt 查找文件名含有test.txt的所有文件。
在这里插入图片描述

3. grep

grep命令是一种强大的文本搜索工具。
语法:grep [OPTION]... PATTERN [FILE]...
常用选项示例:

  • -n:显示行号。
  • -i:忽略大小写。

示例:cat 文件 | grep ‘搜索的字符’ 将文件中的内容使用grep进行搜索,|为管道符,可以将前一个命令的处理结果输出传递到后面的命令处理。
在这里插入图片描述

4. which

语法:which 命令
作用:用于搜索某个系统命令在PATH变量指定的位置。示例:which java

5. whereis

语法:whereis file...
作用:用于搜索可执行文件、源代码文件、帮助文件在系统中的位置。示例:whereis pwd



九、软件包管理命令

1. yum list

语法:yum list
作用:查询系统已经安装的软件。此命令经常和grep一起使用。示例:yum list | grep maven 查询maven相关的本地软件。

在这里插入图片描述

2. yum install

语法:yum install 软件包名
作用:下载安装软件包。示例:yum install ftp
在这里插入图片描述

3. yum remove

语法:yum remove 软件包名
作用:卸载软件包。示例:yum remove ftp
在这里插入图片描述



十、关机重启、帮助命令

1. 关机重启

语法:shutdown [OPTIONS…] [TIME] [WALL…]

关机示例:

  • shutdown -h now:立刻关机。
  • shutdown -h 分钟数:多少分钟后关机。
  • poweroff:立刻关机。

重启示例:

  • shutdown -r now:立刻重启。
  • shutdown -r 分钟数:多少分钟后重启。
  • reboot:立刻重启。

2. 帮助命令

(1)help/–help

语法:help 命令 或者 命令 --help
示例:

  • help cd
  • cd --help

需要注意的是,help命令有时候会不生效,建议使用--help
在这里插入图片描述

(2)man 命令

语法: man 命令

man命令会进入文档,按q键退出。

在这里插入图片描述

十一、vim/vi中行号的显示和关闭

vim/vi编辑时,行号默认是不显示的,如要显示,可以按以下进行设置:

1. 非永久显示:

		显示行号:末行模式下输入 **set number** 或 **set nu** 回车
		关闭行号:末行模式下输入 **set nonumber** 或 **set nonu** 回车

2. 永久显示:

	终端下输入 *vim ~/.vimrc* 或 *vi ~/.vimrc* ,在配置文件.vimrc中添加 **set number** 或 **set nu** 保存就可以了



← 上一篇 Java进阶——注解一文全懂
记得点赞、关注、收藏哦!
下一篇 Java进阶——IO流实战详解 →
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值