68user's page 掲示板

Prev< No. 4327〜4335> Next  [最新発言に戻る] [過去ログ一覧]
No. 4327 # awk初体験。 2005/10/26 (水) 14:54:35
シェル内にて以下の記述を入れるとエラーが発生します。

■エラー発生箇所
cat ./temp.txt | awk 'BEGIN{FS=","}{if(match($1,"^${_XXX_}")!=0){print $0}}' > ./test.csv

■出力エラー
awk: There is a regular expression error.
                ?, *, or + not preceded by valid regular expression
  The source line number is 1.
  The error context is
                                  >>> BEGIN{FS=","}{if(match($1,"^${_XXX_}") <<<

"^${_XXX_}"の部分がエラーとなっているようですがここでは変数は使用できないのでしょうか?

No. 4328 # 68user 2005/10/27 (木) 11:45:32
>>4326 SSL初心者
「OS 10048」で検索した結果の 1番目に出てくるのがおそらく答えです。
    http://www.google.co.jp/search?q=OS+10048&start=0&start=0&hl=ja&lr=lang_ja

>>4327 awk初体験。
ウチの環境ではエラーにならないのでよくわかりませんが、
    ${_XXX_}
って変数のつもりで書いてるんですよね? どこで ${_XXX_} に値をセット
しているのですか?

もしシェルスクリプトでシェル変数や環境変数にセットしているのなら、
引数全体を '' で囲んでいるので置換されません。というわけで

    cat ./temp.txt | awk 'BEGIN{FS=","}{if(match($1,"^'${_XXX_}'")!=0){print $0}}' > ./test.csv

などと ${_XXX_} を外に出します。

No. 4329 # 68user 2005/10/27 (木) 11:58:11
>>4323 ミケフォ
> 『UNIXの部屋』の localtime(3) のサンプルコードにある
> tm_timeの一連の変数参照が間違っています。
ありがとうございます。bugid 18 として登録しました。
    http://x68000.q-e-d.net/~68user/bugnote/viewbug.php?projectid=1&bugid=18

# 登録する暇があるなら、さっさと直せと。

No. 4330 # Netboy 2005/10/27 (木) 12:02:11
すみません,昨日18時頃から本日11時まで
サーバーの通信が切れていました.

昨日13時頃に回線工事があって無事完了したのですが,
終端装置の接続が雑だったらしく,17時頃に突然接続が落ちました.

すぐ業者に連絡したのですが既に営業時間外で,
朝まで修理を呼べませんでした.
本日11時に業者が来て直りました.

ご報告まで.

No. 4331 # キック 2005/10/27 (木) 16:56:13
お世話になります。

C言語でHTTPクライアントを作成してますが、HTTPSの場合のポート番号が
サイトを探しても見つからないですが、ご存知でしょうか?
よろしくお願い致します。

No. 4332 # 68user 2005/10/27 (木) 17:12:26
>>4330 Netboy
対処いただきありがとうございます。IP アドレスの件はもう少々お待ちください。

>>4331 キック
「https ポート番号」で検索したら一番最初に出てきます。
    http://www.google.co.jp/search?q=https+%E3%83%9D%E3%83%BC%E3%83%88%E7%95%AA%E5%8F%B7&hl=ja&lr=lang_ja

No. 4333 # キック 2005/10/27 (木) 17:19:59
>>4332 68user

ありがとうございます。
初歩的ですみません(^ ^;)>

No. 4334 # hagu 2005/10/28 (金) 10:37:09
シェルで、ftpを自動で実行しています。
ftpの接続、ログインの判定や、ファイルのput/getの判定
ができたか判断したいのですが、できるのでしょうか。
エラーが発生したら、「exit 1;」などで終了させて、その
ステータスを判断するといったことはできないのでしょうか。

-----------------
ftp -v -n ${SERVER} <<END >/dev/null
user ${FTP_USER_ID} ${FTP_PASSWORD}
cd ${FTP_DIRECTORY}
lcd ${LOCAL_DIRECTORY}
get ${GET_FILE}
bye
END

環境:
    Solaris8i
    Bシェル

No. 4335 # awk初体験。 2005/10/28 (金) 17:15:32
No. 4327 で質問させていただきました。
変数はシェル内で実行していました。
そのため""で括った所上手くいきました。
ご回答ありがとうございます。

さらに別の質問させてください。
カンマ及びスラッシュを区切り文字としたいのですが…
-FオプションやFS=の指定で複数の区切り文字を指定することはできるのでしょうか?

Prev< No. 4327〜4335> Next  [最新発言に戻る] [過去ログ一覧]