68user's page 掲示板

Prev< No. 253〜261> Next  [最新発言に戻る] [過去ログ一覧]
No. 253 # Tetsu [E-mail] 1999/04/07 (水) 15:31
    UNIXは初心者です、ここで質問して良いかもわかりませんが、よろしければお教え下さい。
OSはだいぶ古いSONY製のNEWS−OSというのを使用しています。相当古いマシンなので、また
UNIXなのでちょっと恐くてさわれないのですが、基本的なコマンドは少し勉強しました。

  前置きが長くなってしまいましたが・・・ハードディスクの空き容量を調べたいと思うのですが、どの
ようなコマンドを使えば良いのかよくわかりませんでした。どうぞ、お教え下さい。そういうコマンドとか
は無いのでしょうか?

No. 254 # 68user 1999/04/07 (水) 17:58
NEWS-OSはよく知りませんが、df -kで
    Filesystem 1K-blocks Used Avail Capacity Mounted on
    /dev/sd0s1a 118959 25837 83606 24% /
などという表示が出るんじゃないでしょうか。これだと
118M中 25M(全体の24%)を使用中ってことです。

No. 255 # チャパ王 1999/04/09 (金) 19:20
はじめまして。他にはないCGIスクリプトばかりで大変助かっています。
それでですが、.htaccessで
<files browser.log>
deny from all
</files>
<files referer.log>
deny from all
</files>
    :
    :
というような設定がありますが、
<files *.log>
deny from all
</files>
<files *.dat>
deny from all
</files>
とやるだけで全ての***.log、***.datファイルが見れなくなります。
どうぞお試しくださいませ。(知ってたらごめんなさい。(汗))

No. 256 # R-N 1999/04/11 (日) 02:30
ども、おひさしぶりです。
お元気でしょうか? 私は相変わらずです。(^_^;
何度もここで色々聞こうと思っては思いとどまり何とか自分で解決してきたんですが、
とうとういきずまりました...。
データのチェックで
foreach $line (@lines) {
($a,$b,$c,$d) = split(/\,/,$line);
if ($d ne '') { $dd++; }
}
とした時の @line の値(?)が
22,,55,
23,1,25,
というような時、$dd に+1されてしまいます。
本当は何か値が入っていたら+1したいのです。
なんとなく「22,,55,(改行)」となっていて $d ne '' で改行が判断できないからかなと思うのですが...。
そんなモノなんでしょうか?
$d ne '' ではないなら式はどうなるのでしょう?

なんか解りにくくてすみません。
説明下手なんですが...そこを何とか...。(-_-;

No. 257 # 68user 1999/04/11 (日) 07:11
> とやるだけで全ての***.log、***.datファイルが見れなくなります。
どうもです。本当は *.log というファイルだけではなく、
/~j5306050/log/ 以下を見られないようにしたいんです。
    <directory /home/95s/j5306050/public_html/log/>
        deny from all
    </directory>
とか
    <location /~j5306050/log/>
        deny from all
    </location>
などと書いても、
    500 Internal Server Error
    The server encountered an internal error or misconfiguration and
    was unable to complete your request.
になっちゃうんで、仕方なくああいう風にしました。
これって書き方間違ってるんでしょうか?

あと、試しているうちに、
    <files browser.log>
        deny from all
    </files>
と書いても、/~j5306050/log/browser.log は見ることができるのに気がつきました。
ずっと誰かに見られてたかも…(^^;
    <files log/browser.log>
だとうまくいきましたけど。

> というような時、$dd に+1されてしまいます。
おそらく$lineの最後に改行コードが付いているからだと思いますので、
    foreach $line (@lines) {
        chop $line;
とするか、
    if ( $d =~ m/\d/) { $dd++; }
と、$dに数字が入っているかどうかを調べてはどうでしょう。ちょっと変ですけど、
    if ( $d ne "\n" ) { $dd++; }
もアリかも。

No. 258 # R-N 1999/04/12 (月) 05:14
なるほど(?)、ありがとうございます!
Perl の専門書を買わないと駄目ですね...、コマンド(?)が全然解らない...。
唯一理解できたのが、
if ( $d ne "\n" ) { $dd++; }
ですが...、そっか!
改行コードって \n でしたね...、普段使ってるのにすっかり忘れてました...。
また勉強してきます!!

No. 259 # M.Masuda 1999/04/12 (月) 12:52
68Userさん、皆さんこんにちは。
横やりですが...

>/~j5306050/log/ 以下を見られないようにしたいんです。
www.cs.gunma-u.ac.jp は Apache1.2.6ですよね。
<Directory>ディレクティブは.htaccess では使えません。
この場合<Limit>を使ってこんな感じでできると思います。

##### .htaccess内 ######
<Limit POST GET>
order deny,allow
deny from all
allow from HOSTNAME
</Limit>
### .htaccess 終了####

外してたらごめんなさい。

No. 260 # 68user 1999/04/12 (月) 17:02
> <Directory>ディレクティブは.htaccess では使えません。
なるほどなるほど、確かにdirectoryやlocationは、server configだけ
でしか使えないみたいですね。それは知りませんでした。というわけで、
    <files log/*>
        deny from all
    </files>
にしました。public_html/log/.htaccessに deny from allと書いても
いいんでしょうけど、設定ファイルが分散するのが嫌だったので
一つにまとめました。

> Perl の専門書を買わないと駄目ですね...、コマンド(?)が全然解らない...。
前にROLさんにも同じような事を書きましたが、はっきり言って 本を買わずに
プログラミング言語を理解しようとするのは時間の無駄です。数千円の金を
惜しむあまり、結果的に数十/数百時間の貴重な時間を無駄にしています。

手元に本があれば数分でわかるのに、BBSで丸1日かけて質問するのは
とても非効率的ですよね。

悪いことは言いませんから、早く本を買いましょう。オンライン版がいいなら
    http://www.cec.co.jp/usr/hasegawa/Docs/perl-jman/index.html
    ftp://ftp.mei.co.jp/free/others/Languages/perl/perl5/perl5.000/perljref-5.000.0.tar.gz

No. 261 # M.Masuda 1999/04/13 (火) 19:59
すいませんまたまた教えて欲しいのです。
下のスクリプトでおかしい所は無いでしょうか。

#!/usr/bin/perl -w

use Net::Ping;
print "Content-type: text/plain\n\n";

$hostname = 'pingコマンドの返らないホスト';
print "Checking $hostname\n";
if (pingecho($hostname,$timeout)){print "Echo on\n"}
else{print "Echo off\n"}

$hostname = 'pingの返るホスト';
print "Checking $hostname\n";
if (pingecho($hostname,$timeout)){print "Echo on\n"}
else{print "Echo off\n"}
exit;
リャマ本のP531でのNet::Pingを試しているのですが、
上記の試験結果は両方ともEcho offです。
もちろんホストの指定の間違いもありません。

初めて use コマンドを使うので、何か他に間違いがあるのかと
use行をコメントアウトしたり、他のコマンドを使ってみましたが
(use Cwdの結果は正常に表示)原因が不明です。
最初このコマンドを知らずに、自分で`ping -c1`とararmを使って
コーディングしましたが、シグナルを受け取った後の制御がうまく
できずにリャマ本を調べていたら、「なんだこんな便利なものがあ
るじゃないの!」と思い使ってみましたがこれもまたうまく行かず
原因が分かりません。

Net/Ping.pmも存在しますが、その記述内容は私には高度すぎて
全然分からずお手上げ状態です。

どうかご教授よろしくお願いします。

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