(三)Linux基础命令

54 阅读7分钟

Linux的目录结构

目录结构

Linux的目录结构是一个树型结构

Windows系统可以拥有多个盘符

Linux没有盘符的概念,只有一个根目录/,所有文件都在它下面

image.png

Linux路径的描述方式

  • 在Linux系统中,路径之间的层级关系,使用:/来表示
  • Windows系统中,路径之间的层级关系,使用来表示

Linux命令入门

什么是命令、命令行

  • 命令行:即Linux终端(terminal),是一种命令提示符。以纯“字符”的形式操作系统,可以使用各种字符化命令对系统发出操作指令
  • 命令:即Linux程序。一个命令就是一个Linux的程序。命令没有图形化页面,可以在命令行(终端中)提供字符化的反馈

Linux命令基础格式

无论什么命令,用于什么用途,在Linux中,命令有其通用的格式:

 command [-options] [parameter]
  • command:命令本身
  • -options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
  • parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等

ls命令入门

 ls [-a -l -h] [Linux路径]
  • -a -l -h是可选选项
  • Linux路径是此命令可选的参数

当不适用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容

Linux系统的命令行终端,在启动的时候,默认会加载:

  • 当前登录用户的HOME目录作为当前工作目录,所以ls命令列出的是HOME目录的内容
  • HOME目录:每个Linux操作用户在Linux系统的个人账户目录,路径在:/home/用户名

ls命令参数和选项

ls命令的参数

 ls [-a -l -h] [Linux路径]
  • -a选项,表示:all的意思,即列出全部文件(包含隐藏的文件/文件夹)
  • -l选项,表示:以列表(竖向排列)的形式展示内容,并展示更多信息
  • -h选项,需要和-l选项搭配使用,以更加人性化的方式显示文件的大小单位

ls命令的组合使用

  •  ls -l -a
    
  •  ls -la
    
  •  ls -al
    

目录切换相关命令

cd命令

cd切换工作目录

当Linux终端(命令行)打开的时候,会默认以用户的HOME目录作为当前的工作目录

我们可以通过cd命令,更改当前所在的工作目录

cd命令来自英文:change directory

语法:cd [Linux路径]

  • cd命令无需选项,只有参数,表示切换到哪个目录下
  • cd命令直接执行,不写参数,表示回到HOME目录

pwd命令

pwd查看当前工作目录

通过ls验证当前的工作目录,其实不恰当

通过pwd命令,查看当前所在的工作目录

pwd命令来自:print work directory

相对路径、绝对路径和特殊路径

image.png

绝对路径:以根目录为起点,描述路径的一种写法,路径描述以/开头

相对路径:以当前目录为起点,描述路径的一种写法,路径描述无需以/开头

特殊路径符

  • . 表示当前目录,比如cd ./Desktop 表示切换到当前目录下的Desktop目录内,和cd Dsektop效果一致
  • .. 表示上一级
  • ~ 表示HOME目录

mkdir命令

通过mkdir命令可以创建新的目录(文件夹)

mkdir来自英文:make directory

语法:

 mkdir [-p] Linux路径
  • 参数必填,表示Linux路径,即要创建的文件夹路径,相对路径或绝对路径均可
  • -p选项可选,表示自动创建不存在的父目录,适用于创建连续多层级目录

创建文件命令

touch创建文件

可以通过touch命令创建文件

语法:

 touch Linux路径
  • touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可使用

cat命令 查看文件内容

语法:

 cat Linux路径
  • cat同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径都可以使用

more命令 查看文件内容(可翻页)

more命令同样可以查看文件内容,同cat不同的是:

  • cat是直接将内容全部显示出来
  • more支持翻页,如果文件内容过多,可以一页页的展示

语法:

 more Linux路径
  • 同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用

Linux系统内置有一个文件,路径为:/etc/services,可以使用more命令查看

more/etc/services

  • 在查看的过程中,通过空格翻页
  • 通过q退出查看

cp 复制文件/文件夹

语法:

 cp [-r] 参数1 参数2
  • -r选项,可选,用于复制文件夹使用,表示递归
  • 参数1,Linux路径,表示被复制的文件或文件夹
  • 参数2,Linux路径,表示要复制去的地方

mv

mv命令可以用于移动文件/文件夹

语法:

 mv 参数1 参数2
  • 参数1,Linux路径,表示被移动的文件或文件夹
  • 参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在

image.png

rm命令

rm命令可用于删除文件、文件夹

语法:

 rm [-r -f] 参数1 参数2 ...参数n
  • 同cp命令一样,-r选项用于删除文件夹

  • -f表示force,强制删除(不会弹出提示确认信息)

    • 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
    • 所以一般普通用户用不到-f选项
  • 参数1、参数2、.....、参数N表示要删除的文件或文件夹路径,按照空格隔开

通配符

rm命令支持通配符*,用来做模糊匹配

  • 符号*表示通配符,即匹配任意内容(包含空)

    • test*,表示匹配任何以test开头的内容
    • *test,表示匹配任何以test结尾的内容
    • test,表示任何包含test的内容

查找命令

which 查找命令的程序文件

语法:

 which 要查找的命令

image.png

find 查找指定文件

按文件名查找文件

搜索指定的文件

同样,Linux系统中,我们可以通过find命令去搜索指定的文件

语法:

 find 起始路径 -name “被查找的文件名”

image.png

按文件大小查找文件

语法:

 find 起始路径 -size +|-n[kMG]
  • +、-表示大于和小于
  • n表示大小数字
  • kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB

image.png

过滤文件、统计数量

grep

从文件中通过关键字过滤文件行

语法:

 grep [-n] 关键字 文件路径
  • 选项-n,可选,表示结果中显示匹配的行的行号
  • 参数,关键字,必填,表示过滤的关键字,带有空格或其他符号,建议使用“”将关键字包围起来
  • 参数,文件路径,必填,表示要过滤内容的文件路径,可以作为内容输入端口

wc

文件内容的统计,统计行数、单词数量

语法:

 wc [-c -m -l -w] 文件路径
  • -c,统计bytes数量
  • -m,统计字符数量
  • -l,统计行数
  • -w,统计单词数量
  • 文件路径,被统计的文件,可作为内容输入

|管道符

管道符的含义:将管道符左边命令的结果,作为右边命令的输入

echo、反引号、tail、重定向

echo

使用echo命令在命令行输出指定内容

语法:

 echo 输出内容
  • 无需选项,只有一个参数,表示要输出的内容,复杂内容可以用“”包围

image.png

反引号`

被反引号包围的内容,会被作为命令执行,而不是字符

重定向符

  • ,将左侧命令的结果,覆盖写入到符号右侧指定的文件中

  • ,将左侧命令的结果,追加写入到符号右侧指定文件中

tail 查看文件尾部内容,跟踪文件更改

语法:

 tail [-f -num] Linux路径
  • 参数,Linux路径,表示被跟踪的文件路径
  • 选项,-f,表示持续跟踪
  • 选项,-num,表示,查看尾部多少行,不填默认10行