你们,周日早上好,昨天来分享linux上面的编程(一种编程),哦不,正确的说,你也许应当早就了解过编程,例如说很火的python。嗯,不扯别了linux shell编程与编辑器使用详解,趁着假期多给你们更文,之前有过半个月没更文,真对不起诸位了,还有先前的文章排版也是一塌糊涂,不过幸好的是linux服务器代维,现今比较稍为很多了,也离不开诸位网友给的意见。下边就开始详尽介绍shell了:
一、shell介绍:
1、shell它中文翻译的话就是“壳”的意思,并且在我们linux环境下,它确实是发挥了很大的作用,由于在linux环境下,shell可以理解为软件提供给用户操作的行界面,可以说它是人机交互的一种形式(也可以说是计算机硬件与用户的翻译官),我们玩嵌入式的,装ubuntu比较多(其它linux发行版本也是一样的操作),你打开要输入来实现自己的需求,第一时间肯定就是打开“终端”,这个终端就是shell了啦!它是作为用户与Linux系统内部的通讯媒介,不仅还能支持各类变量与参数外,还提供了例如循环、分支等中级编程语言才有的控制结构特点,这个前面会渐渐分享。
2、但是我们在这个终端下输入来创建单个工程的话,是没用啥问题,而且一旦工程数目多了,再去一个一个输入的话,就拉低效率了,例如说:例如我们要在linux下创建一个文件a.c,可以toucha.c而且假如我如今是用在linux下创建100个文件,分别为a1.ca2.c.....a100.c倘若这时侯还是手工去命令行下执行命令创建也可以,而且很累。最好的做法就是把创建过程写成一个shell脚本程序,之后去执行这个shell脚本程序,执行这个程序的疗效和手工在命令行输入这些命令疗效一样的。从这儿我们可以总结下来,shell有两种工作方法:
二、shell脚本的运行机制:解释运行
1、我们做嵌入式的,对C语言和C++比较熟悉,而这两种语言编撰过程是这样的:编撰出源代码(源代码是不能直接运行的)之后编译链接产生可执行二补码程序,之后才会运行;而脚本程序不同,脚本程序编撰好后源代码即可直接运行(没有编译链接过程)
2、shell程序是解释运行的,所谓解释运行就是说当我们执行一个shell程序时,shell解析器会逐行的解释shell程序代码,之后一行一行的去运行。(次序结构)
3、CPU实际只认识二补码代码,根本不认识源代码。脚本程序源代码虽然也不是二补码代码,CPU也不认识linux shell编程与编辑器使用详解,也不能直接执行。只不过脚本程序的编译链接过程不是以脚本程序源代码为单位进行的,而是在脚本运行过程中逐行的解释执行时才去完成脚本程序源代码转成二补码的过程(不一定是编译链接,由于这行脚本程序可能早就编译联接好了linux系统应用,这儿我们只是调用它)的。
三、实战一个简单shell脚本程序:
1、编辑器、编译器、运行方式(脚本的3种执行方式):
2、let'sgo体验第一个shell程序:
在创建shell脚本程序的时侯,注意一下它文件后缀是以".sh"结尾的哈,不要弄错了哈。
我们如今来创建一个test.sh的一个脚本程序,具体内容如下:
vim test.sh
#!/bin/bashecho "hello world"
解释一下内容的意思:
第一行的脚本申明(#!)拿来告诉系统使用哪种Shell协程来执行该脚本(这是我书写shell脚本的格式);第二行是我执行的命令,这个echo的作用:echo命令用于在终端输出字符串或变量提取后的值,格式为“echo[字符串|$变量]”。这儿我执行这个脚本文件的话,都会输出"helloworld"了。
root@txp-virtual-machine:/home/txp# ./test.sh
bash: ./test.sh: Permission denied
root@txp-virtual-machine:/home/txp# chmod 777 test.sh
root@txp-virtual-machine:/home/txp# ./test.sh
hello world
root@txp-virtual-machine:/home/txp# source test.sh
hello world
root@txp-virtual-machine:/home/txp# bash test.sh
hello world
这儿可能执行的时侯,没有权限,可以使用chmod这个命令来更改权限问题。
四、总结:
明天的分享只让你们简单的认识一下linux-shell编程。这儿有linux命令不熟的男子伴,可以去学习一下刘遄老师的linux就该如此学这本书,特别适宜入门,浅显易通,网站地址:
。
好了,明天的分享就到这儿了,有错误可以强调来哦,你们互相学习,取长补短。我是“爱分享、爱学习、爱技术、爱生活”的txp,欢迎来交流,关注公众号的男子伴,因为没有留言功能,为了更好交流,可以加我陌陌,回复技术,进交流群,一起学习,一起进步。
本文原创地址://q13zd.cn/llmdsbcyzjbb.html编辑:刘遄,审核员:暂无