0
#!/bin/bash
declare -A keyPair
while IFS=, read key value; do
keyPair[$key]=$value
done <$2
while read line; do
for char in $line; do
decoded=${keyPair[$char]}
echo -n "$decoded"
done
done <$1
これは私のコードです。私はファイルから読み込み、連想配列のファイルに対応する単語を出力するようにしています(例:AA:{waste:run}、プログラムは 'waste'のすべてのインスタンスを 'run'に置き換えます) 。私は新しい行なしで出力をエコーするようにしています。私はecho -nで動作すると仮定していますが、コンソールは何も出力しません。しかし、私は-nなしでちょうどエコーと同じスクリプトを実行した場合、私のプログラムは以下を出力しますBashエコーが印刷されない
zoo
garage
water
mountain
run
father
zoo
underwater
fast
run
walk
foo
fast
father
私はそれがこの
zoo garage water mountain
run father zoo underwater fast
run walk
foo fast father
のように見えるように、任意の助けを、それをしたいと思います感謝する。どうもありがとうございました。
DOSの行末については、スクリプトをチェックしてください。 http://stackoverflow.com/tags/bash/infoを参照してください。 – chepner
うーん、私はそのトリックをしたと思う。私はDOSの行末を持っていました。ありがとうございました。 –