0

Androidシェルでテキストファイルを編集する必要があります。

このシェル スクリプトを入力します。

しかし、私のGalaxy NexusにはSedもAwkもありません。

shell@android:/ $ sed -e "s/old_pattern/new_pattern/g" file_name > modify_file
/system/bin/sh: sed: not found

うまくいきません。

テキスト ファイルに変更する方法を教えold_patternてください。new_pattern

シェルスクリプトで可能ですか?

編集されたシェルスクリプト

#!/system/bin/sh
ARGS=4
BAD=65

if [ $# -ne "$ARGS" ]
then
    echo "Usage: `basename $0` TARGET_FILE,OLD_PATTERN,NEW_PATTERN,MODIFY_FILE"
    exit $BAD
fi

old_pattern=$2
new_pattern=$3
modify_file=$4

if [ -f "$1" ]
then
    target_file=$1
else
    echo "\"$3\" Does not exist."
    exit $BAD
fi

exit 0

解決 :

shell@android:/ $ while read STRING
>do
>echo "${STRING//old_pattern/new_pattern}" >> modify_file_name
>done < target_file_name
shell@android:/ $ 
4

1 に答える 1

1

purebashでは可能ですが、大きなファイルでは非常に遅くなります。

while read STRING
do
    echo "${STRING//old_pattern/new_pattern}" >> modify_file
done < file_name

ps。ああ、あなたのシェルはbash. ただのようですsh。では動作しませんsh

于 2012-07-03T08:25:40.157 に答える