shell脚本编程(二)------面试题

1、指定目录下的所有的文件名

#!/bin/bash
data=$(find ~ -name $1)  //找到文件夹所在的目录
echo $data
cd $data
ls

2、统计日志文件a.log中有多少行包含error

#!/bin/bash
cat $1 | grep -i -c <error>
注意:-i :忽略大小写的匹配

-c:输出总共匹配到多少行

<:单词开始的位置

>:单词结尾的位置

3、从file文件中读取文件的内容并输出

#!/bin/bash
while read line     #read是以换行符作为分割符的
do
	echo $line
done <$1
第二种方法:
cat $1 | while read line
do
	echo $line
done
第三种方法:
IFS=$
           #for循环读取时默认以空格作为分割符,所以用IFS设置分隔符为换行符
for line in $(<$1)
do
	echo $line
done
总结:

shell脚本就是把许多命令写到一个脚本文件中,然后进行批处理。

经验分享 程序员 微信小程序 职场和发展