今天早上用notepad写了个简单脚本,如下:
1
2
3
4
5
6
7
|
[root@master ~]
# vim /wanwan/nginx_limits.sh
#!/bin/bash
#nginx max open files-nums
for
pid
in
$(
ps
aux |
grep
nginx|
grep
-
v
grep
|
awk
'{print $2}'
)
do
cat
/proc/
${pid}
/limits
|
grep
'Max open files'
done
|
调试的时候居然报错,如下:
1
2
3
|
[root@master ~]
# bash /wanwan/nginx_limits.sh
'wanwan
/nginx_limits
.sh: line 4: syntax error near unexpected token `
do
'wanwan
/nginx_limits
.sh: line 4: `
do
|
突然想到,可能是因为在windows下编辑的额,继续排查
使用vim -b进行编辑,发现文件每一行后面都多了一个
解决方法:
1
2
3
4
5
6
7
|
在Vim中解决这个问题,很简单,在Vim中利用替换功能就可以将“^M”都干掉,键入如下替换命令行:
1)
vi
-b setup.sh
2)在命令编辑行<就是: 按ESC键 然后
shift
+:冒号>输入:%s/^M
//g
注意:上述命令行中的“^M”符,不是“^”再加上“M”,而是由“Ctrl+
v
”、“Ctrl+M”键生成
这样替换掉以后,保存就可以执行了。当然还有其他的替换方式比如:
a.一些linux版本有 dos2unix 程序,可以用来祛除^M。
b.
cat
filename1 |
tr
-d
"/r"
> newfile 去掉^M生成一个新文件
|
再次查看文件的信息:
我们发现换行符已经没有了,执行下脚本:
到此,完成
本文转自 冰冻vs西瓜 51CTO博客,原文链接:http://blog.51cto.com/molewan/1964504,如需转载请自行联系原作者