2014-04-02 48 views
1

我想生成自己的公共HTML含有惡意軟件的用戶列表生成用戶列表從AV輸出文件在bash

我使用avgscan進行掃描,

/opt/avg/av/bin/avgscan -a -c --ignerrors --report=avoutput.txt 

,但它會產生像

報告
/home/someuser/mail/info/cur/1395054106.H396740P84180,S=47470:2,S:/form_ident.rar Trojan horse Inject2.WPP 
/home/someuser/public_html/__swift/files/attach_pq2ar348en1z435o5jhqy37de2xfb391 Trojan horse Zbot.BMI 

我試過一些東西,但它沒有鍛鍊列表也有/備份文件夾,我不想列入清單 我只需要列表的用戶,該怎麼辦?

回答

1
#!/bin/bash 
    in="your_av_report file.txt" # in this case avoutput.txt 

    a=$(cat $in | grep -i "/mail/" | grep -v "/backup/" | cut -d'/' -f3 | awk '!a[$0]++' | uniq) 
    b=$cat $in | grep -i "/public_html/" | grep -v "/backup/" | cut -d'/' -f3 | awk '!a[$0]++' | uniq) 
    echo $a >>foo.txt 
    echo $b >>foo.txt 

我希望它能幫助:)

+0

'awk的 '!一個[$ 0] ++''在你的代碼說明了什麼? –

+0

@AvinashRaj它代表列表應該是唯一的,我的意思是如果在他的輸出中有兩個或更多的惡意軟件在同一用戶中,那麼相同的用戶名將被列出兩次或更多,所以爲了避免這種情況。 uniq的意思是一樣的,我都用 –