当我试着运行下面的脚本时,它会说cat的选项3无效..什么问题?
我试图使用索引文件来指定哪个文件是ham哪个是spam…来读取文件并训练spamfilter

#!bin/bash
DirBogoDict=$1
BogoFilter=/home/gunna/Downloads/bogofilter-1.2.4/src/bogofilter
x=0
for i in 'cat index | fgrep spam | head -300 | awk -F "/" '{print$2"/"$3}''

do
     x=$((x+1)) ; echo $x


cat  /home/gunna/Downloads/db-6.1.19.NC/build_unix/ceas08-1/$i| $BogoFilter -d $DirBogoDict -M -k 1024 -s

done

for i in 'cat index | fgrep ham | head -300 | awk -F "/" '{print$2"/"$3}''


do
     x=$((x+1)) ; echo $x


cat   /home/gunna/Downloads/db-6.1.19.NC/build_unix/ceas08-1/$i | $BogoFilter -d $DirBogoDict -M -k 1024 -n

done

最佳答案

本部分

 'cat index | fgrep spam | head -300 | awk -F "/" '{print$2"/"$3}''

必须是反勾号,而不是单引号
`cat index | fgrep spam | head -300 | awk -F "/" '{print$2"/"$3}'`

你可以简化一下
for i in `fgrep spam index | head -300 | awk "/" '{print$2"/"$3}'`

关于linux - 猫的无效选项3,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27350385/

10-15 12:13