立即登录

c语言shell脚本 linux系统脚本编写的,Linux中shell脚本的入门编写

11/28 08:09:02

c语言shell脚本 linux系统脚本编写的,Linux中shell脚本的入门编写

在前面的文章中已经给大家介绍了Linux中shell脚本的相关的文章,Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁卡盟,用户的大部分工作都是通过Shell完成的。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。下面将带大家进行shell脚本的编写入门。

下面将带大家编写一个简单的shell脚本

首先我们是去打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,名字简单易见就可以了,如果你用php写shell脚本,那么扩展名就用php好了这个就根据自己的实际情况来去命名使用,文中是新建了一个test.sh的文件。

输入一些代码:

#!/bin/bash

echo"HelloWorld!"

“#!”这个符号表示的是一个约定的标记,它表示的是系统这个脚本需要什么解释器来执行,也就是系统将会是去使用哪一种Shell。echo命令它是用于向窗口输出文本,这一点我们是需要认识清楚的。

Linux中运行Shell脚本有两种方法。

(1)作为可执行程序

将上面的代码保存为test.sh,并cd到相应目录:

chmod+x./test.sh#使脚本具有执行权限

./test.sh#表示执行脚本

我们需要注意的是一定是要写成./test.sh,而不是test.sh这个格式。运行其它二进制的程序也一样,直接写test.sh,linux系统会去PATH里寻找有没有叫test.sh的,而只有/bin,/sbin,/usr/bin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里c语言shell脚本,所以如果是写成test.sh是会找不到命令的,因此是要用./test.sh来去告诉系统说,就在当前目录找。

通过这种方式运行bash脚本,在第一行中一定要写对,好让系统查找到正确的解释器。

这里的"系统",其实就是shell这个应用程序(想象一下WindowsExplorer)既然这个系统就是指shell,那么一个使用/bin/sh作为解释器的脚本是不是可以省去第一行呢?答案是肯定的。

(2)作为解释器参数

使用这种运行方式是,直接运行解释器c语言shell脚本,其参数就是shell脚本的文件名,看到下面的命令:

/bin/shtest.sh

/bin/phptest.php

这种方式运行的脚本,不需要在第一行指定解释器信息,多写也是没有太大的作用的。

再看一个例子。下面的脚本使用read命令从stdin获取输入并赋值给PERSON变量,最后在stdout上输出:

#!/bin/bash

#Author:abc

来源:【九爱网址导航www.fuzhukm.com】 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

最新资讯