2015年7月12日星期日

shell学习笔记-文件描述符,数组,别名,调试

由于工作中需要写shell,因此进行系统性学习,并记录学习笔记。使用的学习资料为《Linux Shell脚本攻略》第二版。

一 文件描述符

 自定义文件描述符:

exec 3<input.txt #使用文件进行文件描述符输入
echo "string" >&4 #写入文件描述符4
cat<&3  #读取文件描述符3
二 数组和关联数组(Map)

数组: 
#定义
arr=(1 2 3 4)

echo "all:"
#打印所有元素
echo ${arr[*]}

echo ${arr[@]}
#打印长度
echo "length:" ${#arr[*]}
关联数组:
#deifination
declare -A ass_arr
#assignment
ass_arr=(['apple']=10 ['pear']=20)
echo ${ass_arr['apple']}
#get all keys
echo ${!ass_arr[*]}
三 别名
alias cmd='new cmd'
使用\cmd 进行转义,可以忽略别名

四 调试
#全局调试
sh  -x script 或者 #!/bin/bash -vx
#局部调试
set -x
cmd
set +x

没有评论:

发表评论