68user's page 掲示板

Prev< No. 3505〜3533> Next  [最新発言に戻る] [過去ログ一覧]
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);
        }
とするとか。

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