面试总结(LINUX)2014-3-20

1. 用source命令执行脚本文件和用sh执行脚本文件的区别

用source和点执行脚本文件,执行过程不另开进程,脚本文件中设定的变量在当前shell中可以看到;

用sh和./执行脚本文件,是在当前进程另开子进程来执行脚本命令,脚本文件中设定的变量在当前shell中不能看到。

如:


[root@SJSWT45-30 guoxin.ai]# cat test.sh 
#!/bin/bash

echo $$
var=test

结果:

[root@SJSWT45-30 guoxin.ai]# unset var;sh test.sh ; echo $var
136804

[root@SJSWT45-30 guoxin.ai]# unset var;source test.sh ; echo $var
134359
test
[root@SJSWT45-30 guoxin.ai]# unset var;. test.sh ; echo $var
134359
test
[root@SJSWT45-30 guoxin.ai]# unset var;./test.sh ; echo $var
137033


2. shell统计访问日志access.log前100的ip

cat access.log | awk -F ' ' '{print $1}' | sort| uniq -c| sort -k1hr | head -2



猜你喜欢

转载自blog.csdn.net/alen1985/article/details/21597091