bash编程教学实例

补血圣药

补血圣药

2016-01-29 18:35

bash编程教学实例,bash编程教学实例
bash编程 --------------------------------------------------------------------------------時間:2004/03/02    來源:不详   Shell Script(bash)简介   众所皆知地,UNIX上以小工具著名,利用许多简单的小工具,来完成原本需要大量软体开发的工作,这一点特色,使得UNIX成为许多人心目中理想的系统平台。   在众多的小工具中,Shell Script算得上是最基本、最强大、运用最广泛的一个。它运用围之广,不但从系统启动、程式编译、定期作业、上网连线,甚至安装整个Linux系统,都可以用它来完成。
  因为ShellScript是利用您平日在使用的一些指令,将之组合起来,成为一个"程式"。如果您平日某些序列的指令下得特别频繁,便可以将这些指令组合起来,成为另一个新的指令。这样,不但可以简化并加速操作速度,甚至还可以干脆自动定期执行,大大简化系统管理工作。   *************************  Bash(GNU Bourne-AgainSHell)是许多Linux平台的内定Shell,事实上,还有许多传统UNIX上用的Shell,像tcsh、csh、ash、bsh、ksh等等,Shell Script大致都类同,当您学会一种Shell以后,其它的Shell会很快就上手,大多数的时候,一个ShellScript通常可以在很多种Shell上使用。   这里我介绍您bash的使用方法。事实上,当您"manbash"时,就可以看到bash的说明书,不过对许多人来说,这份说明书犹如"无字天书"一样难懂。这份文件,主要资料来源为"manbash",我加上一些实际日常的应用例来说明。希望这样能让那些始终不得其门而入的人们,多多少少能有点概念。   教学例子   "Hello world" Shell Script   照传统程式教学例,这一节介绍Shell Script的"Hello World"如何撰写。   *************************  #!/bin/sh   # Filename : hello   echo "Hello world!"   *************************  大家应该会注意到第一行的"#!/bin/sh"。在UNIX下,所有的可执行Script,不管是那一种语言,其开头都是"#!",例如Perl是"#!/usr/bin/perl",tcl/tk是"#!/usr/bin/wish",看您要执行的Script程式位置在那里。您也可以用"#!/bin/bash"、"#!/bin/tcsh"等等,来指定使用特定的Shell。   echo是个bash的内建指令。   *************************  接下来,执行hello这个script:   要执行一个Script的方式有很多种。   *************************  第一种 : 将hello这个档案的权限设定为可执行。   [foxman@foxman bash]# chmod 755 hello   执行   [foxman@foxman bash]# ./hello   hello world   *************************  第二种 : 使用bash内建指令"source"或"."。   [foxman@foxman bash]# source hello   hello world   或   [foxman@foxman bash]# . hello   hello world   *************************  第三种 : 直接使用sh/bash/tcsh指令来执行。   [foxman@foxman bash]# sh hello   hello world   或   [foxman@foxman bash]# bash hello   hello world   *************************  Bash执行选项   *************************  -c string : 读取string来当命令。   -i : 互动介面。   -s : 由stdin读取命令。   - : 取消往后选项的读取。   -norc : 不要读~/.bashrc来执行。   -noprofile : 不要读/etc/profile、~/.bash_profile、~/.bash_login、~/.profile等等来执行。   -rcfile filename : 执行filename,而非~/.bashrc   -version : 显示版本。   -quiet : 启动时不要哩唆。   -login : 确保bash是个login shell。   -nobraceexpansion : 不要用curly brace expansion({}符号展开)。   -nolineediting : 不用readline来读取命令列。   -posix : 改采Posix 1003.2标准。   用于自动备份的Shell Script   一个用于自动备份的Shell Script   我们先前提到,可利用Shell Script搭配crond来作定期的工作。要作定期性的工作,在UNIX上,就是与crond的搭配运用。   *************************  首先我们先来研究如何对系统进行备份。   要对系统进行备份,不外乎便是利用一些压缩工具。在许多UNIX系统上,tar及gzip是defacto的资料交换标准。我们经常可以看见一些tar.gz或tgz档,这些档案,被称为tarball。当然了,您也可以用bzip2、zip等等压缩工具来进行压缩,不必限定于gzip。但tar配合gzip是最普遍的,也是最方便的方式。   要将我们想要的资料压缩起来,进行备份,可以结合tar及gzip一起进行。方式有很多种,最常用的指令是以下这一种:   tar -c file/dir ... | gzip -9 > xxxx.tar.gz   您也可以分开来做:   tar -r file/dir ... -f xxxx.tar   gzip -9 xxxx.tar   或   tar -r file/dir ... -f xxxx.tar   gzip -9 < xxxx.tar
展开更多 50%)
分享

猜你喜欢

bash编程教学实例

Linux Linux命令 Linux安装 Linux编程 Linux桌面 Linux软件 Linux内核 Linux管理
bash编程教学实例

XML编程实例

Web开发
XML编程实例

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Smarty实例教学 实例篇

Web开发
Smarty实例教学 实例篇

Delphi编程技巧实例

Delphi
Delphi编程技巧实例

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Linux程式设计-11.ShellScript(bash)--(2)教学例

Linux Linux命令 Linux安装 Linux编程 Linux桌面 Linux软件 Linux内核 Linux管理
Linux程式设计-11.ShellScript(bash)--(2)教学例

Delphi 应用编程实例简介

Delphi
Delphi 应用编程实例简介

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

检测程序运行的命令

检测程序运行的命令

长文档浏览攻略(下)

长文档浏览攻略(下)
下拉加载更多内容 ↓