zoukankan      html  css  js  c++  java
  • 玩Linux这些年积累的技巧

    1. bash中的$相关参数  
    Shell代码 
    1. $0 - 表示当前文件名  
    2. $* - 以空格分离所有参数,形成一个字符串  
    3. $@ - 以空格分离所有参数,形成一个字符串组合。与$*的不同表现在被""引用时,"$*"是一个字符串,而"$@"则包含多个字符串  
    4. $# - 传递给进程的参数数目  
    5. $? - 上一条命令的执行结果,没有错误时为0  
    6. $$ - 本条命令的PID  


    2. bash技巧,由变量的内容来组合为另一个变量的变量名 
    EXAMPLE: 
    Shell代码 
    1. A_B_C_D="something"  
    2. t1="B"  
    3. t2="_D"  
    4. eval echo \$A_${t1}_C${t2};  


    3.  Ubuntu(12.04, 12.10)下,ThinkPad X220指点杆设置,分别设置灵敏度和速度  
    Shell代码 
    1. echo -n 225 > /sys/devices/platform/i8042/serio1/serio2/sensitivity  
    2. echo -n 115 > /sys/devices/platform/i8042/serio1/serio2/speed  


    4. 备份主引导扇区(bootsector)  
    如果启动文件随坏,可以通过恢复主引导扇区来视图修复: 
    备份 
    Shell代码 
    1. dd if=/dev/hda of=bootsector.img bs=512 count=1  

    恢复 
    Shell代码 
    1. dd if=bootsector.img of=/dev/hda  

    上面两步只是恢复了主引导扇区,很可能还需要把/boot里面的内容全都恢复才能正常启动,所以也可以备份一下/boot下面的文件。 

    5. bash命令行输入技巧:  
    使用Ctrl+R来搜索以前用过的命令 
    使用Ctrl+W删除当前单次 
    使用Ctrl+U删除当前行 

    6. xargs很强大,用 -l{} 可以指定参数的位置:  
    EXAMPLE 
    Shell代码 
    1. cat hosts | xargs -I{} ssh root@{} hostname  


    7. 写安全的bash脚本:  
    set -e,当有错误发生时,脚本会退出 
    set -u,当bash发现有没有初始化的变量时就退出 
    更多可参考: 《写出健壮的Bash脚本》  

    8. tar打包指定列表中列出的文件:  
    Shell代码 
    1. cat yourlist.lst  
    2. /etc/fstab  
    3. /home/admin/bin/somefile.sh  
    4. /home/mysql/somefile  
    5. ...  
    6.   
    7. tar cvzf xxx.tar.gz -T yourlist.lst  


    9. 指定一个DNS服务器查询域名记录  
    Shell代码 
    1. dig @8.8.8.8 www.google.com  


    10. sort命令最需要注意的参数是-k和-s:  
    Shell代码 
    1. -s, --stable  
    2.               stabilize sort by disabling last-resort comparison  
    3. stable表示最终的顺序依赖于原来的顺序。  

    EXAMPLE 
    Shell代码 
    1. $ cat a.txt   
    2. a  
    3. A  
    4. B  
    5. b  
    6. $ sort -f a.txt   
    7. a  
    8. A  
    9. b  
    10. B  
    11. $ sort -f -s a.txt   
    12. a  
    13. A  
    14. B  
    15. b  

    例子中,-f表示不区分大小写,-s表示顺序依赖于原来文件的顺序 
    Shell代码 
    1. -k, --key=POS1[,POS2]  
    2.               start a key at POS1 (origin 1), end it at POS2 (default end of line).  

    所以只以第二列来排序应该写: 
    Shell代码 
    1. sort -k1,1 
  • 相关阅读:
    JavaScript 学习笔记 事件二
    auto_ptr
    POJ2299 UltraQuickSort(逆序对个数)
    2016年11月2日22:28:14
    将sql server中的数据倒入Excel(c#)
    线段树成段更新裸题POJ3468
    线段树成断更新裸题hdu1698 Just a Hook
    POJ2828 思维难度较好的一道线段树
    < 弱牛刷贪心给JerryDung&qiuwei大神Orz>最大乘积
    NOIP 2008 传纸条题解[双线程DP]
  • 原文地址:https://www.cnblogs.com/fengyv/p/3053047.html
Copyright © 2011-2022 走看看