【linux】02 :Linux基础命令

时间:2024-03-08 16:40:32

1.掌握linux系统的目录结构

5bf51ac586f84f589e26d98d04a8b8c0.png

        linux只有一个*目录,称之为:根目录。

        windows系统有多个*目录,即各个盘符。 

2.linux路径的描述方式

999150aee63541739a4a9351c19803b4.png

        /在Linux中的表示:出现在开头表示根目录,出现在后面表示层级关系。 

 3.什么是命令、命令行

        学习LINUX,本质是学习在命令行下熟练使用Linux的各类命令。

        命令行:即linux终端,是一种命令提示符页面。以纯”字符“的形式操作系统,可以使用各种字符化命令行对系统发出操作命令。

        命令:即linux程序。一个命令就是一个linux程序。命令没有图形化的界面,可以在命令行(终端中)提供字符画的反馈。

4.linux命令基础格式

        格式:command [-options]  [paramete]r

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

5.ls命令

        语法细节:ls [-a -l -h] [Linux路径]

        -a.-l,-h是可选的选项,linux路径是此命令可选的参数

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

de3a8abf2b3240b7890fc4440efa0be2.png

        由于linux系统的命令行终端在启动的时候,默认加载当前登入用户的home目录作为当前工作目录,所以ls命令列出的是home目录的内容。

        home目录:每个Linux用户在linux系统的个人账户目录,路径在:/home/用户名。比如我d的home目录就是:/home/cai

         -a 表示all,即列出全部文件(包含隐藏的文件和文件夹)

        可以看出,ls -a比ls列出的内容更多,图中以为.开头的,表示的是Linux的隐藏文件/文件夹(只要以.开头,就能自动隐藏),而只有通过-a才能看见这些隐藏起来的文件夹/文件 。

        -l 表示以列表(竖向排列)的形式展示内容,并展示更多信息。第一个字母是d表示是文件夹,第一个位置是-表示这是一个文件。

        语法中的选项是可以组合使用的,比如学习-a, -l可以组合使用,ls -l -a, ls -la, ls -al,这三者是等价的,表示同时应用-a, -l的功能。

        除了选项本身可以组合后,选项和参数也可以一起使用。

        -h表示以易于阅读的形式,列出文件大小如k,m,g。而且-h选项必须搭配-l一起使用,以更人性化的方式显示文件的大小单位。

        Ls命令指定要查看的文件夹(目录)的内容,如果不给定参数,就查看当前工作目录的内容。

6  cd切换工作目录

        当linux中端打开的时候,会默认以用户的home目录作为当前的工作目录,我们可以通过cd命令,更改当前所在的工作目录。

        语法:cd    [linux路径]

        cd命令无需选项,只有参数,表示要切换到哪个目录下。

        cd命令直接执行,不写参数,表示回到用户的home目录。

7    pwd查看当前工作目录

        通过ls来验证当前的工作目录,其实是不恰当的。我们可以通过pwd命令,来查看当前所在工作目录。

        语法:pwd

        pwd命令无选项无参数,直接输入pwd即可。

8  相对路径和绝对路径

        切换到指定的desktop的两种写法:

        cd   /home/cai/Desktop(绝对路径写法)

        cd Desktop(相对路径写法)

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

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

        如果/home/cai/Desktop想要回退到上一级/home/cai,可以直接cd 即可回到home目录,也可以通过特殊路径符

        特殊路径符:

. 表示当前目录,比如cd ./Desktop表示切换到当前目录下的Desktop目录内。

..表示上一级目录,比如cd ..即可切换到上一目录,cd  ../..切换到上二级的目录

~表示home目录,比如cd ~即可切换到home目录;cd ~/Desktop,表示切换到home内的Desktop目录

9.通过 mkdir命令创建目录(文件夹)

        语法:mkdir [-p] linux路径

        参数必填,表示linux路径,即要创建文件夹的路径,相对路径或绝对路径即可。

        -p选项选填,表示自动创建不存在的父目录,适用于创建连续多层级的目录。

        如果想要一次性创建多个层级的目录,会报“没有那个文件或目录”的错,此时可以添加上-p,将一整个链条都创建完成。

        注意:创建文件夹需要修改权限,请确保操作均在home目录内,不要在home外操作,涉及到权限问题,home外无法成功,会提示“权限不够”。

练习:创建it/linux/nice(需使用~)

mkdir -p ~/it/linux/nice

10   touch 命令创建文件

        语法:touch linux路径

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

11  cat查看文件内容

        语法:cat linux路径

        cat的参数表示被查看的文件路径,相对、绝对、特殊路径均可使用。

        打开CentOS并登入,双击打开home目录下刚刚创建的test.txt文件,接着简单的写上一句话“it is easy”,然后点击save按钮保存文件。回到命令行使用cat命令查看文件内容。

12 more查看文件内容

        语法:more linux路径

        more的参数表示被查看的文件路径,相对、绝对、特殊路径均可使用。

        与cat不同的是,cat是直接将内容全部显示出来,more接受翻页,如果文件内容过多,可以一页页的展示。

        linux系统内置有一个文件,路径为:/etc/services,可以使用More命令查看。more/etc/services:在查看过程中,通过空格翻页,通过q退出查看。

        使用cat,一股脑就全显示出来了。清屏操作可以是ctrl+l或者右击清除缓存。

        使用more,会发现左下有个0%,这表示当前查看文件内容为0%,我们可以通过使用空格键翻页,通过q退出

13 cp复制文件或者文件夹        

        语法:cp [-r] 参数1 参数2

        -r选项,可选,用于复制文件夹使用,表示递归。

        参数1,linux路径,表示被复制的文件或文件夹。

        参数2,linux路径,表示要复制去的地方。

              

14 mv移动文件或者文件夹

        语法:mv 参数1 参数2

        参数1,linux路径,表示被复制的文件或文件夹。

        参数2,linux路径,表示要移动去的地方,如果目标不存在,则起到改名的效果。

        移动文件夹

15 rm删除文件或者文件夹

        语法 :rm [-r -f] 参数1 参数2 .....参数n

        同cp命令一样,-r选项用于删除文件夹

        -f表示force强制删除(不会弹出提示确认信息)。普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示,所以一般普通用户用不到-f选项。

        参数1、参数2.......参数n表示要删除的文件或文件夹路径,按照空格隔开。如果其中一个参数不存在,即使提示了['没有那么文件或目录'],其他存在的参数也会被正常删除。

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

        符号*表示通配符,即用来匹配任意内容(包含空)。例如test*表示匹配任何以test开头的内容,*test表示匹配任何以test结尾的内容,*test*表示匹配任何包含test的内容。

        为了使用-f,现在我们暂时切换到root用户体验。可以通过su - root,并输入密码123456(和普通用户默认一样,注意输入的时候不显示输入的内容,照常输入完回车就可以)临时切换到root用户进行体验,通过输入exit命令,退回普通用户(临时用root,用完记得退,不要一直用)

        在提示句[rm:remove regular empty file 'test.txt']后输入y表示确定删除,输入n表示取消。

        rm是一个危险的命令,特别是root(超级管理员)的时候,需要谨慎使用,如下命令请不要在root管理员下执行rm -rf/或者 rm -rf/*,效果等同与在windows上执行c盘格式化。 

16 which查找命令的程序文件

        我们在前面学习的linux命令,其实他们的本体就是一个个的二进制可执行程序,和windows系统中的.exe文件,是一个意思。我们可以通过which命令查看所使用的一系列命令的程序文件存放在哪里。

        语法:which 要查找的命令。

        

17 find查找指定文件(文件名、文件大小)

        语法:find 起始路径 -name “被查找文件名”

        为了拥有最大的权限,可以在整个系统完成搜索,我们可以切换到root用户以获得管理员权限。

        find命令也可以使用通配符。

  

        find也可以按文件大小查找文件

        语法:find 其实路径 -size +|-n[KMG]

        +、-表示大于和小于

        n表示大小数字

        KMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB

查找小于10KB的文件:find / -size -10k

查找大于100MB的文件:find / -size +100M

查找大于1GB的文件:find / -size +1G

        (ls可以查看指定文件的大小:ls -lh 文件路径)

使用find命令查找处名称带有centos的文件:find / -name "*centos*"

使用find命令查找出:/user 目录大于100M的文件:find /user -size +100M

18    grep过滤文件内容 

        grep可以通过关键字过滤文件

        语法:grep [-n]  关键字 文件路径

        选项-n,可选,表示在结果中显示普配的行的行号

        参数,关键字,必填,表示过滤的关键字,带有空格或者其他特殊符号,建议使用“ ”将关键字包围起来

        参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口

        现在通过touch命令在home目录下创建cai.txt,并通过图形化界面编辑并保存以下内容:

now ,think a example to test "grep",

the part is created for "grep" 

19  wc统计内容数量

        可以通过wc命令统计文件的行数,单词数量等。

        语法:wc [-c  -m  -l  -w]  文件路径

        选项,-c,统计bytes数量

        选项,-m统计字符数量

        选项,-l统计行数

        选项,-w统计单词数量

        参数,文件路径,被统计的文件,可作为内容输入端口。

        3表示行数,13表示单词数量,71表示当前文件的字节数,cai.txt就是文件名。

        

20  管道符的概念和应用

        管道符|表示将管道符左边命令的结果作为右边命令的输入。适用于输入内容过多的情况。

        cat cai.txt的输出结果(文件内容) 作为 右边grep命令的输入(被过滤文件)

请使用cai.txt进行统计,请使用cat ,grep ,管道符 ,wc命令组合 ,进行统计

统计文件中带有think关键字的有几行:

cat cai.txt | grep think | wc -l

统计文件中带有think关键字的结果中有多少个单词:

cat cai.txt | grep think | wc -w

21  echo输出指定内容

        语法:echo 输出的内容

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

        在终端:hello linux

        带有空格或\ 等特殊符号,建议使用双引号包围,因为不包围的话,空格后很容易被识别为参数2,尽管echo不受影响,但是要养成好习惯。

22  反引号

        如果输入echo pwd,本意是想输出当前的工作路径,但是pwd被作为普通字符输出了,我们可以通过反引号(通常也称之为飘号) 将其包围,被包围的内容会作为命令执行,而非普通字符。

23  重定向的使用

        重定向符:>和>>

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

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

24 tail跟踪文件更改

        使用tail命令,可以查看文件尾部内容,跟踪文件的最新更改

        语法:tail [-f  -num]  linux路径

        参数,Linux路径,表示被跟踪的文件路径

        选项,-f,表示持续跟踪,ctrl+c可以退出持续跟踪模式

        选项,-num,表示查看尾部多少行,不填默认10行。

        

请使用echo并配合反引号,输出内容:我当前的工作目录是:’具体的工作目录路径‘,并结合重定向符,将输出结果覆写入work.txt文件

echo "我当前工作的目录是:’pwd' ">work.txt

请使用echo输出任意内容并追加到work.txt文件中,通过tail命令持续跟踪文件内容更改

echo "内容” >> work.txt

tail -f work.txt

25 使用vi/vim编辑器完成文件编辑工作

        vi/vim是Linux中最经典的文本编译器

        用图形化界面中的文本编辑器,vi是命令行下对文本文件进行编辑的绝佳选择

        vim是vi的加强版本,兼容vi所有指令,不仅能编辑文本,而且还具有shell程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。        

        如需通过vi/vim编辑器编辑文件,可以通过【vi 文件路径 】或者 【vim 文件路径】,如果文件路径表示的文件不存在,那么此命令会用于编辑新文件,如果此文件路劲表示的文件存在,那么此命令会用于编辑已有文件。

        步骤:使用vim hello.txt编辑一个新文件,执行后进入的是命令模式,在命令模式内,按键盘i进入输入模式,在输入模式输入 a and b,输入完成后 ,按esc退出命令模式,在命令模式内,按键盘:,会进入底线命令模式,在底线命令模式输入:eq,表示保存文件并退出vim编辑器,然后输入cat hello.txt查看内容。      

        命令模式快捷键:


【linux】01 :虚拟机,Linux系统,远程连接Linux系统-CSDN博客

【linux】03 :用户和权限-CSDN博客