#!/bin/bash
ARGS=1
E_BAD_ARGS=65
E_NO_FILE=66
if [ $# -ne $ARGS ]
then
echo "Usage:`basename $0` filename"
exit $E_BAD_ARGS
fi
if [ ! -f $1 ]
then
echo "File \"$1\" does not exist"
exit $E_NO_FILE
fi
MINSTRLEN=3
WORDFILE=/usr/share/dict/linux.words
wlist=`strings "$1" | tr A-Z a-z | tr '[:space:]' Z | \
tr -cs '[:alpha:]' Z | tr -s '\173-\377' Z | tr Z ' '`
for word in $wlist
do
strlen=${#word}
if [ "$strlen" -lt "$MINSTRLEN" ]
then
continue
fi
grep -Fw $word "$WORDFILE"
done
exit $?
使用方法:
./wstring.sh "a.bat"
输出:

1.png
