Linux系统入门-1

2020-08-17 11:35:27 浏览数 (1)

Linux构成

按顺序来说,先来说说什么玩意是Linux

Linux由内核、外壳程序、实用程序、应用程序构成,而Shell就是作为Linux操作系统的外壳,为用户使用操作系统提供结构

就好比,A为内核,B为Shell,C为用户,C通过B来调用A执行一些操作,这也是为了保证内核安全,所以会给B一个接口,其他乱七八糟的知道了也没什么意思,常用的就是 BASH

Shell的语法

貌似这么称呼好像也没什么不对的,就是Shell执行命令的一种语法而已

<命令> <参数> <内容>

不知道是不是这么说(误)

参数分 ---两个,举个例子

-a中的a是一个缩写,也就是那个程序规定了的缩写

--all则代表全称

在使用的时候,你可以-a,也可以--all,Linux中就是用这种方法来区分的

在举个例子,如果你想看某个命令的帮助信息时,你可以通过<命令> -h的方式来查看(当然不是全部的都可以)

同时参数也可以连在一起的, -asdfg这个就代表5个参数,分别为 -a-s-d-f-g

而--就不能这么解读了,使用--多参数的话,两者之间得有一个空格

比如 --help--all 这里的--help就不是 -h-e-l-p这样看了

Shell的使用

  • 查阅历史记录

命令: history | history <数字>

在Linux系统中,用户所输入的命令在执行后,这个命令都会被记录在命令记录表中,当用户需要再次执行,或者想查阅自己输入什么命令的时候,可以直接调用、查看,默认情况下Shell使用的记录表文件为用户主目录下的 .bash_history

Bash(Shell)默认最多保存1000个Shell命令历史纪录

通过 history4就可以看到历史记录中的最后4条记录是啥

  • 输入/输出重定向

命令: 没有,这是一种写法

下面为书上解释

执行一个Shell命令时可能存在这样的问题,用户输入的数据只能用一次,当下一次还想使用这些数据时,还得重新输入,同时输出到屏幕上的信息只能看不能改,无法对输入做更多处理。为了解决上述问题,Linux系统为输入、输出的传送引入了输入重定向

换个说法就是用户可能想将屏幕上出现的玩意保存到文件中,所以LInux给了重定向这个玩意

输入重定向没啥好说的

输出重定向就是命令执行结果不在屏幕上显示,而是直接保存到你指定的文件中,Shell通过符号">"来实现输出重定向

ls执行出来的内容为 elapse.txt,然后下面执行了输出重定向,将内容直接保存到elapse.txt中,而屏幕中没有显示,我们cat一下发现原本是空的内容现在多出了个elapse.txt

附加输出重定向的功能和输出重定向基本相同,只不过附加输出他会将内容写入原本文件内容的后面而不覆盖。Shell通过符号">>"来实现

  • 命令补全功能

命令: 没有,这是按键 <Tab>

在Shell中, 可以只输入命令的前几个字母,然后按键,系统将自动补全,若不止一个,则显示出所有和输出字母相匹配的命令,比如

  • 管道机制

写法: <命令1> | <命令2>

Linux提供管道机制可将多个命令集成到一起,形成一个管道流,使一个命令的结果作为另一条命令输入,用来执行复杂的任务

例子:

他首先会去cat /etc/passwd的内容,其次,将输出的信息,交给grep 来处理,而grep "root"的意思是匹配root这个字符串,所以到最后只会输出这两条包含root字符串的内容

0 人点赞