BASH脚本编程入门_第1页
BASH脚本编程入门_第2页
BASH脚本编程入门_第3页
BASH脚本编程入门_第4页
BASH脚本编程入门_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

BASH脚本编程入门一个最简单的脚本一个最经典的HelloWorld程序#!/bin/bashechoHelloWorld这个脚本只有二行,它的第一行这个脚本程序由那个程序来解释.第二行只有一个简单的动作,它的功能是在终端上打印出一行”HelloWorld”。如果你测试着执行这个命令时〔./hello.sh〕,你将会得到一个commandnotfound的信息,这种情况大局部可能是你的第一行#!/bin/bash这个程序有问题,你一定要确保bash可以找到并且可用。(一般情况下你还要对这个脚本附一个可执行权限)一个非常简单的备份脚本#!/bin/bash

tarczvfseqs.tar.gzseqs/

标准输出这个例子将会使ls的显示结果重定向到一个文件中.ls-l>ls-l.txt标准错误$!@$$!$@>grep-errors.txt管道管道可以使你非常方便的将一个程序的结果转向到另外一个程序中。一个sed的例子这个例子使用了非常简单的管道功能:ls-l|sed-e"s/[fasta]/u/g"ls-l|sed-e"s/fasta/u/g"变量你可在任何编程语言中使用变量,但是在脚本编程中它们是没有类型的,简称弱类型编程语言,在这个变量中可以保含一个数字,一个字符串,一个单词等。你并不需要声明这个变量,它会在引用这个变量时创立它。使用变量来实现一个简单的HelloWorld#!/bin/bash

STR="HelloWorld!"

echo$STR变量第二行建立一个STR的变量并且为其附了一个“HelloWorld”的字符串变量值。当在这个变量前面加上一个$符号时,我们就将会得到这个变量的值。例子〔一个使用变量的备份脚本〕#!/bin/bash

OF=seqs.tar.gz

tarzxvf$OF./条件语句条件语句可以使你决定是完成一个运作或是不去完成一个动作时,通过一些判断来实现,一般情况都是通过一些操作符来实现判断。条件语句可以有许多实现方法,最多的情况是基于ifexpressionthen这种情况,也就是大家常常说的if判断语句。它的语法根本结构如下:if[expression];

then

codeif'expression'istrue.

fi一个最根本的使用if...then的例子#!/bin/bash

if["foo"="foo"];then

echoexpressionevaluatedastrue

fi条件语句这段代码执行if判断,如果foo等于foo的话,那么你就会执行then语句下的输出语句,最后通过fi来结束,这里我要强调一点,就是很多新手在输入源码时特别是在if语句后面没有空格,在大括号后面没有空格,在等号两边没有空格,这些都会制造出一些麻烦的。一个简单的控制if..then...else#!/bin/bashif["foo"="foo"];thenechoexpressionevaluatedastrueelseechoexpressionevaluatedasfalsefi通过变量进行判断控制#!/bin/bashT1="foo"T2="bar"if["$T1"="$T2"];thenechoexpressionevaluatedastrueelseechoexpressionevaluatedasfalsefi循环结构对于for循环它有一点不同于其他的编程语言,它有一点像VB中的foreach语句,就是所谓的递归的循环。对于while循环,它其实是一个加强的if语句,如果它的条件为真,那么它就一直执行while循环中的语句中的内容。7.1Forsample#!/bin/bashforiin$(ls);doechoitem:$idone循环结构在第二行上,我们声明了一个i的变量,它将一直将ls命令的结果全部循环出来。其中do和done之间是所要执行的代码。While循环例子#!/bin/bashCOUNTER=0while[$COUNTER-lt10];doechoThecounteris$COUNTERletCOUNTER=COUNTER+1done循环结构这里面大家可能看到一个-lt的命令选项,这里它代表小于等于-eq等于-ne不等于-gt大于-ge大于等于-lt小于-le小于等于Until的例子

#!/bin/bashCOUNTER=20until[$COUNTER-lt10];doechoCOUNTER$COUNTERletCOUNTER-=1done函数

函数的例子#!/bin/bashfunctionquit{exit}functionhello{echoHello!}helloquitechofoo在函数中使用参数#!/bin/bashfunctionquit{exit}functione{echo$1}eHelloeWorldquitechofoo使用select命令制作简单的菜单#!/bin/bashOPTIONS="HelloQuit"selectoptin$OPTIONS;doif["$opt"="Quit"];thenechodoneexitelif["$opt"="Hello"];thenechoHelloWorldelseclearechobadoptionfidone使用read读入用户输入在多数情况下你可能会用到提示请进行输入这种状态并且有几种方法可以用。这是其中的一种方法:#!/bin/bashechoPlease,enteryournamereadNAMEecho"Hi$NAME!"对于变量来说,你可以通过多个值来读入。#!/bin/bashechoPlease,enteryourfirstnameandlastnamereadFNLNecho"Hi!$LN,$FN!"算术操作使用以下的命令:echo1+1如果你希望看到2,那么你会很

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论