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

レス数が950を超えています。1000を超えると表示できなくなるよ。

くだらない質問はここに書き込め!なんでもアリ3

[475:デフォルトの名無しさん (01/11/04 08:45)]
別スレから質問を移動しました。


すみません。
シェルに関して初歩的なことで質問です。
makefileの中でsedを使ってるのですが、

 cat foo1 | sed -e 's/XXX/${ABC}/g' > foo2

このような処理がやりたいときに、
${ABC}の中にスラッシュが含まれているときは
どうすればいいのでしょうか?
sedに渡される文字列は当然変数の中身を展開したあとのものであるため、
エラーが出てしまいます。

よろしくお願いします。
環境はcygwin1.3.3です。


[476:名無しさん@お腹いっぱい。 (01/11/04 08:55)]
>>475
ABC=`echo $ABC | sed 's/\\//\\\\\\//g'`
でどうかね。他によい方法がありそうだけど。


[477:名無しさん@お腹いっぱい。 (01/11/04 08:57)]
>>475
sed -e "s,XXX,${ABC},g"


[478:デフォルトの名無しさん (01/11/04 08:59)]
>>476
ありがとうございます。
とりあえず、こっちに
http://www-6.ibm.com/jp/developerworks/linux/010216/j_l-sed2.html
セパレータを変更する例がありました。
's:/XXX:${ABC}:/g'
こんなことが出来るのは初めてしりました。
476さんのやり方は\マークがいっぱいあってよくわかりません、、、鬱だ


[479:デフォルトの名無しさん (01/11/04 09:00)]
>>477
どうもありがとう


[480:476 (01/11/04 09:11)]
>>477
うそー前に sed 's|foo|bar|g' ってやってダメだったので、
sed ってばあたまわるーいって思ってたよ。今手もとで試して
みたらできたので、そのときは何かミスしてたんだね。勉強に
なりました。

>>478
まずは / を a に置換する 's/\//a/g'。
/ を \ に置換する 's/\//\\/g'。
/ を \/ に置換する 's/\//\\\//g'。
それを `` で囲むときに \ が倍になる。

…って、俺、説明下手だな。


[481:名無しさん@お腹いっぱい。 (01/11/04 11:30)]
あの〜、非常に厨房な質問なのですが、
AirH゛で本当にUNIX使えるんですか???
何か、カタログにはWindowsとMacにしか対応していないようなのですが…。
だけど、どこかで聞いた話ではAirH゛をUNIXで使っているという話、聞いていますし…。
もし使えるだったら、98ノートでもUNIXで使えるのでしょうか???


[482:名無しさん@お腹いっぱい。 (01/11/04 11:35)]
なんか同じ書き込み昨日も見たな


[483:名無しさん@お腹いっぱい。 (01/11/04 11:38)]
>>481
うぃ〜
http://www.google.com/search?q=Linux+OR+FreeBSD+AirH%22&lr=


[484:名無しさん@お腹いっぱい。 (01/11/04 14:35)]
>AirH゛で本当にUNIX使えるんですか???
AirH"でUNIXは使えないでしょう

トカイッテミル


次10 前10 最新10
NAME:MAIL:

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