【编程基础】Linux脚本新手入门篇

shell脚本在我们日常开发中比不可少,开源代码编译移植更是经常使用,用它来记录和管理我们编译。或许有人觉得开源代码,都为我们实现了,如configure MakeFile等。我们还有必要去自己在写吗?

答案是肯定的,我们用少量的脚本来完成重复的工作,提高效率。比如

configure有一堆参数需要我们设置,且有x86版本和arm版本编译它们的配置参数各不相同,一般情况下我会新建两个脚本来解决,建立一个build-x86.sh 和build-arm.sh 来配置编译参数。

我们就写个说说如何写个简单脚本:

用vi 编辑一个hello.sh

#!/bin/bash # This is a very simple example echo Hello World

这样最简单的一个 BASH 程序就编写完了。这里有几个问题需要说明一下:

一,第一行的 #! 是说明 hello 这个文件的类型的,后面的 "/bin/bash" 就表明该文件是一个 BASH 程序,需要由 /bin 目录下的 bash 程序来解释执行。BASH 这个程序一般是存放在 /bin 目录下,如果你的 Linux 系统比较特别,bash 也有可能被存放在 /sbin 、/usr/local/bin 、/usr/bin 、/usr/sbin 或 /usr/local/sbin 这样的目录下。

二,第二行是注释这里写一些有用的信息

三,echo 语句的功能是把 echo 后面的字符串输出到标准输出中去。由于 echo 后跟的是 "Hello World" 这个字符串,因此 "Hello World"这个字串就被显示在控制台终端的屏幕上了。

四,如何执行该程序

一种是显式制定 BASH 去执行:

$ bash hello.sh 或 $ sh hello.sh

或者可以先将 hello.sh 文件改为可以执行的文件,然后直接运行它,此时由于 hello.sh 文件第一行的 "#! /bin/bash" 的作用,系统会自动用/bin/bash 程序去解释执行 hello 文件的。

$ sudo chmod u+x hello.sh $ ./hello.sh

这样一个简单的脚本就出来了,不过这样的脚本没有什么实用性。

其实脚本也是一种语言,可以用他执行任务,开启系统服务监测程序的运行状态。

当你真正了解它后,它远不止上面这些功能用途。脚本是编程的延伸,我们将一步步的深入学习shell脚本。

原文发布于微信公众号 - 程序员互动联盟(coder_online)

原文发表时间:2015-05-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏黄Java的地盘

chrome扩展应用开发快速科普

本文通过对chrome插件的各个部分进行快速的介绍,从而让大家了解插件各个部分的关系,并且知道如何将其进行组装成一个完整的chrome插件。

401
来自专栏西枫里博客

宝塔面板下升级到PHP7.2,无法查看phpinfo的解决办法。

自从建站后没多久,就把PHP的版本升级到7了,后续有升级到7.2了,一直也没关注过phpinfo的信息,今天小伙伴在群里说我草,phpinfo都看不到,我大概想...

562
来自专栏技术小讲堂

使用GUI工具高效构建你自己的Nuget包丰富包的基础信息添加要包含的文件The end

写这篇文章的原因是我在学习构建nuget包的时候,发现了一个官方推荐的GUI工具,而官方的工具介绍文章已经过时,一些地方和现在最新版本的工具有些差异,所以特意利...

2596
来自专栏前端侠2.0

oracle数据链接无效以及chrome浏览器input最大长度的问题

1、本地数据库是oracle10.0.2.1  .年前总部数据库升级为oracle11,原来的 数据链接变得不可用了。提示:

592
来自专栏谢易成的专栏

动态构建的多页面vue-cli模版

vue官方提供了几个vue cli的模版,但都单页面模版,然而在真实的业务场景下还是有多页面模版的需求,百度和google上都能搜索到不少单页面模版改多页面模版...

1314
来自专栏walterlv - 吕毅的博客

为 Visual Studio 使用通配符批量添加项目文件

发布于 2017-09-26 13:12 更新于 2018-01...

291
来自专栏宏伦工作室

微信红包自动监测

2163
来自专栏无原型不设计

Mockplus实例之一看就会de五个交互功能

实例来源:豆瓣新加日记(https://www.douban.com/note/create) 先看看豆瓣新加日记的网页: ? 再看看已经制作好的原型预览...

2996
来自专栏HTML5学堂

网络字体@font-face 如何处理网页中的特殊字体

HTML5学堂:随着网页的发展,网页中出现了越来越多的字体种类,网页自带的微软雅黑、宋体、黑体已经越来越难以满足设计的需要,那么,如何在网站中使用比较特殊的字体...

3305
来自专栏CSDN技术头条

Python 开发者的微信小程序开发实践

导读 在知乎上,有人提问“如何使用 Python 开发微信小程序”。 ? 其实微信小程序作为一个前端的机制,Python 并不能插上边。只不过可以作为后端接口...

5157

扫描关注云+社区