Chinaunix首页 | 论坛 | 博客
  • 博客访问: 579103
  • 博文数量: 80
  • 博客积分: 2393
  • 博客等级: 大尉
  • 技术积分: 1434
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-03 21:46
个人简介

己所不欲勿施于人!

文章分类

全部博文(80)

文章存档

2017年(1)

2016年(9)

2014年(1)

2013年(17)

2012年(5)

2011年(13)

2010年(9)

2009年(8)

2008年(17)

分类:

2010-02-06 17:57:39

shell 编程基础
一、shell 脚本的结构
1、以类似于#!/bin/bash 的形式开头
  1、#!告诉系统这个文件是由特定命令解释器解释的一组命令.
  2、紧跟着#!的是一个路径名.这个路径名是解释这个脚本内命令的命令解释器程序的路径:
     可能是一个shell,也可能是一个编程语言或者是一个软件包程序.
  3、#!/bin/sh 表示使用系统默认的shell(linux默认的shell 是Bash).
2、执行脚本
  通常执行脚本有三个方法:
  1、sh scriptname
  2、bash scriptname
  3、chmod 命令使脚本自身变为可执行。(这也是最方便的一个方法)
  可能有人想,能不能要文件创建出来就可执行呢?答案是否定的
  系统不允许你在创建一个文本文件时就赋予它执行权限,必须在创建后用chmod命令增加这一权限.
  umask命令允许你设定文件创建时的缺省模式。
  对于文件其最大的数值为6(即可读写),对于文件夹则最大为7  (即读、写、执行)。
3、关于变量
  1.变量的赋值

#!/bin/bash

# 注释都是以“#”开头。
#对变量进行赋值

a=123   #第一种赋值方式

#等号的两边都不能有空格

#如果形如 a =123,则解释器会认为a 是一个命令,而 “=123”是一个参数。

let "a +=1"  #第二种赋值方式

#第三种 ,在一个for循环中赋值
for a in 2 3 4 5 10

do

  echo -n $a  # -n 每行的末尾不插入回车换行

done

#第四种赋值 :用read 命令赋值

echo -n "Enter \"a\""

read a

echo "The value of \"a\" is now $a."

hello="A B C   D"

echo $hello

echo "$hello"

#将变量用引号引起来,会保留变量中的空白字符。

exit 0

   2.关于变量的类型

     Bash不以"类型"来区分变量。根据环境的不同,bash允许变量有整数计算和比较。

   3.位置参数

     $0  脚本的名字(带路径的名字)

     $n  第N个参数

     shift命令: 使位置参数都左移一位

   1 #!/bin/bash
   2 # 用 'shift'命令逐步存取所有的位置参数
   3
   4 # 给这个脚本一个命名,比如说shft,
   5 #+ 然后以一些参数来调用这个脚本,例如
   6 # ./shft a b c def 23 skidoo
   7
   8 until [ -z "$1" ] # 直到所有的位置参数被存取完...
   9 do
  10 echo -n "$1 "
  11 shift
  12 done
  13
  14 echo # 换行.
  15
  16 exit 0


阅读(1432) | 评论(0) | 转发(0) |
0

上一篇:oracle表之间的连接

下一篇:linux export 作用

给主人留下些什么吧!~~