68user's page 掲示板

Prev< No. 3501〜3550> Next  [最新発言に戻る] [過去ログ一覧]
No. 3501 # けんおお 2004/01/02 (金) 07:07:10
あけましておめでとうございます。
朝早くから失礼いたします。

このページは、EmacsLipsでネットワークプログラミングについて
ぐぐっていたら、たどり着きました。

早速一つ質問させてください。
telnetでウェブサーバからファイルを取ってこようとしたところ、
GET /hoge.rdf HTTP/1.0
で、404になってしまいます。ブラウザやwgetだと取ってこれます。
こういう場合は、どのようにすればいいのでしょうか?

# あと、私事で恐縮なのですが、SEGA BBSのログを発見したので、
# ためしに名前を入れてみたらおもいっきりヒットしました。(^_^;)
# いやー懐かしい。とにかく懐かしいです。(;_;)ホロホロ
# ちなみに、SEGA BBSのトップにあるsagabitoへのリンクって
#「くにおにく」さんのページですよね?
# 当時、「くにおにく」さんに大変世話になった記憶があります。
# 無事で過ごされているようでしたらなによりです。
# 以上、私事で失礼しました。

No. 3502 # けんおお 2004/01/03 (土) 00:30:54
>>3501 けんおお
すみません。自己解決しました。
GET /hoge.rdf HTTP/1.1
Host:hoge.jp
Connection:close
でいけました。
最近は、HTTP/1.0ではファイルを取ってこれなくなったんでしょうか?
それでは、失礼します。

No. 3503 # ShinoP 2004/01/05 (月) 10:20:47
はじめまして。
検索辿ってこちらを拝見させていただきました。

早速質問させていただきたいのですが、
SunのUltra10 SPARKマシンで、SunOSのデスクトップに
ファイルを配置するためにデスクトップの絶対パスを調べたいのですが、
Windowsのデスクトップのようにショートカットの絶対パスを辿ろうと
しても一向に見つかりません。

もしかしてSunOSのデスクトップ(ワークステーション?)上のショートカットは実体のない参照(リンク)でしかなくて、デスクトップの絶対パスなんてものは存在しない(ファイルを置くことはできない)のでしょうか。

よろしくご教示お願いします。

No. 3504 # 68user 2004/01/05 (月) 15:23:45
>>3498 ポッしブル
> チャットにおいて選んだユーザーにだけメッセージを送るというのは
> 一体どうすれば可能なのですか?
名前と IP アドレスの一覧のテーブルを内部に持っておいて、選択
された名前から対応する IP アドレスを得て、その IP アドレス宛に
メッセージを送信すれば可能でしょう。

要は、そういう動作をするように、あなたがプログラムを組まなく
てはならないということです。


>>3501 けんおお
>>3502 けんおお
GET /hoge.rdf HTTP/1.0 が 404 not found なのは、
バーチャルホストな web サーバだったからでしょう。
    http://x68000.startshop.co.jp/~68user/net/http-4.html
        さらなる改善点・バーチャルホストに対応
を読んでください。

HTTP/1.1 で OK だったのは、HTTP/1.1 だと Host ヘッダが
必須なため、結果的にバーチャルホストに対してホスト名を
提示することができたからだと思われます。

> # ちなみに、SEGA BBSのトップにあるsagabitoへのリンクって
> #「くにおにく」さんのページですよね?
そうです。でも今は公開されていないようですね。1年ほど前に
BBS があることは確認しましたが、今は見つけられません。


>>3503 ShinoP
CDE ですか? CDE をまともに使ったことはありませんが、
Solaris2.6+CDE 環境で試してみると、
    ~/.dt/Desktop/.!dtdesktop
    ~/.dt/sessions/current/.!dtdesktop
などのファイルに、リンク先のフルパスが保存されているような
気がします。

No. 3505 # ShinoP 2004/01/05 (月) 15:42:24
>>3504 68user
いえ、リンク先のフルパスが知りたいのではなく、目的は
「デスクトップ」自体の絶対パスを知りたい、ということです。
少々説明が足りませんでした。

その手段としてWindowsと同じ感覚でショートカットのリンク先ではなく
ショートカット自身の絶対パス
(Windows2000ならば
"C:\Documents and Settings\administrator\デスクトップ" で表されるような)
を調べようとしたのですが、
どうにも見つかりません。

これは現在疑ってる通り、ショートカット自体には実体がなく、
したがってデスクトップに実体ファイルを配置する、
ということは不可能だということなのでしょうか。

No. 3506 # 68user 2004/01/05 (月) 16:27:21
>>3505 ShinoP
そういうことであれば

> ショートカット自体には実体がなく、したがってデスクトップに
> 実体ファイルを配置する、ということは不可能
だと思います。

ただしわたしは CDE は常用しておらず、今回初めて CDE のヘルプを
見たくらいなので、間違っている可能性は多分にあります。

No. 3507 # ShinoP 2004/01/05 (月) 20:07:12
>>3506 68user
CDEのデスクトップショートカットはシンボリックリンクみたいなもの、
ということのようですね。
断念して代替パスを設定する方向で進めようと思います。
ありがとうございました。

No. 3508 # ブラウン 2004/01/06 (火) 02:26:13
>>3500 zsh
>取得したいのがEOFだとすると
>getlineの戻り値見るくらいしか思いつきません。
>普通にENDに記述じゃダメですか?
>或いは行数+フィールド番号でファイルの最後をチェックするとか
getlineの戻り値ですか。
ファイルの総行数を取得して、読み込んだ行数と比較するかと思う
のですが。

>或いは行数+フィールド番号でファイルの最後をチェックするとか
ちなみにどうするのですか。

>普通にENDに記述じゃダメですか。
とはどういう意味ですか。
ファイルの最後にENDを付けた様式ということですか。
それでしたら無理です。

No. 3509 # 68user 2004/01/06 (火) 22:54:37
>>3508 ブラウン
>> 普通にENDに記述じゃダメですか。
> とはどういう意味ですか。
    {
            行ごとの処理
    }
    END {
            終了時の処理
    }
という書き方ではどうか、ということでしょう。これは
awk の設計思想に沿った最も自然な書き方だと思います。

それがダメなのなら、わたしも getline の戻り値を
取るのがよいと思います。

No. 3510 # zsh 2004/01/11 (日) 14:43:24
>>3509 68user
フォローありがとうございます。

>>3508 ブラウン
>ファイルの総行数を取得して、読み込んだ行数と比較するかと思う
>のですが。
それは以前提示したスクリプトの方法ですが、
それだと最終行かどうかの判断であり、EOFかどうかの判断ではありません。

>>或いは行数+フィールド番号でファイルの最後をチェックするとか
>ちなみにどうするのですか。
あまり意味のない方法ですので、気にしない方が良いと思います。

No. 3511 # ブラウン 2004/01/14 (水) 12:42:42
シェルについて2点教えて下さい。
1.フィールドの区切がカンマ「,」となっている行から
    例えば、
    山田 太郎,ヤマタ゛ タロウ,Yamda Taro,18,1760/12/24
    山田 花子,ヤマタ゛ ハナコ,Yamda HANAKO,18,1760/12/24
    から、
    先頭のフィールドかあとか、 フィールドの3,4,5を取り出したいのです
    が、awkを使う以外にないのでしょうか。

2.シェルで、今日から10日前の日付を取得することはできるのでしょうか

環境は、HP-UX11.00、Bシェルです。

赤色の文字は 「Windows 機種依存文字」か、いわゆる「半角カナ」です。 この掲示板では自動変換されますが、今後は使用しないで下さい

No. 3512 # ブラウン 2004/01/14 (水) 12:45:26
>>3511 ブラウン
シェルについて2点教えて下さい。
1.フィールドの区切がカンマ「,」となっている行から
        例えば、
        山田 太郎,ヤマタ゛ タロウ,Yamda Taro,18,1760/12/24
        山田 花子,ヤマタ゛ ハナコ,Yamda HANAKO,18,1760/12/24
        から、
        先頭のフィールドから順にとか、フィールドの3,4,5を取り出したい
        のですが、awkを使う以外にないのでしょうか。
        awkを使わないで出来る方法と、awkを使ってできる方法を教えて
        下さい。

2.シェルで、今日から10日前の日付や、指定した日付の10日前を
    取得することはできるのでしょうか

環境は、HP-UX11.00、Bシェルです。

No. 3513 # 68user 2004/01/14 (水) 13:09:06
>>3511 ブラウン
質問したら必ず結果を書いてください。
      http://x68000.startshop.co.jp/~68user/cgi-bin/wwwboard.cgi?howtouse

No. 3514 # hanzen 2004/01/14 (水) 21:57:22
賢いやり方か、上手いやり方か分からないが
こうすればできる。

--------------------------------------------
#!/bin/sh

back_to_day() {
        case $MM in
            0)
                MM=12
                MAX=31
                ;;
            1|3|5|7|8|10)
                MAX=31
                ;;
            4|6|9|11)
                MAX=30
                ;;
            2)
                if [ `expr $YYYY % 4` -eq 0 ]; then
                    MAX=29
                else
                    MAX=28
                fi
                ;;
        esac
}

YYYY=`echo $1 | cut -c1-4`
MM=`echo $1 | cut -c5-6`
DD=`echo $1 | cut -c7-`

DD=$((DD-7))
if [ ${DD} -le 0 ] ; then
        MM=$((MM-1))
        if [ ${MM} -eq 0 ] ; then
                YYYY=$((YYYY-1))
                back_to_day
                DD=$((DD*-1))
                DD=$((MAX-DD))
        fi
fi

printf "%d%02d%02d\n" $YYYY $MM $DD

exit 0

No. 3515 # zsh 2004/01/15 (木) 20:20:12
>>3512 ブラウン
区切り文字がカンマで、awkを使用しない場合。
------
$ cat data.txt
山田 太郎,ヤマタ゛ タロウ,Yamda Taro,18,1760/12/24
山田 花子,ヤマタ゛ ハナコ,Yamda HANAKO,18,1760/12/24
$ cat sam1.sh
#!/bin/sh

OIFS="$IFS"
i=0
while read line ; do
                IFS=","
                i=`expr $i + 1`
                set -- $line
                j=0
                while [ $# -gt 0 ] ; do
                                j=`expr $j + 1`
                                echo "$i - $j : $1"
                                shift
                done
                IFS="$OIFS"
done < data.txt
$ sh sam1.sh
1 - 1 : 山田 太郎
1 - 2 : ヤマタ゛ タロウ
1 - 3 : Yamda Taro
1 - 4 : 18
1 - 5 : 1760/12/24
2 - 1 : 山田 花子
2 - 2 : ヤマタ゛ ハナコ
2 - 3 : Yamda HANAKO
2 - 4 : 18
2 - 5 : 1760/12/24
------

指定された日付の10日前の日付を取得するのは面倒そうなのでパス。
単純に今日から10日前を取得する方法については、
下(↓)を良く読みましょう。
http://x68000.startshop.co.jp/~68user/unix/prgmemo.html#date

No. 3516 # ブラウン 2004/01/16 (金) 09:20:37
>>3515 zsh
ありがとうございます。
行の編集についてはできました。

しかし、日付の操作については、
http://x68000.startshop.co.jp/~68user/unix/prgmemo.html#date
を参考にしてやって見ました。
タイムゾーンを設定して、URLの例にあるのでは、上手くいったのですが
% env TZ=JST+15 date (1日前の時刻を表示)
% env TZ=JST-33 date (1日後の時刻を表示)

2日前では、
-9+48=39
% env TZ=JST+39 date
は上手く行きませんでした。
環境は、HP-UX11.00、Bシェルです。

No. 3517 # せんべい [E-mail] 2004/01/19 (月) 13:15:09
初めて投稿いたします。
UNIXのコマンドで、split というファイル分割コマンドがありますが、分割後のファイルをWindowsで結合させるための、MS-DOS コマンド、あるいは、フリーのソフトを知らないでしょうか。

No. 3518 # 68user 2004/01/20 (火) 10:21:31
>>3517 せんべい
> 分割後のファイルをWindowsで結合させるための、MS-DOS コマンド
copy a.txt+b.txt+c.txt out.txt でできたような気がします。

> あるいは、フリーのソフトを知らないでしょうか。
http://www.so-net.ne.jp/download/win/util/file/spl_mrg/ など。

No. 3519 # 初心者 2004/01/20 (火) 16:51:15
はじめまして,unix初心者です,教えて下さい。
異常終了させてしまい,1つのハードがmountされません。fsckを使って修復しようとしたのですが,エラーメッセージによると部分的なセクターが破損しているため修復できないとの内容でした。破損している箇所だけのフォーマットは可能なのでしょうか?もしあれば方法を教えて下さい。お願い致します。

No. 3520 # 68user 2004/01/20 (火) 21:24:58
>>3519 初心者
詳しくないのでなんともいえませんが (これまで fsck でこけた
経験がないので)、少なくとも以下の情報は必要でしょう。
    - OS 名とバージョン
    - ファイルシステム名 (ufs, ext2 など)
    - 正確なエラーメッセージ (エラーメッセージで検索できるよう原文を提示する)

検索のキーワードとしては「スーパーブロック」ですかねぇ。

No. 3521 # yabu 2004/01/20 (火) 22:42:46
unixのfindコマンドについて教えて下さい。
findを使用するとファイルの検索ができますが、
自分がいるカレントのみを検索し、その配下にあるディレクトリ
を検索したくないのですが、どうすれば可能でしょうか。

例えば、
現在位置
cd /tmp/tool/bin
/tmp/tool/bin 入るとします。
find .. -name ".log" -type f -print
と行うと、tool及び、bin配下やよのたのディレクトリを検索

find .. ! -depth -name "*.log" -print
と行うと検索しない。
1つもだった、ところのファイルのみを検索したい

No. 3522 # 68user 2004/01/20 (火) 23:34:40
>>3521 yabu
-maxdepth 1 でいけるでしょうが、-maxdepth に対応
していない find もあります。

単にファイル名でマッチさせたいだけあれば、
        % echo *.log
でもいいでしょう。

No. 3523 # moko 2004/01/21 (水) 00:08:04
Sunでaliasの設定でつまづいてます。。(alias rm="rm -i")
シェルはshなので.profileに記述しましたが効きません。

ネット検索しましたがshでのalias設定なしとありました。

shでのalias設定はどう行えばいいでしょうか?
ご教授お願いします

No. 3524 # yabu 2004/01/21 (水) 13:17:13
>>3522 68user

>-maxdepth 1 でいけるでしょうが、-maxdepth に対応
>していない find もあります。
HP-UX、SunOSともに対応していませんでした。

>単にファイル名でマッチさせたいだけあれば、
> % echo *.log
>でもいいでしょう。
でやらせていただきました。

No. 3525 # external 2004/01/22 (木) 16:39:29
IE などブラウザ上のボタンなどの操作を外部からしたいのですがしたいのですが、可能でしょうか?

例、VC++ のソフトで、Yahoo の検索を検索キーワードを入力や検索ボタンを押したい。
例、証券会社のHPで定期的に株価更新のため株価ボタンを押す。

などです。
ここの主旨から外れるかも知れませんが、宜しくお願いします。

No. 3526 # 68user 2004/01/23 (金) 02:53:00
>>3523 moko
まずは
      $ . $HOME/.profile
としましょう。それで alias が効かないなら .profile
の書き方が悪い。alias が効くなら .profile が読み込まれ
ていないか、.profile 読み込み後に unalias されている
んでしょう。

>>3525 external
詳しいところは知らないので、キーワードだけ並べておきます。
      COM (Component Object Model)
      OLE (Object Linking and Embedding)
      ActiveX

No. 3527 # yuki 2004/01/26 (月) 17:55:06
初歩的な質問ですが、Solarisのhostsについて教えて下さい。
他の端末と通信する為には/etc/inet/hostsにIPを書くと思っています。
でも、/etc/hostsにも同じhostsがあり、両方直しています。
/etc/hostsには/etc/inet/hostsと違った意味があるのでしょうか。
宜しくお願いします。

No. 3528 # 68user 2004/01/26 (月) 18:04:45
>>3527 yuki
http://www.freebsd.org/cgi/man.cgi?query=hosts&manpath=SunOS+5.9
    NOTES
        /etc/inet/hosts is the official SVR4 name of the hosts file.
        The symbolic link /etc/hosts exists for BSD compatibility.

というわけで、同じでしょう。

No. 3529 # kai 2004/01/26 (月) 18:58:03
Volumeの初期化に関して,どうのような操作をすれば良いか教えてください。digital unix 4.0

No. 3530 # momo 2004/01/27 (火) 16:07:08
crontabを実行した時間がわかるようにするためにはどのような書き方をしたらよいかわかりません。教えていただけないでしょうか。
よろしくお願いいたします。

No. 3531 # ken 2004/01/27 (火) 23:04:41
こんばんは。
Perlのほうが文字列処理などが書きやすい、でもCのほうが速度が速かったりするなどの理由から、XSを使用して二つの言語を合わせてみようと思いました。
そこで、CのヘッダをXSにかけてからPerlを実行したのですが、
"Your vendor has not defined Prime macro Prime"
というエラーが出てしまいます。

XSによって生成されたのはPrimeというディレクトリで、その中にあるPrime.pmに、Perlから第一引数として数字を渡すものでした。
Perlのほうからは、
Prime::Prime($ARGV[0])
として呼び出しましたが、何がいけなかったのか、教えていただきたく思います。
よろしくお願いします。

No. 3532 # Hiro 2004/01/28 (水) 00:54:41
AIXに付いて教えて!
AIXマシンでは、gettimeofday()関数が使えない!
よくよく調べると、コンパイル時、XOPEN_SOURCEを指定している為
である事が判ったが、XOPEN_SOURCEを外す訳にもいかず困ってます。
gettimeofday()関数と同じ機能で、置き換えられる関数ってないでしょうか?

No. 3533 # 68user 2004/01/28 (水) 02:06:01
>>3529 kai
Volume ってなんですか? 音量のことですか? であれば
わかりません (ioctl とか使うんですかね)。

>>3530 momo
1. cron から実行するスクリプト内でファイルに時刻を記録する
2. * * * * * date>>/foo/bar/log; command とする。
3. /var/cron/logs などにあるログを見る。

>>3531 ken
XS はよく知りませんが、perl のバージョンも、何をどうやったの
かも書かれていないので何ともいえません。

下記は perl 5.005_03 の例ですが、まずはここからでしょう。

    % h2xs -A -n Prime
    % cd Prime
    int
    Prime(num)
            int num;
    CODE:
            RETVAL = 2*num;
    OUTPUT:
                RETVAL
    % perl Makefile.pl
    % make
    hoge.pl を作成
    % cat hoge.pl
    use ExtUtils::testlib;
    use Prime;
    print Prime::Prime(123),"\n";
    % perl hoge.pl
    246

>>3532 Hiro
なぜ XOPEN_SOURCE が指定されていると gettimeofday が使えない
のかよくわかりませんが、古い形のプロトタイプ宣言が〜とかいう
話ではないかと思うので、mygettimeofday.c を作って、
        #include <sys/time.h>
        int gettimeofday (struct timeval *, void *) #undef XOPEN_SOURCE

        int mygettimeofday (struct timeval *Tp, void *Tzp){
                return gettimeofday(Tp, Tzp);
        }
とするとか。

No. 3534 # 68user 2004/01/28 (水) 02:10:03
>>3533 68user
> int gettimeofday (struct timeval *, void *) #undef XOPEN_SOURCE
        int gettimeofday (struct timeval *, void *);
        #undef XOPEN_SOURCE
のタイプミスです。

No. 3535 # ken 2004/01/28 (水) 02:15:32
さきほどXSのことを質問させていただいたのですが、なんとか解決しました(汗
どうやら、根本的に思い違いをしていたのが原因のようで...。
わざわざのご回答、ありがとうございます。
もう少しぼくが早く解決して書き込んでいれば良かったのですけどね。

No. 3536 # yuki 2004/01/28 (水) 13:36:44
>>3528 68user
The symbolic linkでしたか。
ぜんぜん気がつきませんでした。有難うございました。

No. 3537 # タカ 2004/01/29 (木) 14:52:55
はじめまして。タカと申します。
Perl関連について御教授ください。
Windows端末にてActivePerl-5.8.2.808-MSWin32-x86をインストールし
Perlを作成しております。
そこで、PerlでExcelファイルに出力するプログラムを
作ろうと思っております。
その為、Spreadsheet-WriteExcel-0.42モジュールを、
ダウンロードしました。
本モジュールはWindowsでも機能すると表示されているのですが、
どうやって使用すればいいのか分かりません。
Spreadsheet::WriteExcel version 0.33(日本語訳)の
HPを見ているのですが、私の知識不足で不明です。

もしご存知であれば御教授いただきたいのですが、
よろしくお願いいたします。

No. 3538 # 68user 2004/01/29 (木) 15:15:28
>>3537 タカ
http://member.nifty.ne.jp/hippo2000/perltips/module_install.htm
によると、ActivePerl の場合は PPM なるものを使うそうです。

# わたしは使ったことはありません。

No. 3539 # タカ 2004/01/29 (木) 15:56:06
ありがとうございました。
ちょっと試してみます。

No. 3540 # has 2004/01/29 (木) 17:02:12
クッキーに関する↓の冒頭でRFCに盛り込まれていないとありますが、
どうも2109で触れているそうですよ。
http://x68000.startshop.co.jp/~68user/webcgi/cookie.html

参考にさせていただいたサイト:
http://www.nonki.net/technical/report/http-cookie/
http://www.ietf.org/rfc/rfc2109.txt

No. 3541 # 68user 2004/01/29 (木) 18:48:20
>>3540 has
ありがとうございます。とりあえずそこだけ直しておきます。

> どうも2109で触れているそうですよ。
RFC 2109 は obsolete で、今は RFC 2965 です。
      http://www.studyinghttp.net/rfc_ja/rfc2965_ja.html

でもまぁ、Set-Cookie2 は全然流行っていませんけどね。

No. 3542 # 右院堂 2004/02/01 (日) 21:42:44
はじめまして 右院堂 と申します。
いきなり質問で エゴ丸出しで申し訳ないですが
ASP には Response.Buffer = True というのがあって、
ある html の form から 呼ばれた asp が 呼び元へ 自分の form を
Response.Redirect で 返す時、Response.Redirect が実行されるまで HTMLヘッダーの出力を引き伸ばすことが出来ます。
これをやらないと HTMLヘッダーが 自分自身として Redirectされる前に出力されてしまうからです。
Perl では これに相当する記述はあるんでしょうか。

No. 3543 # 68user 2004/02/01 (日) 22:11:49
>>3542 右院堂
ASP はよく知りませんが、素の perl を使う場合は (そういう機能を
持つモジュールを使わない限りは) 相当する機能はないです (そういう
機能を持つモジュールの存在は知りません)。

      $buf .= "出力文字列1";
      $buf .= "出力文字列2";
      ...
      print $buf;

や、

      open(STDOUT, "> /foo/bar/tmp.$$");
      print "出力文字列1";
      print "出力文字列2";
      ...
      close(STDOUT);

      open(IN, "/foo/bar/tmp.$$");
      print <IN>;
      close(IN);

などと自分でバッファに保存し、最終的に出力するのが
よいと思われます。

No. 3544 # yuki 2004/02/04 (水) 17:58:59
ポートに関しては初心者です。
すいませんが、ポート番号について教えて下さい。

Solarisを使用していますが、ポート番号は任意の決め事ですか?
現在使用しているSolarisは下記設定になっているようです。
WEBサーバはポート=80、FTP=20、プリントサーバ=9100

これらは、標準で決まっているのでしょうか?
また、相手側を意識せず勝手にきめてもよいのでしょうか?

他に、ポートの設定をみる方法とかありましたらご教授下さい。
宜しくお願いします。

No. 3545 # 68user 2004/02/04 (水) 18:10:08
>>3544 yuki
> Solarisを使用していますが、ポート番号は任意の決め事ですか?
おおまかな指針はありますが、任意です。

> WEBサーバはポート=80、FTP=20、プリントサーバ=9100
デフォルトではそのような設定になっていますが、ほとんどの
場合は (サーバソフトウェアが対応していれば) ポートは変更
できるでしょう。ポート変更方法は各サーバソフトウェアの
マニュアルに書いてあるはずです。

> また、相手側を意識せず勝手にきめてもよいのでしょうか?
標準的でないポートを使用するよう設定変更してもいいですが、
利用者に通知しないと使うことができません。

例えば web サーバであれば
        http://www.example.co.jp/
ではなく
        http://www.example.co.jp:8080/
にアクセスするようアナウンスしないといけませんし、プリンタで
あれば自組織の環境設定手順書に
    「プリンタの設定時に、ポート xxxx を使用するように設定してください」
と書いておく必要がある、といった感じです。

というわけで、標準的でないポートを使うことはできますが、
なにかとめんどくさい、という感じです。また、外部向けの
サービスであれば、ファイアウォールで弾かれたりする危険性は
高まりますね。

No. 3546 # yosi [E-mail] 2004/02/06 (金) 12:22:43
irix使ってますが、ls -lでfileの詳細を見ると、拡張子の後に*が表示されてます。これはなにを意味するのでしょうか?

No. 3547 # 68user 2004/02/06 (金) 22:17:48
>>3546 yosi
実行ファイルと思われます。ls の -F オプションの説明を読んでください。

No. 3548 # つくも 2004/02/07 (土) 15:13:42
UNIXのCシェル2点につてい教えて下さい。

1点目
以下の、a.txtファイルから第1フィールドの値を
先頭の'0' or "> 0 "のゴミを取って、10桁(先頭0なし)だけを
また、第1フィールドの文末の半角スペースや’|’を取ってとり
だしたいのですが、第1フィールはawkを使って取得できますが、
その後に編集ができません。たしか、sedの何かを使えば数字のみ
だけを取り出せたと思うのですが、浮かんできません。
教えていただけないでしょうか。

cat a.txt | awk -F"," '{ print $1 }' | sed

a.txt
09012345678,aaaa
07055593850,bbbb
9098765432,cccc
7012345678,ddddd
> 07012345679 | ,eeeee
07012345670 ,ffff

出力結果
9012345678
7055593850
9098765432
7012345678
7012345679
7012345670

2点目
Cシェルで定義ファイルに設定してある項目を読み込むには
どうしたらよいのですか。
定義ファイル
MN=ABCDEFG
FILE=/work/temp.txt

set PARM1 = `grep ^MN 定義ファイル| awk -F"=" '{ print $1 }'`
set PARM2 = `grep ^FILE 定義ファイル| awk -F"=" '{ print $1 }'`
と繰り返すかないのでしょうか。
また、何も、タブとか半角スペースから始まっている場合もあると思うの
ですが、どうすればよいのですか。

No. 3549 # zsh 2004/02/09 (月) 08:22:34
>>3548 つくも
1点目はawkのみで可能。
(古いawkではダメとかあるかも知れないけど。)
------
awk 'BEGIN {
                FS = "," ;
} {
                i = match($1,"[1-9]");
                print substr($1,i,10);
}' a.txt
------

2点目は、こんな事が許されるのか判りませんが
------
eval `awk 'BEGIN{ FS="=" }{ if(NF != 0) print "set " $1 " " $2}' param.txt`
------
大人しく定義ファイルで「set A=val」と書いて
sourceすべきだと思いますが・・・

赤色の文字は 「Windows 機種依存文字」か、いわゆる「半角カナ」です。 この掲示板では自動変換されますが、今後は使用しないで下さい

No. 3550 # zsh 2004/02/09 (月) 08:28:33
>>3549 zsh
2点目は以下の間違い。
------
eval `awk 'BEGIN{ FS="=" }{ if(NF != 0) print "set " $1 "=" $2 }' param.txt`
------

>68user様
半角カナ失礼しました。

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