|
>>4098 とも }の前に改行を入れないと動作しません。 (実装しているsedの違いかもしれませんが。) >>4099 やまげん 説明下手なので、この辺を参考にしてください。 ttp://pegasus.rutgers.edu/~elflord/unix/sed.html |
|
>>4100 zsh >説明下手なので、この辺を参考にしてください。 >ttp://pegasus.rutgers.edu/~elflord/unix/sed.html 英語なんですね。 |
|
>>4101 やまげん それじゃあ簡単に。 "\("と"\)"で囲まれた部分にマッチした文字列は、 変数に格納され、順番に\1,\2で取り出す事が可能です。 /Pattern/ { command } でPatternに一致した行に対してcommandを実行します。 こんな感じですかね。 正直、自分の解釈が間違っている可能性があるので、 あまり人に教えることはしないのですが。。。 |
|
はじめまして、高島屋です。 solarisでC言語にてアプリケーションを作成する際の、1プロセスが可能なファイルオープンのMAX値について教えていただけないでしょうか? 実際にopen可能な、、と言う意味ではなく、「メーカで保障されている」MAX値を調査しています。 利用しているコンパイラは「SunOneStudio8」。 まず、当方で調査した結果を報告致します。 ・ANSI規格の規格では8以上とされている。(「新ANSIC言語辞典」技術評論社→コンパイラに対して8以上を保障しなさいと言う意味だと思います) ただし、/usr/include/isostdio_iso.hでは、FOPEN_MAX=20と設定されている。(CPU=SPARK) ・solris limit,sysdefコマンドで確認した所、 limitコマンドでのファイル記述子の最大数は256。 sysdefコマンドのfile descriptorsに関する、"process Resource Limit"の値も共に256。 実際に1プロセスで256ファイル以上をオープンすると、それ以降のファイルオープンが失敗しました。 ・その他 システム全体で同時open可能なファイルの最大数があるのかは不明(調査不足) なお、sysdefコマンドで確認した所、maximum number of process = 30000 maximum processes per user id = 29995の制限値が設定されていました。 ただ、上記はあくまで、実際に設定されている値で、それぞれのメーカーが保障している値ではありません。 SunOneのマニュアルからも最大値の記述は読み取れませんでした。(調査不足?) Q1.FOPEN_MAXの20と言うのは何に利用されているかご存知ですか?CPUにより異なる様なのですが。。 プロセスを最大数立ち上げた際にオープン出来るファイルの最大数と言う事なのしょうか? Q2.コンパイラごとに異なるものなのでしょうか?OSやCで決まるものなのでしょうか? 何を基準に(c?solaris?コンパイラ?)マックス値を調査すればよいのでしょう? Q3.漠然とした質問で申し訳無いのですが、上記の様なファイルオープン数のメーカーからの保障について、どなたかご存知ですか? 以上、拙文で申し訳ないのですが、ご存知の方ご教授下さい。 |
|
質問は受け付けないって書いてあるのに、変わった人たちですね。 まぁいいですけど。 > Q1.FOPEN_MAXの20と言うのは何に利用されているかご存知ですか? Solaris8 の stdio(3) には以下のように記述されています。 The integer constant FOPEN_MAX specifies the minimum number of files that the implementation guarantees can be open simultaneously. JIS X 3010 (C99 相当) には以下のように記述されています。 FOPEN_MAX は、同時にオープンできることを処理系が保証するファイル 数の最小値をあらわす整数定数式に展開する。 なお、FOPEN_MAX は最大値ではなく最小値です。「少なくともこれだけは オープンできる」という値です。 FOPEN_MAX が具体的にどう使われているか、という話であれば、処理系 依存です。たとえば FreeBSD であれば libc において static FILE usual[FOPEN_MAX - 3]; などと使われており、リソースを確保しなおすことなくオープンできる ファイル数が FOPEN_MAX である、という形になっているようです。 Linux などで使われている glibc においては FOPEN_MAX を一切使用して おらず、意味のない値になっています。Solaris はソースを持ってないので 知りません。 > Q2.コンパイラごとに異なるものなのでしょうか?OSやCで決まる > ものなのでしょうか? 何がですか? FOPEN_MAX が? > Q3.漠然とした質問で申し訳無いのですが、上記の様なファイルオープン数の > メーカーからの保障について、どなたかご存知ですか? 「保証する値」にこだわるのであれば、メーカーに問い合わせるのが 一番かと思います。 |
|
http://x68000.q-e-d.net/~68user/net/http-auth-2.html にある「クライアント対応状況」ですが、apache本体(2.0.51以降)に パッチが取り込まれています。 http://httpd.apache.org/docs-2.0/mod/mod_auth_digest.html#msie ご参考まで。 いつも勉強させてもらってます。 これからもすばらしいコンテンツ期待しています。 |
|
Solaris8のshについて教えて下さい。 shでシェルを書いています。 もともとは、HP-UX11.00で動かしていたのをSoralisに移しました。 位置パラメータを使ってlsの結果(個数)を取得し、ファイルが存在 しているか、存在しないかのチェックをしています。 ファイルが存在しないときは、不要なメッセージを出力しないように もしています。 その際、ファイルが存在しなった場合、0件として終了してくれません。 位置パラメータの個数が"1"で取得されます。 引数で、チェックするディレクトリを判断するためのパラメータを渡して いるのですが、どうやらこの引数や値が引き継がれているみたです。 上手く処理するにはどうしたらよいのですか。 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー #!/bin/sh # PATH=${PATH}:/usr/bin:/etc:/usr/ccs/bin:/usr/local/bin:.; export PATH TZ=JST-9; export TZ if [ $# -lt 1 ] ; then echo "Parameter Error" echo "$0 Processing MODE [R:real/B:batch]" exit 1 fi mode=$1 if [ ${mode} = "R" ] ; then DIR="/tmp/real" elif [ ${mode} = "B" ] ; then DIR="/tmp/batch" else echo "Processing MODE Error" echo "Processing MODE = [R:rela/B:batch]" exit 1 fi cd ${LDIF_DIR} set -- `ls *.txt 2>/dev/null | grep -v "_kekka_"` if [ $# -eq 0 ] ; then echo "Ldif File Nothing Today" exit 1 fi echo $* cnt=$# echo ${cnt} |
|
>>4105 tkb > 「クライアント対応状況」ですが、apache本体(2.0.51以降)に > パッチが取り込まれています。 これは知りませんでした。早速追記しました。 http://x68000.q-e-d.net/~68user/net/http-auth-2.html ご教示ありがとうございました。 |
|
>>4106 さいさん > 引数で、チェックするディレクトリを判断するためのパラメータを渡して > いるのですが、どうやらこの引数や値が引き継がれているみたです。 位置パラメタは「set --」でクリアできますが、本当に引数を引き継いでいますか? (「echo $*」部分で引数が出力されてますか?) |
|
>>4108 zsh >(「echo $*」部分で引数が出力されてますか?) 起動時に渡した、RまたはBが表示されます。 「echo #?」も1と表示されます。 |
|
「UNIX の部屋」を更新しました。 http://X68000.q-e-d.net/~68user/unix/ |
|
>> 4109 #!/bin/sh -> #!/bin/ksh man sh man ksh |
|
>>4112 zsh Solaris8入ってるマシン3台くらいで確認したんですけど shでも通常はそんな動作にはならないんですよ。 一度 set -- でリセットした方が確実かなと思います。 |
|
× >>4112 zsh ○ >>4111 んー 失礼しました。 |
|
Tee の説明文中 find . -name a\* だと a から始まるファイル名が返って来ますよね. |
|
>>4112 zsh >一度 >set -- >でリセットした方が確実かなと思います。 とやってみたんですが、かわりなしです。 |
|
>>4114 野暮天 ご指摘ありがとうございます。修正しました。 http://X68000.q-e-d.net/~68user/unix/pickup?Tee |
|
>>4115 さいさん じゃあshiftで一つずらしてください。 |
|
質問はダメみたいですが、どうしてもできないので、誰か教えてください。。 http://x68000.q-e-d.net/~68user/net/pop3-1.html を実際にやってみたんですが、 POP3サーバ名、ポート番号で、接続できました。 そして、USERも接続できたんですが、PASSだけが接続できません。 ちゃんと手順通り(パスは合ってる)にやっているんですが、、なぜでしょうか? 誰か教えてください。POP3サーバー名は、pop.mail.yahoo.co.jpです。 エラー内容は、-ERR invalid user/password もう1個えらー内容がでました。 -ERR command valid only in authorization state. |
|
>>4118 ヘルプ 私は Yahoo! のメイルアカウントを持ってないので何ともですが、 http://help.yahoo.co.jp/help/jp/mail/pop/pop-03.html を参考にしてありがちなミスを考えると、USER 名が小文字になってないとか。 |
|
ネットワークプログラミングの基礎知識 http://X68000.q-e-d.net/~68user/net/ に Java で HTTP クライアントを作ってみよう (1) http://X68000.q-e-d.net/~68user/net/java-http-socket-1.html Java で HTTP クライアントを作ってみよう (2) http://X68000.q-e-d.net/~68user/net/java-http-url-connection-1.html Java で HTTP クライアントを作ってみよう (3) http://X68000.q-e-d.net/~68user/net/java-http-url-connection-2.html を追加しました。 |
|
>>4117 zsh 原因わからずです。 バグということはないですかね。 >じゃあshiftで一つずらしてください。 shiftとって使ったことないのですが、 ループと合わせてつかうものなのですか。 終わりとかどう判断するのですか。 使い方教えてください。 |
|
Solari8iについて教えて下さい。 UNIXにログインする時、共通のデフォルトの初期化ファイルと ユーザのホームディレクトリにある初期化ファイルが読み込まれ ますが、共通のデフォルトのファイルはどこにあるのですか。 sttyの設定を変更したいのですが、分からずに困ってます。 syslogのファイルはどこに存在するのですか。 HP-UXでいるsyslogというファイルは存在しないのでしょうか。 messageというそれらしいファイルが存在するのですが、これが syslogなのでしょうか。 Solarisでいうsyslogとはどこを含めているのでしょうか。 |
|
>>4121 さいさん num=`ls *.txt 2>/dev/null | grep -v "_kekka_" | wc -l` でファイル数を取得では。 |
|
皆さんmanコマンドって使わないんですかね・・・ >>4122 たか Solari8iって一体・・・ Bシェル・・・/etc/profile Cシェル・・・/etc/.login man shとかで出てきます。 >>4121 さいさん 例えば、位置パラメタが $1=a, $2=b, $3=c の時にshiftを実行すると $1=b, $2=c と一つずつずれます。 $#の値も一つ減るので、対処できるかなと。 取りあえず、man shift |
|
ネットワークプログラミングの基礎知識 に SSL/TLS の導入 (1)〜(4) http://x68000.q-e-d.net/~68user/net/ssl-setup-1.html http://x68000.q-e-d.net/~68user/net/ssl-setup-2.html http://x68000.q-e-d.net/~68user/net/ssl-setup-3.html http://x68000.q-e-d.net/~68user/net/ssl-setup-4.html を追加しました。 |
|
libevent http://www.monkey.org/~provos/libevent/ について 調べているんですが、いまいちわかりません。 マルチスレッドの echo サーバのサンプルプログラム http://x68000.q-e-d.net/~68user/tmp/libevent-sample.c を作ったのですが、1つ目のクライアントからの接続は正常に処理できる ものの、さらに 2つ目のクライアントが接続すると sockread_callback 内の if ( fd == listening_socket ){ が真にならず、accept できません。 1つ目のクライアントが接続してきたときに sockread_callback 内で 行っている event_add・ev_set のやり方がまずいんだろうと思うん ですが、どこが間違っているんでしょうか。 |
|
そういえばこの掲示板で質問を受け付けていないことを忘れて いました。管理人が自分でルールを破るのはよくないので、 >>4126 68user は無視してください。 |
|
社会暦1ヶ月のものです。LINUX関連仕事をやってます。 偶然、このサイトを見つけていろいろ助かりました。 ありがとうございます。 これからもよろしくお願いします。 |
|
すいません、場違いだとは思うのですが、GlancePlusについて、 御存知の方がいらっしゃいましたら教えていただけないでしょうか? 現在業務上でGlancePlusをつかっての性能測定をしているのですが、 この結果を『-p』オプションでファイルに出力していると、 「Maximum of 200 pages of output reached, printing disabled」 と出てきて、200回目の出力でストップしてしまいます。 MAX200の出力が、GlancePlusの仕様という事ならあきらめるのですが、 設定ファイルor設定方法等があるのでは?と思っています。 どなたか教えて下さい。 よろしくお願い致します。 |
|
いつのまにか私が使っているAIXでログイン後共通ディスク端末エミュレータを選ぶと 「アクション "Dtterm" が見つかりません」で端末エミュレータが開けなくなり、 ログアウトしようとすると「アクション "ExitSession" が見つかりません」でログアウト できなくなっていました。いつもはTelnetで処理をしていてLogin,Exit等を行っても なんの問題もありません。原因を考えるのですが心当たりないので困っています。 気がかりなのは/varの使用率が100%になっているくらいですが以前はそれでもちゃんと 動いていました。対策方法をご存知のかたはご伝授ください。 |
|
>>4130 よっちゃん 「AIXでログイン後」とはCDEログイン(?) と仮定して... > /varの使用率が100% ネタですか? CDEは/var/dt以下を使用します。 まず/varのディスクスペースを確保しなきゃです。 ※そのまま放置するとCDEからのloginそのものが出来なくなります。 |
|
WAS上のアプリケーションから起動された unixコマンドをkillしたいのですが、 1発でできる方法はないでしょうか? 分けると、 ”ps -eaf | grep java” で 1:root 323700 1 0 14:41:32 pts/2 4:37 /XXXX/XXXX/XXX を取得して、 ”ps -ef | grep vmstat” で 1:root 430138 442550 1 20:19:55 pts/2 0:00 grep vmstat 2:root 524402 323700 0 19:31:41 pts/2 0:00 /bin/vmstat 1 ↑と取得できた場合に、親のPIDに323700を持っているコマンド (2行目)をkillする、ということをやりたいのですが・・・。 やっぱり分けないと無理でしょうか? |
|
Solaris8なのですが、Bシェルでnawkを使用して処理を しています。 nawk内で関数を呼び出して処理をしているのですが、 その際、最終レコードかをNFで判断しているのですが、 上手く、判断してくれずに無限ループになってしまい ます。 #/bin/sh for FILE in `ls *.txt"` do nawk -F" " ' BEGIN { count = 0+0 ; } function sub() { while (NF>0) { if ($1 == "") { 処理 } else { 処理 } getline ; } return 0; } { if (NF == 0) next ; ret=sub() ; } END { printf("%d\n",ret) ; }' ${FILE} done |
|
>>4133 仁 NFはフィールド数が格納されるのであって 最終レコードかどうかを確認する事はできないと思いますが。。。 こういうことがしたいのですか? ------ while ( getline ) { ... } |
|
お世話になっております。初心者で大変申し訳ございませんが、 教えていただけますでしょうか? 以下の https-client-2 で、ライン:362 SSL_get_verify_resultで エラーと扱われてしまいます。対象となる rootCA 証明書をどのように 反映すれば宜しいのでしょうか? http://x68000.q-e-d.net/~68user/net/ssl-2.html 申し訳ございませんが宜しくお願い致します。 |
|
>No. 4135 に追加で、中間認証局の証明書はどのように設定するのでしょうか? または、必要ないのでしょうか? 度々申し訳ございませんが宜しくお願い致します。 |
|
>>4135 kevin そのページは書きかけでわかりづらいため、それについてのみ説明します。 > 対象となる rootCA 証明書をどのように反映すれば宜しいのでしょうか? ページ最下部に記述してあります。 なお、https://www.rsasecurity.com/ は成功しますが、 https://www2.ggn.net/cgi-bin/ssl は期限切れのため必ずエラーと なります。 その他については SSL/TLS の一般的なことがらなので回答しません。 OpenSSL の本を買うとよいでしょう。 |
|
>>4070 たなか >>4071 68user >>4072 たなか ご無沙汰しております。 Apple に連絡後、返事はもらえませんでしたが、進展がありましたのでご報告いたします。 Mac OS 10.4(Tiger) で kqueue の戻り値(ファイルデスクリプタ)を close できるようになりました。 |
|
トップページについて、ご自分でも感じてらっしゃるかと思うのですが…。 ぼちぼち更新履歴が長くてアレな気がするので、できればトップは最近の いくつかだけにして、過去のぶんは別ページに、とできないでしょうか。 # それともCGI/Servletでblogを作ってからにしようとしてるとか?(^^) |