刚开始学写bash脚本,发现有很多需要注意的细节问题,在这里记录一下便于记忆:

1、 help test  帮助

2、 bash提供的数组数据结构,它是以数字为下标的,和C语言从0开始的下一样  参考:http://www.centoscn.com/shell/2013/0331/196.html

数组变量的赋值有两种方法:

(1) name = (value1 ... valuen) 此时下标从0开始

(2) name[index] = value

#!/bin/sh

str="hello,world,i,like,you,babalala"
arr=(${str//,/ }) # 数组变量赋值
echo $arr # hello
echo ${arr[@]} # hello world i like you babalala for i in ${arr[@]}
do
echo $i
done

3、赋值号两边不能有空格

4、主要四则运算和字符串操作  参考  http://c.biancheng.net/cpp/view/2736.html

expr 可以进行整数运算和字符串操作

5、命令行参数 参考  http://c.biancheng.net/cpp/view/2739.html

6、条件判断中括号两边应该有空格

eg:if [ $1="/data/nerrissa/test.c" ]; then
#rm -rf $1
echo $1
fi

7、这样都会执行echo,应该用eq进行判断

if [ 1 ];then
echo "nnnnnnn"
fi

if [ 0 ];then
echo "nnnnn"
fi

bash操作小结的更多相关文章

  1. java导入导出excel常用操作小结及简单示例

    POI中常用设置EXCEL的操作小结: 操作excel如下 HSSFWorkbook wb = new HSSFWorkbook();  //创建一个webbook,对应一个Excel文件 HSSFS ...

  2. js,jQuery数组常用操作小结

    一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift() ...

  3. EntityFramework中几种操作小结

    目前项目中使用到的EntityFramework中几种操作小结,先标记下.没有详细介绍,后续有空的话再补充一些并完善一下. 列中加入RowVersion时间戳 public class Product ...

  4. js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符

    js中对arry数组的各种操作小结   最近工作比较轻松,于是就花时间从头到尾的对js进行了详细的学习和复习,在看书的过程中,发现自己平时在做项目的过程中有很多地方想得不过全面,写的不够合理,所以说啊 ...

  5. 树莓派-4WD智能小车操作小结

    树莓派-4WD智能小车操作小结 树莓派4B-4WD智能小车,双层结构,第一层结构为:小车扩展板(底层)+树莓派主板,通过铜柱隔离固定,小车扩展板相当于计算机的外设扩展板:上面一层为第二层,是三个舵机承 ...

  6. Bash Shell字符串操作小结

    装载自:http://my.oschina.net/aiguozhe/blog/41557 1. 取长度 str="abcd" expr length $str # 4 echo ...

  7. 转 git操作小结

    UNDER MIT LICENSE. 公司几乎所有的项目都是使用 git 仓库来管理代码,以前对 git 只有些肤浅的了解,每次提交代码或者上线的时候总是会提心吊胆,生怕出现一些未知的问题.经过三个月 ...

  8. <转载> GIT 操作小结 http://www.cnblogs.com/-ding/p/6008096.html

    参考: http://www.cnblogs.com/zyf-zhaoyafei/p/4486220.html 作者:万境绝尘 转载请注明出处:http://blog.csdn.net/shulian ...

  9. Spark RDD关联操作小结

    前言 Spark的rdd之间的关系需要通过一些特定的操作来实现, 操作比较多也,特别是一堆JOIN也挺容易让人产生混乱的. 因此做了下小结梳理一下. 准备数据 var rdd1 = sc.makeRD ...

随机推荐

  1. The data is said to include information from networks

    The data is said to include information from networks as well as from individual computers and smart ...

  2. uoot启动过程

    1.从我们的start_armboot开始讲起 u-boot整体由汇编段和C语言段外加连接脚本组成.关于汇编段请看我之前的博客<u-boot源码汇编段简要分析>,好,让我们进入start_ ...

  3. C语言实现双向循环链表

    #include <stdio.h> #include <stdlib.h> #include <string.h> struct list_head { stru ...

  4. Umap2:开源USB host安全评估工具

    Umap2是一款由NCC Group和Cisco SAS小组开发的.基于python的USB host安全评估工具. 它拥有第一版所支持的所有功能: umap2emulate:USB设备枚举 umap ...

  5. cut - 小巧的文本截取工具

    简介 cut命令是Unix下的一个命令行程序.cut命令是以行为单位来处理的.cut命令处理的是标准输入,所以可以结合管道来进行文本的处理. 命令格式 cut option… [file]… cut命 ...

  6. Kraken taxonomic sequence classification system

    kraken:是一个将分类标签打到短DNAreads上的分类序列器.

  7. yii使用MongoDB作为数据库服务软件[win7环境下](1)

    1.进入http://php.net,在站内搜索栏搜索mongodb,查看相关的安装步骤信息. 2.找到相应的php.ini配置文件,使用wampserver等服务器软件时,千万不要找错了php.in ...

  8. cookie,session,sessionid

    cookie,session,sessionid http协议是无状态的,意思是每次请求的状态不会保存.因此,产生了cookie,session之类保存会话状态的机制.1.什么是cookiecooki ...

  9. linux库列表

    SDL库 curses openssl zlib library curl library GNU Readline library

  10. NET-SNMP配置

    配置/etc/snmp/snmpd.conf such as below : ============================================== com2sec notCon ...