0
我必須編輯android shell中的文本文件。shell腳本搜索和替換文本文件
所以我輸入這個shell腳本。
但我的Galaxy Nexus沒有Sed,Awk也沒有。
[email protected]:/ $ sed -e "s/old_pattern/new_pattern/g" file_name > modify_file
/system/bin/sh: sed: not found
它不起作用。
如何在文本文件中修改old_pattern
至new_pattern
。
有沒有可能在Shell腳本中?
編輯Shell腳本
#!/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
解決方案:
[email protected]:/ $ while read STRING
>do
>echo "${STRING//old_pattern/new_pattern}" >> modify_file_name
>done < target_file_name
[email protected]:/ $
先生,我很抱歉,但我的shell腳本有一個錯誤。 –
你會檢查編輯腳本嗎? –
這種替換不適用於'sh'。這是'bash'功能。像往常一樣安裝了sed。嘗試檢查它,並啓動腳本作爲bash腳本(你需要改變她的爆炸)。看起來像純粹的'sh'不能代替變量值。你有沒有安裝其他的工具,例如'ed'或'awk'? – rush