私の英語をお願いします。Awk分割内でSedコマンドを実行する(forループ)
私は、スクリプトをシェルに新たなんだと私はそれを実行すると、awkの
# !/bin/sh
SCRIPT_DIR=`pwd`
TEXT_FIELD=$SCRIPT_DIR/Field/textField
FIELDS="code-text name-text"
echo "$FIELD" | awk '{len = split($0,t," ")
for (i=1; i<=len; i++) {
"sed -i 's/inputPlaceholder/t[i]/g' $TEXT_FIELD"
} }'
を使用して、分割した後、forループ内の各要素の文字列をコマンドを置き換えるのsedを実行しようとしている:$ sh code_sample.sh
それですエラーをスローせず、どちらも動作しません。
私を助けてくれますか?私は最も感謝しています。
EDIT
私の目標はarray[1] = "code-text"
、array[2] = "name-text"
にcode-text name-text
を読むことです。
次に、forループが1つずつ読み込まれ、各項目が指定されたファイルのinputPlaceholder
文字列に置き換えられます。
例:
入力:(ファイルで)= "コード・テキスト名テキスト"
出力ファイルされる:テキストベース>となり( "inputPlaceholder")を作成し、テキストベース>作成(「コード-text ")、code.txtとして保存し、同じロジックでname-textをname.txtに保存します。
どのように動作しますか?入力の例、期待される出力と実際の出力を示します。あなたの英語は途中で問題ないので、あなたは赦免されます。 –
いいえ。シェルは、ツールを呼び出す環境です。 Awkはテキストを処理するためのツールです。どちらがsedと呼ぶのが適切かを推測します(ヒント:awkではありません)。簡潔でテスト可能なサンプル入力と期待される出力を含めるようにあなたの質問を編集してください。あなたが正しい方法でしようとしていることは何でもお手伝いすることができます。 –
私は自分の質問を更新しました。見てください。 –