zoukankan      html  css  js  c++  java
  • shell 脚本的基本定义

    注意不能有控制,指令之间
    
    【1】shell脚本的基础知识
        (1)shell脚本的本质
    	 编译型语言
    	 解释型语言
    		shell脚本语言是解释型语言
    		shell脚本的本质
    			shell命令的有序集合
        (2)shell 编程的基本过程
    	 基本过程分为三步:
    	 step1. 建立 shell 文件
       	        包含任意多行操作系统命令或shell命令的文本文件;
    	 step2. 赋予shell文件执行权限
     	        用chmod命令修改权限;
    	 step3. 执行shell文件
       	        直接在命令行上调用shell程序.
        (3)实例
    	 step1: 建立shell文件 (可用任何建立文本文件的方法)
      		   $ cat  prog1.sh
      		     date
    	 Step2: 赋予执行权限:  (初始文本文件无执行权限)
       		   $ chmod  740  prog1.sh
    	 Step3: 执行该shell程序
      	           $ prog1.sh
           		     prog1.sh: not found    
         		     (shell在标准搜索路径中找不到prog1.sh)
    	 Step4: 指定路径或修改环境变量PATH后执行shell程序
       		   $ ./prog1.sh  
       		   2009年  12月  16日  星期二  14:52:57  CST
    

      

    变量是用$来定义,注意不能有空格
    

      

    【2】shell变量
        (1)shell变量
    	 shell允许用户建立变量存储数据,但不支持数据类型(整型、字符、浮点型),
    	 将任何赋给变量的值都解释为一串字符
    						Variable=value
    	 a.   count=1
    	 b.   echo $count
    	 c.   DATE=`date`
    	 d.   echo $DATE
         (2) Bourne Shell有如下四种变量:
    		1) 用户自定义变量 
    		2) 位置变量即命令行参数 
     	 	3) 预定义变量 
    		4) 环境变量
         (3) 用户自定义变量
    	 1) 在shell编程中通常使用全大写变量,方便识别 
    		$ COUNT=1
    	 2) 变量的调用:在变量前加$ 
    		$ echo $HOME 
    	 3) Linux Shell/bash从右向左赋值
    		$Y=y
    		$ X=$Y
    		$ echo $X 
    		y	 
    	 4) 使用unset命令删除变量的赋值 
    		$ Z=hello 
    		$ echo $Z 
    		hello 
    		$ unset Z 
    		$ echo $Z 
         (4) 位置变量
    	 $0   与键入的命令行一样,包含脚本文件名
    	 $1,$2,……$9  分别包含第一个到第九个命令行参数
    	 $#   包含命令行参数的个数
    	 $@   包含所有命令行参数:“$1,$2,……$9”
    	 $?   包含前一个命令的退出状态
    	 $*   包含所有命令行参数:“$1,$2,……$9”
    	 $$   包含正在执行进程的ID号
         (5) 常用shell环境变量 
    	 HOME: /etc/passwd文件中列出的用户主目录 
    	 IFS:Internal Field Separator, 默认为空格,tab及换行符
    	 PATH :shell搜索路径
    	 PS1,PS2:默认提示符($)及换行提示符(>) 
    	 TERM:终端类型,常用的有vt100,ansi,vt200,xterm等 
    

      

    count=1 
    echo $count
    
    count='a'
    echo $count
    
    count="aaaa"
    echo $count
    
    count=1.1
    echo $count
    
    DATE='date'
    echo $DATE
    
    TEST='ifconfig'
    echo $TEST
    
    echo "num:$#"  #打印出来参数个数$#
    echo "all paras:$*"打印出来参数有哪些
    
    echo "all paras:$@"
    echo "$0 is $0"
    echo "$1 is $1"
    echo "$2 is $2"
    echo "$3 is $3"
    echo "$4 is $4"
    echo "$5 is $5"
    echo "$6 is $6"
    echo "$7 is $7"
    echo "$8 is $8"
    echo "$9 is $9"
    echo "$10 is ${10}" #注意当有2个的时候,需要有大括号
    echo "$11 is ${11}"
    

      

  • 相关阅读:
    【IOS】ObjectC 中的Selector 概念
    iOS开发笔记 3、iOS基础
    iOS开发笔记 2、Cocoa简明
    iOS开发笔记 4、iOS中的Cocoa、设计模式等
    iOS开发笔记 5、开发工具Xcode,Inteface Builder
    iOS开发笔记 8、真机调试和发布软件
    移动App如何收费的模式和步骤分析
    带滚动条的二级黑色竖直菜单(CSS实现)
    很是动感的一款js伸缩、关闭菜单
    JS实现类似腾讯QQ折叠菜单
  • 原文地址:https://www.cnblogs.com/jack-hzm/p/10165481.html
Copyright © 2011-2022 走看看