Linux shell复习
来源:互联网 发布:淘宝拍摄摄影软件 编辑:程序博客网 时间:2024/06/06 01:45
shell是什么?
shell是用户应用程序(application)与内核进行交互的外壳.也可以作为我们与内核交互的环境
为什么叫外壳?这就好比面向对象里面的private修饰的变量以及函数,不想让其它人触碰到的数据以及程序段,
为了让各位能够更加清楚shell是干什么的?特此举例如下:
当你在终端里面输入ls命令的时候,会显示你当前所在目录的文件名称,如果你直接塞给内核,“它”无法完成这样的工作,因为内核无法处理ls这样的一个字符串,而且从安全性角度来讲,如果我们直接与内核进行交互,假如我们犯错了呢,输入一个错误的命令呢?很容易造成系统崩溃,所以shell的作用就在与此.
学习shell之前的准备
首先你必须了解一些基本常用的命令,我曾在github上面曾经写过一些常用的命令,链接如下:
点击打开链接https://github.com/qq854674282/test_1
其次,你要决心,对于这种学了但不能一次性换二两馍的东西,如果你真心要学,祝君好运。。。
Let's shelling...
第一个shell程序,当然是hello world
#!/bin/bash ----------->采用何种方式的shell解释器
echo "Hello world" ----------->echo命令
其实很容易就理解了,我们使用bash ,并在其下运行echo命令,
将上面的东西再抽象一点,即每一个shell程序必须在一行写上 #!/bin/*** ***则是指你采用的shell解释器,关于shell解释器,有如下几种:
ksh
bash
sh
csh
...
下面的echo命令即为我们打开了一个bash环境,在其下运行echo "Hello world"命令
shell说白了就是一大堆命令堆积起来的东西,但其后还有一些基本的语法,比如if ...else... 、 for..do..done、case ...esac等等
在其中填充的全是命令
我们可以使用命令来达到我们想要实现的任何东西
<对于shell解释器的补充:>
我们可以在我们的终端上面打一个上面的解释器出来,以sh为例
我们可以尝试再打一个exit出来<解释在后面,请耐心>
这是怎么回事?
我们打开每一次终端,我们的os都会参照/etc/passwd里面的最后一行来打开一个相应的shell环境,以供我们与内核进行交互,/etc/passwd截图如下:
我们可以很清楚的看到,以wangxuan身份登录,OS会打开/bin/bash的交互环境让我们与内核进行交互,
而我们以sshd登录时,则会打开/usr/sbin/nologin的环境.
当我们输入exit则会退出当前的sh环境,不会退出bash环境,
我们可以无限的任意个环境里面调用另一个,但关闭时即按照类似与退栈的方式关闭,
<补充:当我们在一个shell环境里面打开另一个环境,则原来的那个shell环境处于休眠状态>
下一章节将会讲到shell的相关语法,谢谢大家观看,三鞠躬,撒花。。。
<讲的比较乱,所以希望各位见谅>
- LINUX SHELL复习1
- Linux shell复习
- LINUX期末复习---SHELL编程
- linux shell 复习(一)
- Linux-shell基础复习笔记
- Linux复习(三)Shell编程1
- Linux复习(四)Shell编程2
- shell复习
- linux复习笔记之bash shell(1)bash基础
- linux复习笔记之bash shell (2) bash基础
- linux复习笔记 之bash shell (3) 通配符
- linux复习笔记之bash shell (4)管道命令
- linux期末复习知识点小结(三)—— Shell
- shell脚本复习
- bash shell语法复习
- 算法复习--shell排序
- shell编程复习 第一次
- shell编程复习 第二次
- 元素float后,父元素没有高度问题
- hdu 2089 不要62
- 题目标题: 计算两个字符串的最大公共字串的长度,字符不区分大小写
- memcached restart shell
- Tomcat 6证书安装配置
- Linux shell复习
- ARM架构与内核版本
- c编译整理
- 了解TCP
- poj2243 && hdu1372 Knight Moves(BFS)
- Linux笔记--4 -- GDB和makefile
- matlab学习笔记 struct函数
- glCullFace函数
- hadoop环境配置过程中可能遇到问题的解决方案