一直都在听他们说,写个脚本做什么什么事情。对于脚本,本来就没有什么概念,一切从零开始吧!
首先要了解linux下脚本的概念,这里有说:
shell是一个命令解释器.是介于操作系统kernel与用户之间的一个绝缘层.准确地说,它也是一种强力的计算机语言.一个shell程序,被称为一个脚本,是一种很容易使用的工具,它可以通过将系统调用,公共程序,工具,和编译过的二进制程序粘合在一起来建立应用。
什么是shell?就是那个绝缘层啦~用户和kernel打交道的那个界面,通道,路径~
什么是脚本?就是绝缘层下的一个程序啦~既然是程序就有其语法和编写的规范等等啦~
它有什么作用?就是将系统调用,公共程序,工具,和编译过的二进制程序粘合在一起来建立应用~听起来似乎很有用,粘合功能很强大(⊙o⊙)!
到此~
概念清晰啦~
linux下SDK的测试中,我主要进行功能测试,测试的手段也是写c代码手动执行测试,好像没有脚本什么事,直到我想在开机的时候自己加载两个驱动程序,本着好学不倦的精神,本来可以手动加载的,但是刚好可以学习一下写脚本,以后还有用的着的地方呢,就开始学习啦~
网上搜资料……
向同事请教……
1.脚本的语法
头一次写脚本,根本没见过脚本是什么样的,跑去问YF,怎么写脚本呢?YF就打开一个她写的脚本,给我看,必须要这样开头,布拉布拉~讲了一通,我回来了,又在网上搜了篇文章《linux脚本编写基础》http://linux.chinaunix.net/techdoc/beginner/2008/06/02/1008844.shtml,写了第一个脚本~只有一句话~echo
在每个脚本的开头都使用"#!",这意味着告诉你的系统这个文件的执行需要指定一个解释器.#!实际上是一个2字节的魔法数字,这是指定一个文件类型的特殊标记,换句话说,在这种情况下,指的就是一个可执行的脚本(键入man
magic来获得关于这个迷人话题的更多详细信息).在#!之后接着是一个路径名.这个路径名指定了一个解释脚本中命令的程序,这个程序可以是shell,程序语言或者是任意一个通用程序.这个指定的程序从头开始解释并且执行脚本中的命令(从#!行下边的一行开始),忽略注释.
如:
1 #!/bin/sh
2 #!/bin/bash
3 #!/usr/bin/perl
4 #!/usr/bin/tcl
5 #!/bin/sed -f
6 #!/usr/awk -f
上边每一个脚本头的行都指定了一个不同的命令解释器,如果是/bin/sh,那么就是默认shell(在Linux系统中默认是Bash).使用#!/bin/sh,在大多数商业发行的UNIX上,默认是Bourne
shell,这将让你的脚本可以正常的运行在非Linux机器上,虽然这将会牺牲Bash一些独特的特征.脚本将与POSIX的sh标准相一致.
退出命令exit 0
#退出之前返回0,返回0表示成功.
嘿嘿,有了开头和结尾,怎么把那些有用的语句加上去,我想来想去,试了一下,原来是直接把命令敲到脚本里就行啦-_-||,当然这是最简单的用法啦,再复杂的我也没有接触到~
2.脚本如何执行
编写完脚本之后,就可以使用sh
scriptname或者bash scriptname来调用它.(不推荐使用sh
<scriptname,因为这禁用了脚本从stdin中读数据的功能.)更方便的方法是让脚本本身就具有可执行权限,通过chmod命令可以修改.
比如:
chmod 555 scriptname (允许任何人都具有可读和执行权限)
或:
chmod +rx scriptname (允许任何人都具有可读和执行权限)
chmod u+rx scriptname (只给脚本的所有者可读和执行权限)
3.脚本如何开机运行
这里主要讲两种方法:
a.打开/etc/rc.d/rc.local,把开机要执行的命令加进去,就可以达到开机运行某个命令的目的啦~这个方法我虽然没有试过,但看rc5.d的最后一个链接S99local,应该没有问题;
b.把写好的脚本放到/etc/rc.d/init.d路径下,在rc5.d中建立一个链接,同样可以达到开机运行的目的,比较第一种方法,这种方法就是更独立,也可以自由选择开机运行的次序。
大概就是以上几点了,当然期间还遇到了一些问题,幸有高人相助,我在开机时加载驱动的目标终于达到啦~
这就是我的linux脚本学习之路,回头想想,学习时两点最重要:
1.有高人示范指点,有些东西,看别人做一遍,胜过自己摸索很久,这里要谢谢YF和YJ~
2.起初在网上搜集资料,有点大海捞针,不得要点,还是老老实实看本书,学的更快,谢谢YJ共享的书,真的觉得很好,高级Bash脚本编程指南,想学脚本的就先别去大海里捞针了,从这本书入门,再去大海里捞金吧~
分享到:
相关推荐
Linux 脚本学习笔记 - 服务管理和开机自启 在 Linux 系统中,服务管理和开机自启是非常重要的两个概念。服务管理是指对系统服务的启动、停止和状态查看,而开机自启则是指将服务设置为在系统启动时自动启动。本文将...
本文将深入探讨“Linux及脚本语言学习”这一主题,包括Linux基础、Shell脚本、Python和Perl的编程知识。 首先,让我们从Linux基础开始。Linux是一种开源的类UNIX操作系统,它提供了强大的命令行接口(CLI)和丰富的...
在Linux操作系统中,脚本是一种强大的工具,它允许用户通过编写简单的命令序列来自动化复杂的任务。这个名为"linux脚本实例"的压缩包文件显然包含了Linux脚本编程的一些实例,...祝你在Linux脚本学习之旅上取得成功!
linux脚本的学习资料linux脚本的学习资料linux脚本的学习资料linux脚本的学习资料linux脚本的学习资料linux脚本的学习资料linux脚本的学习资料linux脚本的学习资料linux脚本的学习资料linux脚本的学习资料linux脚本...
在Linux系统中,脚本学习是一项非常重要的技能,特别是对于那些需要自动化日常任务或进行系统管理的用户。Shell脚本是Linux操作系统中的一个强大工具,它允许用户通过编写简单的命令行指令来执行复杂的任务序列。...
资源名称:Linux Shell脚本学习基础视频资源目录:【】11a00d99b60c4e2eba3440b8aa3a6bdd【】linux_shell脚本编程_01认识shell,如何编写shell脚本和执行【】linux_shell脚本编程_02vivim简单的常用操作【】linux_...
Linux Shell 脚本编程基础知识点总结 Linux 脚本编写基础 1.1 语法基本介绍 * `#!` 符号用来告诉系统它后面的参数是用来执行该文件的程序 * 在 Linux 中,使用 `/bin/sh` 来执行程序 * 编辑好脚本后,需要使其可...
shell学习基本命令,可以帮助初学者快速掌握较全面的shell脚本知识
这份"Linux Shell脚本学习文档"是针对初学者的一份详细教程,旨在帮助读者快速理解和掌握Bash Shell脚本的基本概念和用法。 首先,让我们从基础开始。在Shell脚本中,每一行都是一个命令或指令,可以执行诸如创建、...
在IT领域,Linux操作系统及其相关的shell脚本编程是不可或缺的一部分,尤其对于系统管理员、开发者以及对计算机技术有深厚兴趣的学习者来说。这份“Linux学习资料及shell脚本实例”涵盖了Linux的基础知识和实用技巧...
《Linux脚本大全必看》一书,是深入学习Shell脚本编程的宝典,它不仅涵盖了基础的脚本编写技巧,还详细介绍了高级的Shell编程技术,是每一位Linux爱好者和系统管理员不可多得的学习资源。以下是对该书中几个关键章节...
Linux脚本编写是系统管理、自动化任务和软件开发中不可或缺的一部分。本文主要介绍Linux脚本的基础知识,包括语法...学习Linux脚本编写不仅可以提升工作效率,也是成为一名合格的系统管理员或开发者所必需的技能之一。
Linux脚本编写基础 Linux脚本编写基础是指在Linux操作系统中编写和执行脚本语言的基础知识。...Linux脚本编写基础是学习Linux脚本语言的基础知识,掌握这些基础知识可以帮助用户更好地使用Linux系统。
在IT行业中,Linux系统是广泛应用于服务器管理的重要操作系统。对于数据库管理员来说,高效地管理和维护...在提供的压缩包文件"clear&backup"中,可能包含了实现这些功能的具体脚本代码,读者可以进一步研究学习。
Shell脚本经典案例,sh脚本语法参考,封装参考,SH脚本文件案例,BASH脚本文件参考,Linux脚本文件参考,sh脚本文件写法参考,SH脚本写法规范学习,bash脚本linux脚本规范学习,命令行管理工具封装,服务管理叫版本...