■掲示板に戻る■ 1- 最新50

unixの達人の方に質問です。

1 :まるでだめを :2001/01/24(水) 19:50
あるディレクトリにある、全てのhtmlファイル内にある
文字列を全て書き換えるにはどうすればいいですか?

例えば、a.html内のtestという文字列をtest2に変更するには
下記のようにすればよいと思います。

sed -e 's/test/test2/g' a.html > b.html >> a.html

ただし、全てのhtmlファイルとなるとどうやればいいのかが
思いつきません。スクリプトを書かないと無理ですかね。

2 :ベタな方法だと :2001/01/24(水) 19:54
% perl -pi -e 's/test/test2/g' *.html

3 :ベタな方法だと :2001/01/24(水) 19:56
sed に perl -i 同等のオプションはありません。
俺のようにどうしても perl を使うのに(無意味な)抵抗を感じるのなら、
sh スクリプトでも書いてください。

4 :名無しさん@お腹いっぱい。 :2001/01/24(水) 20:00
へー、そんなラクな方法あったんだ。オレはわざわざ
for i in *.html; do mv $i /tmp/hoge$$; sed -e 's/test/test2/g' /tmp/hoge$$ > $i; done
とかやってた。

5 :1です :2001/01/25(木) 00:29
ありがとうございました。
参考になります。とりあえず、sedとperlの本を買って勉強します。
unixが使えますといえるようなレベルになりたい。

6 :名無しさん@お腹いっぱい。 :2001/01/25(木) 09:55
fj.comp.lang.perl で、10日前にほとんど同じ質問があったな。
同一人物か?
シンクロニシティか?
単なるFAQなのかー?

7 :名無しさん@お腹いっぱい。 :2001/01/25(木) 10:23
>>6
宿題でしょ


8 :名無しさん@お腹いっぱい。 :2001/01/25(木) 10:50
bashでif-else教えて。
if [ aa ]; then
 bb
else if [ cc ]; then
 dd
else
 ee
fi
でエラーでる。
if-elseは
if
else
fi
しか使えないのか?(なわけない。
if
else if
else if
else if
else
fi
は?


次100 最新50
名前: E-mail (省略可) :

read.cgi ver5.26+ (01/10/21-)