Shell脚本笔记

来源:互联网 发布:谷歌输入法linux版 编辑:程序博客网 时间:2024/05/29 09:45

1、Home目录下的~/.bashrc脚本文件记录提示文本颜色等各类设置
2、Bash历史记录文件~/.bash_history
3、echo执行之后会添加换行符
4、Bash中不会对单引号变量求值,而是原样输出
5、echo -e "包含转义序列的字符串"
6、var = value不同于var=value,前者是相等操作,后者是赋值操作
7、export命令用来设置环境变量,PATH中添加路径PATH="$PATH:/home/user/bin"
8、获得字符串长度,length=${#var}
9、>是清空内容并写入文件,>>是追加文本
10、0—stdin(标准输入)1—stdout(标准输出)2—stderr(标准错误)
11、>等同于1>,>>等同于1>>
12、cmd 2>stderr.txt 1>stdout.txt
13、some_command 2> /dev/null,丢弃所有错误日志
14、tee命令接受来自stdin的数据,一份写入文件,一份作为后续命令的stdin。cat a* | tee out.txt | cat -n
15、tee -a 追加内容
16、打印数组元素内容 ${array_var[0]}
17、打印数组所有值 ${array_var[*]}
18、关联数组声明declare -A ass_array,关联数组相当于map
19、初始化关联数组,ass_array=([index1]=var1 [index2]=var2),或者ass_array[index1]=var1
20、数组索引列表 ${!array_ass[*]),或者${!array_ass[@]}
21、别名alias new_command="command sequence"
22、一个新的进程生成时,都会执行~/.bashrc里的内容
23、别名使用,alias rm='cp $@ ~/backup; rm $@'
24、在要执行的命令钱加入\是一个不错的安全实践
25、tar -cvf /tmp/etc.tar /etc    <==仅打包,不压缩!
26、tar -zcvf /tmp/etc.tar.gz /etc  <==打包后,以 gzip 压缩
27、tar -jcvf /tmp/etc.tar.bz2 /etc  <==打包后,以 bzip2 压缩

0 0