0


Linux的基本命令

近期巩固了一遍linux基本命令,在这里记录一下


1.命令格式

Linux命令遵循一定的基本格式:Command [options] [arguments]

实例:$rm -r dir

这里rm 就是命令 -r是选项(-recursive的简写) dir是参数

-r是短选项 -recursive是长选项 使用短选项可以合并多个长选项

2.常用命令分类

  1. 文件操作命令(文件处理、文件查看、权限管理、文件搜索)
  2. 网络管理与通信命令
  3. 压缩解压命令
  4. 帮助命令

2.1文件操作命令

2.1.1文件处理命令

ls、cd、pwd、touch、mkdir、cp、mv、rm、rmdir

(1).ls命令

原意:list

功能:列出参数的属性信息

格式:ls [选项] [参数]

常用选项:
选项说明-l详细信息展示出当前目录下的文件-a显示当前目录下的全部文件包括隐藏文件-d查看目录属性-t
按创建时间顺序列出文件
-i
输出文件的inode编号
-R列出当前目录下的所有文件信息,并递归的方式显示各个子目录中的文件和子目录信息
示例:

ls -l    #详细信息展示出当前目录下的文件

ls -l也可以缩写成ll直接输入

ll    #详细信息展示出当前目录下的文件

输入cd / 进入根目录输入ll查看跟多的文件文件详情,这里看左边第一列的开头第一个字母区分文件类型

开头是 d 表示该文件是目录

开头是 l 表示该文件是快捷方式

开头是 - 的表示这是个普通文件

ls -a    #显示当前目录下的全部文件包括隐藏文件

使用短选项可以组合使用选型

ls -la    #详细信息展示出当前目录下的所有文件包括隐藏文件

ls -d   #查看目录属性

ls -t    #按创建时间顺序列出文件

这里和ls的区别在于是否按创建时间输出文件

ls -i    #输出文件的inode编号

ls -R    #列出当前目录下的所有文件信息,并递归的方式显示各个子目录中的文件和子目录信息

(2).cd命令

原意:change directory

功能:切换目录

格式:cd [参数]

示例:

cd /    #进入到根目录

输入ll查看当前目录下有哪些文件

cd ./usr    #进入当前目录为相对路径的usr目录下

cd ..    #返回上一级目录

cd ~    #返回home目录

cd -    #返回上一步所在的目录

(3).pwd命令

原意:Print Working Directory

功能:向用户显示当前命令行会话所处的目录位置

格式:pwd [选项]

常用选项:
选项说明-L显示逻辑路径,而不是物理路径。-P显示物理路径,不跟随符号链接链接的路径-h显示帮助信息并退出。--version显示版本信息并退出。
示例:

输入pwd查看当前目录

pwd     #查看当前目录

(4).touch命令

功能:以给定的文件名作为参数,如果文件存在,则更新文件的访问和修改时间戳为当前时间;如果文件不存在,则创建一个空白文件。

格式:touch [选项] 文件名

常用选项:
选项说明-a仅更新文件的访问时间戳。-m仅更新文件的修改时间戳-c不创建新文件,只更新已存在文件的时间戳-t <时间戳>使用指定的时间戳来更新文件的时间戳。时间戳格式为

[CC]YY]MMDDhhmm[.ss]

示例:

touch helloLinux.txt    #创建一个helloLinux.txt的文件

(5).mkdir命令

原意:make directory

功能:以给定的目录名作为参数,在当前工作目录下创建一个新的目录。

格式:mkdir [选项] 目录名

常用选项:
选项说明-p递归地创建目录,包括父级目录。如果父级目录不存在,也会一并创建。-m <权限模式>设置新创建目录的权限模式。权限模式使用八进制表示-v显示创建过程中的详细信息
示例:

mkdir hello    #创建一个叫hello的目录

mkdir -p ./hello1/hello2    #递归地创建多级目录

mkdir -v hello4    #显示创建过程中的详细信息

(6).rm命令

原意:remove

功能:删除目录中的文件或目录。

格式:rm [选项] 文件名/目录名

常用选项:
选项说明-f强制删除文件或目录,无需确认-r递归删除目录及其内容。用于删除非空目录。-i交互式删除,每次删除前都需要确认。
示例:

rm -f hello    #强制删除hello,无需确认

这里hello是目录不能直接删除,所以要用递归删除

rm -r hello    #递归删除目录及其内容。用于删除非空目录

删除成功,如果不想要确认信息直接输入rm -rf 文件名即可

(7).cp命令

原意:copy

功能:将一个或多个源文件复制到指定目录

格式:cp [选项] 源文件 目标文件

常用选项:
选项说明-r递归复制目录及其内容。当需要复制目录时,必须使用此选项-i交互式复制。如果目标文件已经存在,会询问是否覆盖。-v显示详细的复制信息,包括每个文件的复制过程。-p复制文件时保留源文件的原始属性,如权限、时间戳等。-f强制复制,覆盖已存在的目标文件而不询问确认。
示例:

cp -r hello1 usr    #将hello1目录以及目录下所有文件复制到usr下

(8).mv命令

原意:move

功能:移动文件或目录,如果位置相等,该命令还可以重命名

格式:mv [选项] 源文件/目录 目标文件/目录

常用选项:
选项说明-i交互式移动,如果目标文件已经存在,则会询问是否覆盖。-u仅在源文件比目标文件更新或者目标文件不存在时才执行移动操作-v显示详细的移动信息。-n如果目标文件已经存在,则不覆盖,保留目标文件。-f强制移动,覆盖已存在的目标文件而不询问确认。
示例:

mv hello1 ../    #将hello1目录移动到上一级目录

mv java.class javaEE.class    #将java.class改名成javaEE.class

(9).rmdir命令

原意:remove directory

功能:作用是移除目录,前提是该目录是空的,不包含任何文件或子目录。

格式:rmdir [选项] 目录

常用选项:
选项说明-p连同父目录一起删除,如果父目录为空,则一并删除。-v显示详细的删除信息。
示例:

rmdir -p hello2/hello5    #删除hello2目录下的hello5,如果Hello2删除之后为空则一并删除    

2.1.2文件查看命令

cat、more、head、tail

(1).cat命令

原意:concatenate and display files

功能:打印文件内容到输出设备

格式:cat 文件名

示例:

cat javaEE.class    #将javaEE.class中的内容输出到页面上

(2).more命令

功能:分页显示文件内容

格式:more 文件名

快捷键:
快捷键说明f/Space(空格)显示下一页Enter显示下一行q/Q退出

示例:

more javaEE.class    #分页显示javaEE.class的内容

(3).head命令

功能:查看文件的前n行

格式:head -n 文件名

示例:

head -1 javaEE.class    #显示javaEE.class的前1行
(4).tail命令

功能:查看文件的后n行

格式:tail -n文件名

示例:

tail -1 javaEE.class    #查看javaEE.class的后一行

2.1.3文件修改命令

(1).vim命令

Vim 有三种主要模式:命令模式、插入模式和末行模式。

  • 命令模式:打开 Vim 后默认进入的模式,可以使用各种命令进行文本操作、跳转、搜索等。
  • 插入模式:在命令模式下按下 i、a、o 或其他插入命令,可进入插入模式以输入和编辑文本。
  • 末行模式:在命令模式下按下冒号(:),进入末行模式,可以执行保存、退出、搜索等高级命令。

命令和操作:

  • 移动光标:在命令模式下,使用 h、j、k、l 或箭头键可以左移、下移、上移、右移光标。
  • 插入和编辑文本:切换到插入模式后,可以直接键入文本进行编辑。
  • 保存和退出:在命令模式下,输入 :w 保存文件,:q 退出 Vim。要同时保存并退出,可以使用 :wq 命令。
  • 搜索和替换:在命令模式下,使用 / 进行向下搜索,? 进行向上搜索。使用 :s 进行替换操作。

快捷键和功能:

  • 撤销和重做:在命令模式下,使用 u 进行撤销操作,Ctrl+r 进行重做操作。
  • 复制、剪切和粘贴:在命令模式下,可以使用 yy 复制当前行,dd 剪切当前行,p 粘贴剪切板内容。
  • 多窗口和分割窗口:在命令模式下,使用 :split 和 :vsplit 可以分割当前窗口,并在新窗口中打开其他文

示例:

vim javaEE.class    #打开javaEE.class文件,首先进入的是命令模式

输入i 进入插入模式,进入插入模式之后下方会变成insert或者插入字样,此时通过上下左右移动光标进行修改。

插入完成按下ESC键退回命令模式,然后按 : 冒号键进入末行模式,输入wq,按下回车进行保存并退出

注:这里三种模式切换必须经过命令模式,比如插入模式进入末行模式,必须先进入命令模式

使用more查看保存之后的文件

2.1.4权限管理命令

chmod、chown、chgrp

在 Linux 中,文件和目录的权限是通过三种角色(所有者、群组和其他用户)以及三种权限(读取、写入和执行)来管理的。具体权限如下:

  • 文件权限:读取权限(r)、写入权限(w)、执行权限(x)。
  • 目录权限:读取权限(r),查看目录内容的权利;写入权限(w),在目录中创建、删除文件和目录的权利;执行权限(x),进入目录的权利。
  • 特殊权限: - SUID(Set-User-ID):对于可执行程序,设置 SUID 可以使其在执行过程中获得所有者的权限。- SGID(Set-Group-ID):对于可执行程序,设置 SGID 可以使其在执行过程中使用群组的权限。- Sticky Bit:对于目录,设置 Sticky Bit 可以限制其他用户删除非自己创建的文件和目录。一般在 /tmp 目录中使用。

这里前缀-rw------表示只有读写权限

-rw-r--r-- 分为三组 :第一个 - 表示该文件为文档 第二个

                            第一组rw:可读可写不可执行            表示拥有者的权限

                            第二组r:可读不可写不可执行           表示所在组的权限

                            第三组r:可读不可写不可执行            其他人的权限

注:这里如果是目录则必须有可执行权限 x 否则目录将无法进入

(1).chmod命令

功能:用于修改文件或目录的权限。它可以添加、删除或修改文件的读取、写入和执行权限,以及设置特殊权限(如 SUID、SGID、Sticky Bit)。

格式:chmod [选项] 权限模式 文件

修改权限范围类型:
选项说明a表示all,所有人u表示userg表示groupo表示other
示例:

chmod +rwx javaEE.class    #将文件设置为可读、可写、可执行
chmod u+rwx javaEE.class    #将所有用户user的该文件权限设置为可读、可写、可执行
(2).chown命令

功能:用于修改文件或目录的所有者

格式:chown [选项] 新所有者 文件

示例:

chown pdh javaEE.class    #更改文件的所有者为pdh
(3).chgrp命令

功能:用于修改文件或目录的群组

格式:chgrp [选项] 新群组 文件

示例:

sudo groupadd group    #创建一个组,名叫group
chgrp group javaEE.class      #更改当前文件的组为group

2.1.5文件搜索命令

which、find、locate、grep

(1).which命令

功能:用于查找命令的路径。它会显示指定命令的全路径,以便确定特定命令在系统中的位置。

格式:which [选项] 命令

示例:

which cd    #查找cd在文件中的路径
(2).find命令

功能:用于查找文件和目录。它可以基于不同的条件进行搜索,如文件名、大小、权限等等。

格式:find [路径] [选项] [操作]

常用选项:
选项说明-name根据文件名进行搜索匹配。-type根据文件类型进行搜索匹配,如

-type f

表示搜索普通文件。-size根据文件大小进行搜索匹配,可以使用

+

-

表示大于或小于指定大小-iname根据文件名进行不区分大小写的搜索匹配-maxdepth限制搜索的最大深度。-mindepth限制搜索的最小深度。-user根据文件所有者进行搜索匹配。-group根据文件所属群组进行搜索匹配。-mtime根据文件修改时间进行搜索匹配,单位为天数。
常见操作:
操作说明-print打印搜索到的文件路径。-exec对搜索到的文件执行指定的命令。-delete搜索到的文件删除。-ls类似于 ls 命令的输出格式列出搜索到的文件。
示例:

find . -name javaEE.class    #在当前目录下查找javaEE.class文件
(3).locate命令

功能:用于通过数据库快速定位文件和目录。它通过查找文件名的数据库进行搜索,效率较高。

格式:locate [选项] 文件名

示例:

locate hello2    #搜索文件

这里执行没有结果的可以输入 updatedb 进行更新数据库

(4).grep命令

功能:用于在文件中搜索特定的模式或字符串。它可以对文件内容进行逐行匹配和搜索。

格式:grep [选项] 模式 文件

这里模式有很多

  • .:匹配任意一个字符。
  • *:匹配前面的字符零次或多次。
  • +:匹配前面的字符一次或多次。
  • ?:匹配前面的字符零次或一次。
  • []:匹配集合中的任意一个字符。
  • ():创建捕获组。
  • |:逻辑或操作符。
  • ^:匹配行的开头。
  • $:匹配行的结尾。
  • \:转义字符。

grep一般配合管道符使用,后续会详细说一下管道符

示例:

grep "hello" javaEE.class    #搜索javaEE.class 中的hello字段

2.2网络管理与通信命令

ifconfig、netstat、ping、write、wall

(1).ifconfig命令

功能:用于显示和配置网络接口的信息。它可以用来查看当前系统上的网络接口信息,如IP地址、子网掩码、MAC地址等。

格式:ifconfig [选项] [接口名]

示例:

ifconfig         #显示所有网络接口信息
ifconfig eth3    #显示指定网络接口信息,这里是eth3
(2).netstat命令

功能:用于显示网络连接、路由表、网络接口统计等网络相关信息

格式:netstat [选项]

常用选项:
选项说明-a显示所有端口-at列出所有tcp端口-au列出所有udp端口
示例:

netstat -a    #显示所有网络连接信息
netstat -l    #显示监听的 TCP 连接信息
(3).ping命令

功能:用于向指定的目标地址发送 ICMP Echo 请求,并接收其回应。它可以用来测试网络连接的连通性,检测网络的延迟和丢包情况。

格式:ping [选项] 目标地址

示例:

ping 192.168.0.1          #向目标地址发送 ICMP 请求包
ping -c 10 192.168.0.1    #持续发送 ICMP 请求包并显示结果
(4).write命令

功能:命令允许你向另一个登录的用户发送终端消息。

格式:write 用户名 [终端]

示例:

write user1         #向用户发送终端消息:
write user1 tty1    #向指定终端发送消息
(5).wall命令

功能:用于向所有登录用户发送消息。它会将消息广播到所有终端。

格式:wall [文本文件]

示例:

wall "大家好!我宣布个事情"    #向所有用户发送广播消息
wall message.txt             #从文本文件读取消息并发送广播

这里中文会乱码,需要自行设置一下系统的编码

2.3压缩解压命令

zip/unzip、gzip/gunzip、bzip2/bunzip2、tar

用哪个命令压缩就要用哪个解压

(1)zip/unzip命令

功能:zip命令用于将文件和目录压缩为ZIP格式,uzip命令用于解压ZIP文件

格式:

  • 压缩文件:zip [选项] 压缩文件名 源文件/目录
  • 解压文件:unzip [选项] 压缩文件名

示例:

zip filez.zip file.txt    #压缩文件
unzip filez.zip           #解压文件
(2)gzip/gunzip命令

功能:gzip 命令用于将文件压缩为GZIP格式,gunzip命令用于解压GZIP文件。

格式:

  • 压缩文件:gzip [选项] 文件名
  • 解压文件:gunzip [选项] 压缩文件名

示例:

gzip file.txt         #缩文件
gunzip file.txt.gz    #解压文件
(3)bzip2/bunzip2命令

功能:bzip2 命令用于将文件压缩为BZIP2格式,bunzip2命令用于解压BZIP2文件

格式:

  • 压缩文件:bzip2 [选项] 文件名
  • 解压文件:bunzip2 [选项] 压缩文件名

示例:

bzip2 file.txt          #压缩文件
bunzip2 file.txt.bz2    #解压文件
(4)tar命令(最常用)

功能:用于打包和压缩文件,常与其他压缩命令一起使用,如结和gzip 生成 .tar.gz 文件。

格式:

  • 打包文件:tar [选项] 目标文件名 源文件/目录
  • 解包文件:tar [选项] 目标文件名

常用选项:

  • -c:创建归档文件(create)
  • -x:解压缩归档文件(extract)
  • -r:向归档文件中添加文件(append)
  • -u:更新归档文件中的文件(update)
  • -t:列出归档文件的内容(list)
  • -v:显示详细信息(verbose)
  • -f:指定归档文件的名称(file)
  • -z:使用 gzip 压缩或解压缩归档文件
  • -j:使用 bzip2 压缩或解压缩归档文件
  • -C:指定解压缩文件的目标目录(change directory

示例:

tar -cvf archive.tar file.txt    #打包文件
tar -xvf archive.tar             #解包文件

2.4帮助命令

main、info、wahtis、whoami

(1)main命令

作用:用于显示命令的帮助文档

格式:man [命令名称]

示例:

man ls     #显示 ls 命令的帮助文档。
输入q退出(2)info命令

作用:用于查看命令的详细信息和文档

格式:info [命令名称]

示例:

info ls     #查看 ls 命令的详细信息和文档。
(3)wahtis命令

作用:用于显示命令的简要描述。

格式:whatis [命令名称]

示例:

whatis ls     #显示 ls 命令的简要描述

(4)whoami命令

作用:用于显示当前登录用户的用户名。

格式:whoami

示例:

whoami     #显示当前登录用户的用户名

以上就是linux常用的一些命令


如果这篇文章对你有帮助的话,别忘点赞收藏关注~

标签: linux 运维 服务器

本文转载自: https://blog.csdn.net/weixin_65950986/article/details/136896115
版权归原作者 Pdh胖大海 所有, 如有侵权,请联系我们删除。

“Linux的基本命令”的评论:

还没有评论