Linux命令中遍历的使用

2023-02-03

类似于python里的for循环

for i in `cat test.txt` ; do command $i ; done
即读取test.txt并把每一行的值都传入到后面的命令中,最后一定要加done
$i是把值传入

放几个常用的用法:

1.

for i in `cat test.txt` ; do grep -E -o "([0-9]{1,3}[\.]){3}[0-9]{1,3}" * $i 2>/dev/null ; done

例如test.txt储存的是多个可疑文件的绝对路径,则依次读取每个可疑文件的绝对路径,然后将值传入后面的grep中
grep这里执行的是过滤可疑文件中的可能存在的ip地址,并返回可疑路径的绝对路径

2.

for i in `cat test.txt` ; do sha1sum $i ; done

例如test.txt储存的是多个可疑文件的绝对路径,则遍历读取每个可疑文件的绝对路径,然后将值传入后面的sha1sum中
sha1sum是将单个可疑文件中的值进行sha1计算