通过读取文件并将行与字符串 - shell进行比较来拆分文件

时间:2015-04-27 11:06:05

标签: shell

我正在尝试编写一个shell脚本,以便逐行读取文件并将该行与字符串进行比较,如果匹配创建文件并开始将行读入该文件中。

这是我到目前为止所写的内容:

FILENAME=27_04_2015.txt
val=0
COMP=file_number_$val
while read line
do  
    line2=${line//[[:blank:]]/} 
    if [ "$line2" = "$COMP" ]
    then        
        val = val + 1   
        COMP=filenumer_$val                     
    fi
done < $FILENAME

在我的FILENAME文件中,存在file_number_0字符串,但if测试未返回成功。

感谢您的帮助。

编辑1:是否有一个允许我们搜索字符串中某些字符的命令? (比如C ++中的strncmp)

1 个答案:

答案 0 :(得分:0)

这应该有效:

FILENAME=27_04_2015.txt
val=0
COMP=file_number_$val
while read line
do  
    line2=${line//[[:blank:]]/} 
    if [ "$line2" == "$COMP" ]
    then        
        ((val++))   
        COMP=file_number_$val     
        echo $val               
    fi
done < $FILENAME