shell脚本将text文件中的文件名筛选转化成独立的文件

来源:互联网 发布:守望先锋英雄数据库 编辑:程序博客网 时间:2024/06/02 03:40

先说明下我做的事儿,

在test2文件下包含了文件路径和文件名,我需要将路径之间的/ 改成_ 并用它作为文件名创建文件,将路径下的文件反汇编,筛选内容放入新创建的文件中

代码如下

#!/bin/bashcat test2 | while read linedo      fn=${line////_}      fn=${fn/_/}      objdump -d $line |  grep  "\<aesenc\>"  | grep -v ">:" > $fn    if [ ! -s $fn ]    then        rm -f $fn    fi     done

line4:${line////_} 表示读取每行的路径,将/ 改成_ ,其中有两点需要注意,一,一般换字符只需要line/1/2即可,即只需要两个/ ,但是由于我们需要换的是/ ,它具有特殊性,故而我们需要写两个/ 去确认所要换的字符;  二,当你用/时,请注意第一行就必须明确是bash,因为ubuntu自带的shell的用法在此处和bash不同,相冲突

line5:其实line5的语法和line4一致,只不过它意指将第一个_换成无

line7:判断文件是否为空,-s 显示size,如果为空,则直接用rm -f ,remove了文件

阅读全文
1 0
原创粉丝点击