[转帖]玩Linux五年积累的技巧_VMware, Unix及操作系统讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  VMware, Unix及操作系统讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 4455 | 回复: 0   主题: [转帖]玩Linux五年积累的技巧        下一篇 
lusxingbao
注册用户
等级:少校
经验:1487
发帖:100
精华:0
注册:2012-11-12
状态:离线
发送短消息息给lusxingbao 加好友    发送短消息息给lusxingbao 发消息
发表于: IP:您无权察看 2013-3-20 17:21:48 | [全部帖] [楼主帖] 楼主

本文主要介绍了Linux系统方面的一些技巧。 

 作者 JH Gao<gaopenghigh@gmail.com>


从最开始接触Linux到现在已经有5年了,和所有人一样,少不了折腾。折腾后偶尔我会把方法记录下来,现在简单总结一下。   www.2cto.com  

所以的命令功能通过man都能找到具体用法,我只把自己觉得常用的列举出来。 

1. bash中的$相关参数 

Shell代码 

$0 - 表示当前文件名  

$* - 以空格分离所有参数,形成一个字符串  

$@ - 以空格分离所有参数,形成一个字符串组合。与$*的不同表现在被""引用时,"$*"是一个字符串,而"$@"则包含多个字符串  
$# - 传递给进程的参数数目  


$? - 上一条命令的执行结果,没有错误时为0  

$$ - 本条命令的PID  

2. bash技巧,由变量的内容来组合为另一个变量的变量名 

EXAMPLE:


Shell代码 

A_B_C_D="something"
t1="B"
t2="_D"
eval echo \$A_${t1}_C${t2};


3.  Ubuntu(12.04, 12.10)下,ThinkPad X220指点杆设置,分别设置灵敏度和速度 

Shell代码 

echo -n 225 > /sys/devices/platform/i8042/serio1/serio2/sensitivity
echo -n 115 > /sys/devices/platform/i8042/serio1/serio2/speed


4. 备份主引导扇区(bootsector) 

如果启动文件随坏,可以通过恢复主引导扇区来视图修复: 

备份 

Shell代码 

dd if=/dev/hda of=bootsector.img bs=512 count=1


恢复 

Shell代码 

dd if=bootsector.img of=/dev/hda


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

5. bash命令行输入技巧: 

使用Ctrl+R来搜索以前用过的命令 

使用Ctrl+W删除当前单次 

使用Ctrl+U删除当前行 

6. xargs很强大,用 -l{} 可以指定参数的位置: 

EXAMPLE


Shell代码 

cat hosts | xargs -I{} ssh root@{} hostname


7. 写安全的bash脚本: 

set -e,当有错误发生时,脚本会退出 

set -u,当bash发现有没有初始化的变量时就退出 

更多可参考:《
写出健壮的Bash脚本》 

8. tar打包指定列表中列出的文件: 

Shell代码 

cat yourlist.lst
/etc/fstab
/home/admin/bin/somefile.sh
/home/
mysql/somefile
...
tar cvzf xxx.tar.gz -T yourlist.lst


9. 指定一个DNS服务器查询域名记录 

Shell代码 

dig @8.8.8.8 www.google.com


10. sort命令最需要注意的参数是-k和-s: 

Shell代码 

-s, --stable
stabilize sort by disabling last-resort comparison


stable表示最终的顺序依赖于原来的顺序。  

EXAMPLE


Shell代码 

$ cat a.txt
a
A
B
b
$ sort -f a.txt
a
A
b
B
$ sort -f -s a.txt
a
A
B
b


例子中,-f表示不区分大小写,-s表示顺序依赖于原来文件的顺序 

Shell代码 

-k, --key=POS1[,POS2]
start a key at POS1 (origin 1), end it at POS2 (default end of line).


所以只以第二列来排序应该写: 

Shell代码 

sort -k1,1




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论