01-shell编程hello,world

来源:互联网 发布:excel怎么算协方差矩阵 编辑:程序博客网 时间:2024/04/28 20:03

学习地址:http://www.icoolxue.com/play/1726

1.shell编程使用的场景,比如说,给Linux操作系统批量添加100个用户,例如:写一个数据库定时作业的一个脚本等。。

实例:

helloworld.shell

2.shell的类型有很多,比如:tcshell  ,bash(Bourne Again Shell) shell 等。

       新建一个文件夹  mkdir   shell 

然后创建一个可编辑的文件 touch   helloworld.shell  文件的后缀名随意

然后vi  helloworld.shell,insert如下内容,esc->wq保存。

       给脚本赋予可执行权限,使用chmod  u+x  helloworld.shell,意思是给文件的所有者加可执行权限。

然后  ./helloworld.shell   (点/)执行shell脚本。

#指定执行脚本的shell#!/bin/sh#my first  shell demo!echo "now,print the current path"/bin/pwd#显示一个空行echoecho "now,print  all document from  usr"/bin/ls /usr


执行结果如下。

now,print the current path
/home/shell


now,print  all document from  usr
apache-tomcat-7.0.67.tar     error.txt  jdk-7u76-linux-x64.tar.gz  sbin       uploadimagesbak
apache-tomcat-7.0.67.tar.gz  games      lib                        share
bak                          include    local                      src
bakscript                    jdk1.6     lucene                     tomcat7
bin                          jdk1.7     manage.war                 uploadbak


3.shell脚本的创建过程

   1.创建一个可编写的文件,写入shell命令。

   2.给文件添加可执行权限

   3.执行脚本  ./  文件名 或者 sh  文件名  例如:./helloworld.shell     sh  helloworld.shell

4.变量,shell中分为临时变量和永久变量

永久变量例如:$PATH   $SHELL(查看当前使用的shell类型)  $LANG

5.用户变量定义规则

      字母数字下划线组成,不能以数字开头

      shell编程中将变量名大写。

6.定义一个变量(变量名=值),并且输出

NUM=100

echo  $NUM

7.将一个命令执行的结果赋值到变量中

     TIME=`date`        (1前面的那个符号)   

echo  $TIME

8.使用单引号和双引号的区别

单引号是直接输出,双引号是命令。

例如:定义一个时间临时变量    DATE=`date`

echo  "time  is   $DATE"     输出  time is  2016年7月27日01:34:26

echo  'time is  $DATE'        输出  time  is   $DATE

9.查看系统中定义的永久变量和自定义变量。

set  |  more

10.删除变量

unset 变量名   例如:unset  NUM

11.位置变量和特殊变量

位置变量就是你执行命令的时候传入的参数的第一个变量。



特殊变量

$?   上一个命令执行的结果  返回0表示成功  非0失败

$#   输入参数的个数

        $*    输出参数

$$    shell脚本执行的PID

12.read命令,从键盘读入数据,赋值给变量

实例

#!/bin/bash


#test  read commond
read   first  second third
echo  "first   is $first"
echo  "second  is $second"
echo  "third  is  $third"


执行:sh  add.shell回车

输入100 200  300 即可打印出来。


注意:输入2个参数的时候,第三个值不赋值,如果输入4个参数,最后一个会输出到第三个结果中。


13.expr算数运算符(整数)

8/3=2

加法:  expr   3 + 5    加号之间有空格

乘法:        expr   3 \* 5   转义*

复杂运算格式:expr `expr 3 + 5` / 4 

赋值:NUM= `expr  $var1 / $var2` 



小结整理:


0 0
原创粉丝点击