日期:2014-05-16 浏览次数:20652 次
1.
使用sed插入换行符
]#sed 's/\(.\){n\}/\n/g' file
?
其中大括号里的n表示在第n个字符后插入换行符
?
2.
在vi下查看windows文件会出现windows换行符?^M . 使用vi自带替换功能即可删除
按一下esc
输入
:%s/^M//g
?
其中^M是按ctrl+v,ctrl+m输入出来的。
?
3.
bash比较中
-ne 不等、-eq 等于、-le 小于等于、-lt 小于、-ge 大于等于、-gt 大于:这些都是用于数字大小比较
而
==、!=:这些才是用于字符串比较。
?
4.
在awk中引用shell变量
我认为最好的办法是
?
]#from_shell="hi awk"
]#awk '{print '"$from_shell“‘}'
?
这样不易出现其他问题。
?
5.
在脚本中或其他地方,有时候需要把某些命令的结果赋给变量值
可使用 `` 或者使用 $()
如
#!/bin/bash
for i in `seq 1 5`
do
echo $i
done
或者
#!/bin/bash
for i in $(seq 1 5)
do
echo $i
done
?
6.
]#sed -n '/keyword/{N;p}'
可输出关键字的下一行
?
]#grep -A 2 keyword
可输出关键字的下两行
?
7.
写个简单版本的集群服务器管理
此脚本在建立信任关系后课正常运行
?
#!/bin/bash
########
#c-ssh.sh
#]#./c-ssh.sh root server-list.txt "ls -l /home"
########
if [ $# -ne 3 ]
then
? ? ? ? echo "Usage: $0 <user> <Machine_List> <Commond_List>"
? ? ? ? exit 1
fi
?
for server_list in $(cat $2)
do
? ? ? ? ssh $1@$server_list $3
done
?
?