find . -name 'Email*.log' -exec grep -il 'bad password' {} \;| while read line; do
TEMPNUM=`tail -20 $line | grep 'bad password' | wc -l`
if [ $TEMPNUM -gt 0 ]; then
awk '/Username/{print $NF}' $line >> expiredmailbox.txt
fi
done
これは私が使用してシェルスクリプトを実行するコードです。
行6:$ lineをエコーしようとすると、予期しないトークン「完了」にアクセスする構文エラーが発生します。エラーが発生します。この問題をどのように削除できますか?
答え1
これを試してみることができますか?
#!/bin/bash
find . -name 'Email*.log' | xargs grep -li 'bad password' | while read line
do
TEMPNUM=$(tail -20 "${line}" | grep -c 'bad password')
if [ "${TEMPNUM}" -gt "0" ]; then
awk '/Username/{print $NF}' "${line}" >> expiredmailbox.txt
fi
done