68user's page 掲示板

Prev< No. 4931〜4953> Next  [最新発言に戻る] [過去ログ一覧]
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 など、今どきなシェルを使っている場合は、
        ./
    からタイプした方がファイル名補完を使えるため、入力が速い。

No. 4941 # べた 2008/08/26 (火) 22:00:32
>> 4935
>> 4936

返事が遅くなってすみません。

分かり易く説明ありがとうございます。
勉強になります。

No. 4942 # べた 2008/10/08 (水) 20:36:52
Cシェルでのリダイレクションについてなのですが

コマンドの実行結果で、標準エラー出力を捨てて、標準出力
だけを見たいのですがどうすればよいのですか。

cat file.txt >& /dev/null
では、標準出力、標準エラー共に捨てられますが、
標準エラーを捨てて、標準出力を表示したい。

cat file.txt 2 >& /dev/null
cat file.txt >2& /dev/null
cat file.txt >& 2 /dev/null
cat file.txt > /dev/tty >2 /dev/null
cat file.txt > /dev/tty >& /dev/null

とやってみたのですが、どれも上手くいきません。

どうすればよいのでしょうか。

環境は、
Solaris8 Cシェル
です。

No. 4943 # 68user 2008/10/08 (水) 22:16:55
>>4942 べた
tty 宛でよいなら、サブシェルを使って
    ( cat file.txt > /dev/tty ) >& /dev/null
です。

No. 4944 # べた 2008/10/09 (木) 20:49:11
>> 4944

ありがとうございます。

> tty 宛でよいなら、サブシェルを使って
> ( cat file.txt > /dev/tty ) >& /dev/null
> です。
出来ました。

tty 宛でよいなら、サブシェルを使って
tty を使わない方法もあるのですか。あるのでした教えてください。
サブシェルとは。
「( command )」とはどのよな使い方でしょうか。

良い案が思い浮かばなかったので、「cat file.txt > /dev/tty」で
表示ができたので、 /dev/tty を使えば上手くできるのではないかと。

No. 4945 # 68user 2008/10/10 (金) 10:06:19
>>4944 べた
tty を使わないなら、
    ( cat file.txt > out.txt ) >& /dev/null
などとファイルに保存する。

あるいは mknod や mkfifo で名前付きパイプを作ってそこに
流すなど (さすがに標準エラー出力を捨てるためにここまで
やるのはバカバカしいですが)。
    mkfifo out
    cat out &
    ( cat file.txt > out ) >& /dev/null

あるいは
    sh -c "ls cat file.txt 2>/dev/null"
などと sh で逃げる手もあります。

csh でやるなら、これ以外の方法はおそらくないです。

> サブシェルとは。
> 「( command )」とはどのよな使い方でしょうか。
こちらをどうぞ。
    http://x68000.q-e-d.net/~68user/unix/pickup?%A5%B5%A5%D6%A5%B7%A5%A7%A5%EB

No. 4946 # べた 2008/10/10 (金) 20:24:28
>> 4945

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

Windows XPの別端末で書き込みをしたら
「エラー : 内部エラーが起こりました。」
の画面が表示されました。
何かあるのでしょうか。

No. 4947 # 素人 2008/12/11 (木) 14:52:56
こんにちは.linuxを使い始めたものです.
パイプに関する質問です.環境はVine Linux のbashです.

あるファイル名(ここではtestfile)のものを検索して,
さらにその中身に"test"という文字列を含むかどうかを
知りたいと思っています.
対象のファイルがひとつとは限りません.例えば,
...........
../Data1/testfile ⇒(中身)This is test file.
...........
../Data2/testfile ⇒ (中身) This is hoge hoge.
といった感じで同じ名前のファイルが別のディレクトリにあります.

cat,find, grepを組み合わせれば出来そうな気はしているのですが,
findしてリスト表示されたファイル名を引数としてcatコマンドに
渡すことができません.

自分なりにいろいろ検索しましたが,よくわかりませんでした..
よろしくご教授ください.

No. 4948 # 68user 2008/12/11 (木) 17:17:18
>>4947 素人
親ディレクトリ以下の testfile というファイル名のファイル中に
test という文字列があるものをリストアップ、であれば
    % find ../ -name testfile | xargs grep -l test
でしょうか。それを cat するなら
    % find ../ -name testfile | xargs grep -l test | xargs cat
ですかね。

No. 4949 # 素人 2008/12/11 (木) 18:35:48
>>4948 68user
できました!答えはxargsでしたか.
勉強不足で恐縮です.ありがとうございました.

No. 4950 # 佐藤丈師 [E-mail] 2008/12/12 (金) 17:03:36
RSA1のプログラムを実行するにあったってエラーが多くでます。これのヘッダファイルはどこにあるのでしょうか。

No. 4951 # 68user 2008/12/23 (火) 17:49:12
>>4950 佐藤丈師
OpenSSL に同梱されていますので、OpenSSL をインストール済みであれば
/usr/include/openssl や /usr/local/openssl/include などにあるはずです。
コンパイル時に -I /usr/include/openssl などのオプションを付加してください。

No. 4952 # kawasaki 2009/01/13 (火) 18:11:06
初めて投稿します。
全くの初心者ですが、次のことをお尋ねします。
Debian4.0ですが、デスクトップにアイコンを作成し、クリックすると
プログラムを起動するようにしたいのですがどのようにすればいいの
でしょうか。

#su - abc ’abcでログインし、「sh /usr/lib/scripts/claim/ORC_CLAIM_SERVER.sh 5001 /var/tmp」

ktermに記述などお尋ねします。

No. 4953 # 68user 2009/01/14 (水) 02:02:57
>>4952 kawasaki
やり方はインストールしたデスクトップ環境 (GNOME とか KDE とか) によると思います。

が、お使いのデスクトップ環境をお教えいただいたとしても、ここ数年は UNIX 系
デスクトップ環境をいじっていないので、わたしはさっぱりわかりません。

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