1. bash中的$相关参数
2. bash技巧,由变量的内容来组合为另一个变量的变量名
EXAMPLE:
3. Ubuntu(12.04, 12.10)下,ThinkPad X220指点杆设置,分别设置灵敏度和速度
4. 备份主引导扇区(bootsector)
如果启动文件随坏,可以通过恢复主引导扇区来视图修复:
备份
恢复
上面两步只是恢复了主引导扇区,很可能还需要把/boot里面的内容全都恢复才能正常启动,所以也可以备份一下/boot下面的文件。
5. bash命令行输入技巧:
使用Ctrl+R来搜索以前用过的命令
使用Ctrl+W删除当前单次
使用Ctrl+U删除当前行
6. xargs很强大,用 -l{} 可以指定参数的位置:
EXAMPLE
7. 写安全的bash脚本:
set -e,当有错误发生时,脚本会退出
set -u,当bash发现有没有初始化的变量时就退出
更多可参考: 《写出健壮的Bash脚本》
8. tar打包指定列表中列出的文件:
9. 指定一个DNS服务器查询域名记录
10. sort命令最需要注意的参数是-k和-s:
EXAMPLE
例子中,-f表示不区分大小写,-s表示顺序依赖于原来文件的顺序
所以只以第二列来排序应该写:
- $0-表示当前文件名
- $*-以空格分离所有参数,形成一个字符串
- $@-以空格分离所有参数,形成一个字符串组合。与$*的不同表现在被""引用时,"$*"是一个字符串,而"$@"则包含多个字符串
- $#-传递给进程的参数数目
- $?-上一条命令的执行结果,没有错误时为0
- $$-本条命令的PID
2. bash技巧,由变量的内容来组合为另一个变量的变量名
EXAMPLE:
- A_B_C_D="something"
- t1="B"
- t2="_D"
- evalecho\$A_${t1}_C${t2};
3. Ubuntu(12.04, 12.10)下,ThinkPad X220指点杆设置,分别设置灵敏度和速度
- echo-n225>/sys/devices/platform/i8042/serio1/serio2/sensitivity
- echo-n115>/sys/devices/platform/i8042/serio1/serio2/speed
4. 备份主引导扇区(bootsector)
如果启动文件随坏,可以通过恢复主引导扇区来视图修复:
备份
- ddif=/dev/hdaof=bootsector.imgbs=512count=1
恢复
- ddif=bootsector.imgof=/dev/hda
上面两步只是恢复了主引导扇区,很可能还需要把/boot里面的内容全都恢复才能正常启动,所以也可以备份一下/boot下面的文件。
5. bash命令行输入技巧:
使用Ctrl+R来搜索以前用过的命令
使用Ctrl+W删除当前单次
使用Ctrl+U删除当前行
6. xargs很强大,用 -l{} 可以指定参数的位置:
EXAMPLE
- cathosts|xargs-I{}sshroot@{}hostname
7. 写安全的bash脚本:
set -e,当有错误发生时,脚本会退出
set -u,当bash发现有没有初始化的变量时就退出
更多可参考: 《写出健壮的Bash脚本》
8. tar打包指定列表中列出的文件:
- catyourlist.lst
- /etc/fstab
- /home/admin/bin/somefile.sh
- /home/mysql/somefile
- ...
- tarcvzfxxx.tar.gz-Tyourlist.lst
9. 指定一个DNS服务器查询域名记录
- dig@8.8.8.8www.google.com
10. sort命令最需要注意的参数是-k和-s:
- -s,--stable
- stabilizesortbydisablinglast-resortcomparison
- stable表示最终的顺序依赖于原来的顺序。
EXAMPLE
- $cata.txt
- a
- A
- B
- b
- $sort-fa.txt
- a
- A
- b
- B
- $sort-f-sa.txt
- a
- A
- B
- b
例子中,-f表示不区分大小写,-s表示顺序依赖于原来文件的顺序
- -k,--key=POS1[,POS2]
- startakeyatPOS1(origin1),enditatPOS2(defaultendofline).
所以只以第二列来排序应该写:
- sort-k1,1