在if中使用=~进行匹配
目录下所有的文件
我想查找该目录下含有fast文字的文件,可以利用if的匹配命令,左边的去匹配右边的
for i in `ls *sh`;do if [[ $i =~ fast ]];then echo $i;fi;done
结果展示:
fastq_same.sh
支持正则表达式
例子1
for i in `ls *sh`;do if [[ $i =~ fa* ]];then echo $i;fi;done
fastq_same.sh
mkdir_dir.ref.sh
例子1使用for循环,将含有fa的文件全部打印出来。
mkdir_dir.ref.sh显示的原因是,fa表示f是必须的,a表示0个或者多个,所有含有f的文件也被展示出来
例子2
for i in /*/*.clean.fq ;
do
if [[ $i =~ N-G* ]];then
echo "$i";
fi;
done
###展示结果
./N-G-1/N-G-1_1.clean.fq
./N-K-1/N-K-1_1.clean.fq