Chinaunix首页 | 论坛 | 博客
  • 博客访问: 466920
  • 博文数量: 112
  • 博客积分: 2436
  • 博客等级: 大尉
  • 技术积分: 2769
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-04 19:48
文章分类

全部博文(112)

文章存档

2013年(7)

2012年(105)

分类: LINUX

2012-03-22 12:29:05

赋值
     myvar='this is a envirement variable!'    
                                等号两边不能有空格;
                                ''在只有一个字符时可省略
                                ''在没有其他关键字时可用“”代替。(!为关键字)
     cmd='ls'           表赋值
     echo $cmd  ls

     cmd=`ls`         表命令替换
     echo $cmd      执行ls命令

     cmd=$(ls)        表命令替换
     echo $cmd      执行ls命令
显示变量   
     echo $myvar    
     echo foo${myvar}bar
     echo 'foo${myvar}bar'                 视为字符串,不进行解析
     echo "foo${myvar}bar"                视为变量
     echo                                                  默认换行,加-n参数后不换行
读取变量  
     read [变量名]
            read -p "提示内容" [变量名]               可直接写入提示

截字符串   
         myvar=foodforthought
            echo ${myvar##*fo}                    从前截掉最长子串 rthought
            echo ${myvar#*fo}                       从前截掉最短子串 odforthought
            echo ${myvar%%o*}                     从后截掉最长子串 f
            echo ${myvar%o*}                        从后截掉最短子串 foodforth

=两边无空格,表赋值
=两边有空格,表判断
[和]两边必须有空格

${ }表变量
$( )表命令替换
$(( ))表算术表达式

比较运算符
    -e filename   假如 filename存在,则为真
    -d filename   假如 filename为目录,则为真
    -f filename   假如 filename为常规文档,则为真
    -L filename   假如 filename为符号链接,则为真
    -r filename   假如 filename可读,则为真
    -w filename   假如 filename可写,则为真
    -x filename   假如 filename可执行,则为真

字符串比较运算符
    -z string   假如 string长度为零,则为真 
    -n string   假如 string长度非零,则为真  

算术比较运算符
    Num1 -eq num2   等于 [ 3 -eq $mynum ]
    Num1 -ne num2   不等于 [ 3 -ne $mynum ]
    Num1 -lt num2   小于 [ 3 -lt $mynum ]
    Num1 -le num2   小于或等于 [ 3 -le $mynum ]
    Num1 -gt num2   大于 [ 3 -gt $mynum ]
    Num1 -ge num2   大于或等于 [ 3 -ge $mynum ]

bash中的for循环
    for x in one two three four
    do
             echo number $x
    done
    定义了一个$x环境变量,依次被赋值为one two three four,也可被赋值为文件

bash中的参数表示
    $0  表argv[0]
    $1  表argv[1]
    $#  表argc(不算argv[0])
    $@  表argv(不算argv[1])

注释掉: 进入 可视化            选中                Ctrl+c
删除注释: 进入 可视化         选中               Ctrl+x

把目录下所有的.c文件,改为.d文件:
    for file in *.c
    do
              mv $file ${file%%.*}.d
    done

while循环:

    while [  ]
    do
                 action
    done

until循环:

    until
    do
        action
    done


阅读(657) | 评论(0) | 转发(2) |
0

上一篇:git包的制作

下一篇:bash编程_练习

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