68user's page 掲示板

Prev< No. 4922〜4940> Next  [最新発言に戻る] [過去ログ一覧]
No. 4923 # べた 2008/07/10 (木) 22:27:06
>>4921 zsh
ありがとうございます。

exprやcutでの使い方ありがとうございます。
勉強になります。

No. 4924 # べた 2008/07/10 (木) 22:28:12
WindowsXP IE6.0 SP2 の別の端末から書き込みを
おこなったら以下のエラー画面が表示されました。

何かインストールされていないものがあるのでしょうか。


エラー : 内部エラーが起こりました。
http://x68000.q-e-d.net/%7E68user/cgi-bin/wwwboard.cgi の実行ができませんで
した。
おそらくCGIプログラムの不具合が原因です。

もし、こちらのファイル設定ミス・リンクミス・CGI の不具合などが原因であった場
合は早急に修正します。

の画面が表示されます。

No. 4925 # べた 2008/07/10 (木) 22:36:19
>>4918 べた
>>4921 zsh

説明ありがとうございます。

それでなのですが、ステータスが返ってくるということで、
「/usr/local/bin/iconv」を使っています。
Bシェルで実行しています。
iconvコマンドをパイプでつないで、連続で実行しています。

/usr/local/bin/iconv -f SJIS -t UTF-8 file_sjis.txt | /usr/local/bin/iconv -f UTF-8 -t UTF-16 > file_utf.txt

1回目のiconv(パイプの左側のiconv)がエラーとなったとき、
ステータスがエラーで返ってきません。
エラーを判断したいのですが、どのようにしたらエラーと判断
できるでしょうか。

/usr/local/bin/iconv -f SJIS -t UTF8 file_sjis.txt | /usr/local/bin/iconv -f UTF-8 -t UTF-16 > file_utf.txt
echo $?

iconv: conversion to UTF8 unsupported
0

”0”が返却。

/usr/local/bin/iconv -f SJIS -t UTF-8 file_sjis.txt | /usr/local/bin/iconv -f UTF-8 -t UTF16 > file_utf.txt
echo $?

iconv: conversion to UTF16 unsupported
1

”1”が返却。

No. 4926 # べた 2008/07/12 (土) 01:29:32
>>4923 べた

ありがとうございます。

$ expr $email : '\(.*\)@.*'
$ expr $email : '.*\(@.*\)$'
$ echo $email | cut -d '@' -f 1
$ echo $email | cut -d '@' -f 2

どれでも、取り出せました。

No. 4927 # 68user 2008/07/20 (日) 03:21:17
>>4925 べた
> 1回目のiconv(パイプの左側のiconv)がエラーとなったとき、
> ステータスがエラーで返ってきません。
> エラーを判断したいのですが、どのようにしたらエラーと判断
> できるでしょうか。
bash なら PIPESTATUS を使えばよいですが、sh であれば
終了ステータスは取得できないと思います。しょぼいですが、
パイプを使うのをやめるのがよいかと思います。

>>4924 べた
> WindowsXP IE6.0 SP2 の別の端末から書き込みを
> おこなったら以下のエラー画面が表示されました。
IP アドレスや発言内容などから SPAM と判定されたのかもしれません。
特に判定精度の高いものではないので、頻発するようならご連絡ください。

No. 4928 # べた 2008/07/22 (火) 21:53:41
>>4927 68user

ありがとうございます。
sh できないんですね。
出力結果がなければ、出力結果をパイプで渡さなければ
「&&」でいけるのでないかと覆いますが。

パイプを使わず個々に行います。

No. 4929 # べた 2008/07/30 (水) 00:39:04
Solaris8 なのですが、「/var/log/syslog」に、
TCPコネクションのログを出力させたいのです。
telnet、ftpなど、接続したログを出力したいの
です。
どのようにすればよいのでしょうか。

「/etc/syslog.conf」には、以下の様な記述をしています。

user.notice /var/log/syslog

syslogのデーモンも再起動したのですが、出力されません。

No. 4931 # バンガード [E-mail] 2008/08/05 (火) 10:01:38
>>4829 68user
ftpのログを取得するAIXの場合の例です。

#vi /etc/inetd.conf
(ftpのエントリーで最後に「-l」または「-d」オプションを追加)

ftp .... /usr/sbin/ftpd ftpd -l
または ftpd -d
(転送ファイル名を確認するだけであれば -l オプションの方がログが少なくて済みます)

#refresh -s inetd
(inetdデーモンをリフレッシュ)

#vi /etc/syslog.conf
(syslog設定ファイルにftpのログを取得するためのエントリを追加)

daemon.info /tmp/ftpd.log
(daemon.debugであればもう少し詳しい詳細が確認できます)

#touch /tmp/ftpd.log
(ログファイルを作成)

#refresh -s syslogd
(syslogデーモンを再起動)

No. 4932 # バンガード [E-mail] 2008/08/05 (火) 10:02:46
>>4931 バンガード
ごめんなさい。
4929へのコメントでした。

No. 4933 # べた 2008/08/19 (火) 21:25:01
>>4932 バンガード
お礼が遅れ申し訳ありません。
ご説明ありがとうございます。

どちらにしてもデーモンの再起動(リフレッシュ)が
必要なんですね。

No. 4934 # べた 2008/08/19 (火) 21:28:29
Solaris8 なのですが、シェルを実行する際、
./シェル名としないと起動できません。

「./」で起動するにはどうしたらよいのでしょうか。

「./」で起動できるアカウントがあるので、違いを比べてみると
PATHの変数が異なっていました。

PATH=./:/usr/bin・・・・・
とか
PATH=・・・・/usr/bin:

PATH変数の中に、「./」の設定がある。
PATH変数が「:」で終わっている。

「./」を指定しないと動かないアカウントは、両方がない状況と
なっています。
どのように環境変数を設定すればよいのですか。

No. 4935 # zsh 2008/08/20 (水) 12:07:16
>>4934 べた
> 「./」で起動するにはどうしたらよいのでしょうか。
「./」なしで起動したいということでしょうか?
PATH 環境変数に ./ を含めれば可能ですが、お勧めはしません。
特定のディレクトリにスクリプトを集めて、そのディレクトリを
PATH 環境変数に含める方がよいと思います。

なお、同じ名前のコマンド(スクリプト)が複数のディレクトリに
存在する場合は、PATH 環境変数で先に見つかったコマンド
(左側のパスから順番に探しに行きます)が実行されます。

No. 4936 # 68user 2008/08/21 (木) 02:14:31
>>4934 べた
PATH に . を含めない理由は以下のとおり。

・セキュリティホールとなる。PATH=.:/bin:/usr/bin:/usr/local/bin となっていて、
    cd ~foo; ls としたときに /home/foo/ls が存在したら、そのプログラムを実行
    してしまう。cd /tmp; ls も同様。そのプログラムがどんな悪さをするかはわからない。

・PATH に . を加えると、カレントディレクトリによって実行されるコマンドが異なる
    可能性があるため、説明がめんどくさいし、はまりやすくなる。例えば /bin と
    /usr/bin に同名のコマンドがあるとして、コマンド foo をタイプしたときに、
        - カレントディレクトリが /usr/bin の場合は /usr/bin/foo が実行される
        - カレントディレクトリが /usr/bin 以外の場合は /bin/foo が実行される
    というのはわかりづらい。

・csh・tcsh・bash・zsh など、今どきなシェルを使っている場合は、
        ./
    からタイプした方がファイル名補完を使えるため、入力が速い。

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