ライブラリ
クラス
- Addrinfo (11)
- BasicSocket (3)
- CSV (3)
- Date (1)
-
Etc
:: Passwd (1) - File (3)
-
File
:: Stat (1) -
IRB
:: ExtendCommand :: PopWorkspace (1) -
IRB
:: ExtendCommand :: PushWorkspace (1) - Pathname (1)
- Socket (17)
-
Socket
:: AncillaryData (5) - String (1)
- UNIXServer (8)
- UNIXSocket (11)
- WIN32OLE (2)
モジュール
- Etc (130)
- FileUtils (1)
- Kernel (7)
- Open3 (2)
-
OpenSSL
:: Random (2) - Process (1)
- Readline (1)
-
Socket
:: Constants (9)
キーワード
-
$ LOAD _ PATH (1) -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) -
AF
_ LOCAL (2) -
AF
_ UNIX (2) -
ALT
_ SEPARATOR (1) - Addrinfo (1)
- Cygwin (1)
- ENGLAND (1)
- GNU (1)
- IO (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
PATH
_ SEPARATOR (1) -
PF
_ LOCAL (2) -
PF
_ UNIX (2) - Random (1)
- Ruby が動作するプラットフォーム (1)
- Ruby用語集 (1)
-
SCM
_ CREDENTIALS (2) -
SCM
_ CREDS (1) -
SCM
_ RIGHTS (1) -
SC
_ 2 _ CHAR _ TERM (1) -
SC
_ 2 _ C _ BIND (1) -
SC
_ 2 _ C _ DEV (1) -
SC
_ 2 _ FORT _ DEV (1) -
SC
_ 2 _ FORT _ RUN (1) -
SC
_ 2 _ LOCALEDEF (1) -
SC
_ 2 _ PBS (1) -
SC
_ 2 _ PBS _ ACCOUNTING (1) -
SC
_ 2 _ PBS _ CHECKPOINT (1) -
SC
_ 2 _ PBS _ LOCATE (1) -
SC
_ 2 _ PBS _ MESSAGE (1) -
SC
_ 2 _ PBS _ TRACK (1) -
SC
_ 2 _ SW _ DEV (1) -
SC
_ 2 _ UPE (1) -
SC
_ 2 _ VERSION (1) -
SC
_ ADVISORY _ INFO (1) -
SC
_ AIO _ LISTIO _ MAX (1) -
SC
_ AIO _ MAX (1) -
SC
_ AIO _ PRIO _ DELTA _ MAX (1) -
SC
_ ARG _ MAX (1) -
SC
_ ASYNCHRONOUS _ IO (1) -
SC
_ ATEXIT _ MAX (1) -
SC
_ AVPHYS _ PAGES (1) -
SC
_ BARRIERS (1) -
SC
_ BC _ BASE _ MAX (1) -
SC
_ BC _ DIM _ MAX (1) -
SC
_ BC _ SCALE _ MAX (1) -
SC
_ BC _ STRING _ MAX (1) -
SC
_ CHILD _ MAX (1) -
SC
_ CLK _ TCK (1) -
SC
_ CLOCK _ SELECTION (1) -
SC
_ COLL _ WEIGHTS _ MAX (1) -
SC
_ CPUSET _ SIZE (1) -
SC
_ CPUTIME (1) -
SC
_ DELAYTIMER _ MAX (1) -
SC
_ EXPR _ NEST _ MAX (1) -
SC
_ FSYNC (1) -
SC
_ GETGR _ R _ SIZE _ MAX (1) -
SC
_ GETPW _ R _ SIZE _ MAX (1) -
SC
_ HOST _ NAME _ MAX (1) -
SC
_ IOV _ MAX (1) -
SC
_ IPV6 (1) -
SC
_ JOB _ CONTROL (1) -
SC
_ LINE _ MAX (1) -
SC
_ LOGIN _ NAME _ MAX (1) -
SC
_ MAPPED _ FILES (1) -
SC
_ MEMLOCK (1) -
SC
_ MEMLOCK _ RANGE (1) -
SC
_ MEMORY _ PROTECTION (1) -
SC
_ MESSAGE _ PASSING (1) -
SC
_ MONOTONIC _ CLOCK (1) -
SC
_ MQ _ OPEN _ MAX (1) -
SC
_ MQ _ PRIO _ MAX (1) -
SC
_ NGROUPS _ MAX (1) -
SC
_ NPROCESSORS _ CONF (1) -
SC
_ NPROCESSORS _ ONLN (1) -
SC
_ OPEN _ MAX (1) -
SC
_ PAGESIZE (1) -
SC
_ PAGE _ SIZE (1) -
SC
_ PHYS _ PAGES (1) -
SC
_ PRIORITIZED _ IO (1) -
SC
_ PRIORITY _ SCHEDULING (1) -
SC
_ RAW _ SOCKETS (1) -
SC
_ READER _ WRITER _ LOCKS (1) -
SC
_ REALTIME _ SIGNALS (1) -
SC
_ REGEXP (1) -
SC
_ RE _ DUP _ MAX (1) -
SC
_ RTSIG _ MAX (1) -
SC
_ SAVED _ IDS (1) -
SC
_ SEMAPHORES (1) -
SC
_ SEM _ NSEMS _ MAX (1) -
SC
_ SEM _ VALUE _ MAX (1) -
SC
_ SHARED _ MEMORY _ OBJECTS (1) -
SC
_ SHELL (1) -
SC
_ SIGQUEUE _ MAX (1) -
SC
_ SPAWN (1) -
SC
_ SPIN _ LOCKS (1) -
SC
_ SPORADIC _ SERVER (1) -
SC
_ SS _ REPL _ MAX (1) -
SC
_ STREAM _ MAX (1) -
SC
_ SYMLOOP _ MAX (1) -
SC
_ SYNCHRONIZED _ IO (1) -
SC
_ THREADS (1) -
SC
_ THREAD _ ATTR _ STACKADDR (1) -
SC
_ THREAD _ ATTR _ STACKSIZE (1) -
SC
_ THREAD _ CPUTIME (1) -
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (1) -
SC
_ THREAD _ KEYS _ MAX (1) -
SC
_ THREAD _ PRIORITY _ SCHEDULING (1) -
SC
_ THREAD _ PRIO _ INHERIT (1) -
SC
_ THREAD _ PRIO _ PROTECT (1) -
SC
_ THREAD _ PROCESS _ SHARED (1) -
SC
_ THREAD _ ROBUST _ PRIO _ INHERIT (1) -
SC
_ THREAD _ ROBUST _ PRIO _ PROTECT (1) -
SC
_ THREAD _ SAFE _ FUNCTIONS (1) -
SC
_ THREAD _ SPORADIC _ SERVER (1) -
SC
_ THREAD _ STACK _ MIN (1) -
SC
_ THREAD _ THREADS _ MAX (1) -
SC
_ TIMEOUTS (1) -
SC
_ TIMERS (1) -
SC
_ TIMER _ MAX (1) -
SC
_ TRACE (1) -
SC
_ TRACE _ EVENT _ FILTER (1) -
SC
_ TRACE _ EVENT _ NAME _ MAX (1) -
SC
_ TRACE _ INHERIT (1) -
SC
_ TRACE _ LOG (1) -
SC
_ TRACE _ NAME _ MAX (1) -
SC
_ TRACE _ SYS _ MAX (1) -
SC
_ TRACE _ USER _ EVENT _ MAX (1) -
SC
_ TTY _ NAME _ MAX (1) -
SC
_ TYPED _ MEMORY _ OBJECTS (1) -
SC
_ TZNAME _ MAX (1) -
SC
_ V6 _ ILP32 _ OFF32 (1) -
SC
_ V6 _ ILP32 _ OFFBIG (1) -
SC
_ V6 _ LP64 _ OFF64 (1) -
SC
_ V6 _ LPBIG _ OFFBIG (1) -
SC
_ V7 _ ILP32 _ OFF32 (1) -
SC
_ V7 _ ILP32 _ OFFBIG (1) -
SC
_ V7 _ LP64 _ OFF64 (1) -
SC
_ V7 _ LPBIG _ OFFBIG (1) -
SC
_ VERSION (1) -
SC
_ XOPEN _ CRYPT (1) -
SC
_ XOPEN _ ENH _ I18N (1) -
SC
_ XOPEN _ REALTIME (1) -
SC
_ XOPEN _ REALTIME _ THREADS (1) -
SC
_ XOPEN _ SHM (1) -
SC
_ XOPEN _ STREAMS (1) -
SC
_ XOPEN _ UNIX (1) -
SC
_ XOPEN _ UUCP (1) -
SC
_ XOPEN _ VERSION (1) -
SO
_ PASSCRED (2) -
SO
_ PEERCRED (1) - Signal (1)
- Stat (1)
- Unix (1)
- Win32 (1)
- Win32ネイティブ版 (1)
- Win32ネイティブ版Rubyの互換性問題 (1)
- accept (1)
-
accept
_ loop (1) -
accept
_ nonblock (1) - addr (1)
- children (1)
-
clock
_ gettime (1) - crypt (1)
- ctime (1)
-
drb
/ gw (1) - egd (1)
-
egd
_ bytes (1) - execute (2)
-
family
_ addrinfo (2) - filter (3)
- ftype (1)
- gecos (1)
- getpeereid (1)
-
inspect
_ sockaddr (1) - int (2)
- ip? (1)
- ipv4? (1)
- ipv6? (1)
-
ipv6
_ to _ ipv4 (1) - irb (1)
- listen (1)
- locale (1)
- locale= (1)
- manual page (1)
-
net
/ imap (1) - new (7)
- open (7)
-
pack
_ sockaddr _ un (1) - pair (1)
- path (1)
- peeraddr (1)
- popen3 (2)
- readline (1)
-
recv
_ io (1) - recvfrom (1)
- recvmsg (1)
-
remove
_ entry _ secure (1) -
ruby 1
. 6 feature (1) - sendmsg (1)
-
sockaddr
_ un (1) - socket (1)
- socketpair (1)
- spawn (4)
- sysaccept (1)
- unix? (1)
-
unix
_ path (1) -
unix
_ rights (2) -
unix
_ server _ loop (1) -
unix
_ server _ socket (2) -
unpack
_ sockaddr _ un (1)
検索結果
先頭5件
-
Addrinfo
. unix(path , socktype=Socket :: SOCK _ STREAM) -> Addrinfo (63706.0) -
Unix ソケットアドレスに対応する Addrinfo オブジェクトを返します。
Unix ソケットアドレスに対応する Addrinfo オブジェクトを返します。
socktype でソケットタイプを指定します。
require 'socket'
Addrinfo.unix("/tmp/sock") #=> #<Addrinfo: /tmp/sock SOCK_STREAM>
Addrinfo.unix("/tmp/sock", :DGRAM) #=> #<Addrinfo: /tmp/sock SOCK_DGRAM>
@param path Unix ソケットのアドレス文字列
@param socktype ソケットタイプ(整数、文字... -
Socket
. unix(path) -> Socket (54673.0) -
Unix クライアントソケットを生成します。
Unix クライアントソケットを生成します。
ブロックが省略されたときは、生成されたソケットが返されます。
ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。
require 'socket'
# /tmp/sock と通信する
Socket.unix("/tmp/sock") {|sock|
t = Thread.new { IO.copy_stream(sock, STDOUT) }
IO.copy_stream... -
Socket
. unix(path) {|sock| . . . } -> object (54673.0) -
Unix クライアントソケットを生成します。
Unix クライアントソケットを生成します。
ブロックが省略されたときは、生成されたソケットが返されます。
ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。
require 'socket'
# /tmp/sock と通信する
Socket.unix("/tmp/sock") {|sock|
t = Thread.new { IO.copy_stream(sock, STDOUT) }
IO.copy_stream... -
Addrinfo
# unix _ path -> String (36706.0) -
Unix domain socket の path を文字列で返します。
Unix domain socket の path を文字列で返します。
require 'socket'
Addrinfo.unix("/tmp/sock").unix_path #=> "/tmp/sock"
@raise SocketError アドレスが Unix domain socket のものでない場合に発生します -
File
:: PATH _ SEPARATOR -> ";" | ":" (36649.0) -
PATH 環境変数の要素のセパレータです。UNIX では ":" MS-DOS な どでは ";" です。
PATH 環境変数の要素のセパレータです。UNIX では ":" MS-DOS な
どでは ";" です。 -
UNIXSocket
. pair(type=Socket :: SOCK _ STREAM , protocol=0) -> [UNIXSocket , UNIXSocket] (27985.0) -
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。
protocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。
require 'socket'
s1, s2 = UNIXSocket.pair
s1.send "a", ... -
UNIXSocket
. socketpair(type=Socket :: SOCK _ STREAM , protocol=0) -> [UNIXSocket , UNIXSocket] (27985.0) -
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。
protocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。
require 'socket'
s1, s2 = UNIXSocket.pair
s1.send "a", ... -
Socket
:: AncillaryData . unix _ rights(*ios) -> Socket :: AncillaryData (27706.0) -
ios で指定したファイルのファイルデスクリプタを データとして持つ family=AF_UNIX, level=SOL_SOCKET, type=SCM_RIGHTS という Socket::AncillaryData オブジェクトを生成して返します。
ios で指定したファイルのファイルデスクリプタを
データとして持つ family=AF_UNIX, level=SOL_SOCKET, type=SCM_RIGHTS
という Socket::AncillaryData オブジェクトを生成して返します。
require 'socket'
p Socket::AncillaryData.unix_rights(STDERR)
#=> #<Socket::AncillaryData: UNIX SOCKET RIGHTS 2>
@param ios IO オブジェクトの配列
@see Socket::AncillaryData#... -
Readline
. # readline(prompt = "" , add _ hist = false) -> String | nil (27685.0) -
prompt を出力し、ユーザからのキー入力を待ちます。 エンターキーの押下などでユーザが文字列を入力し終えると、 入力した文字列を返します。 このとき、add_hist が true であれば、入力した文字列を入力履歴に追加します。 何も入力していない状態で EOF(UNIX では ^D) を入力するなどで、 ユーザからの入力がない場合は nil を返します。
prompt を出力し、ユーザからのキー入力を待ちます。
エンターキーの押下などでユーザが文字列を入力し終えると、
入力した文字列を返します。
このとき、add_hist が true であれば、入力した文字列を入力履歴に追加します。
何も入力していない状態で EOF(UNIX では ^D) を入力するなどで、
ユーザからの入力がない場合は nil を返します。
本メソッドはスレッドに対応しています。
入力待ち状態のときはスレッドコンテキストの切替えが発生します。
入力時には行内編集が可能で、vi モードと Emacs モードが用意されています。
デフォルトは Emacs モードです。
... -
Socket
:: AF _ UNIX -> Integer (27673.0) -
Unix domain socket。 Socket.open の第一引数 domain に使用します。
Unix domain socket。
Socket.open の第一引数 domain に使用します。
@see sys/socket.h(header), unix(7linux) -
Socket
:: Constants :: AF _ UNIX -> Integer (27673.0) -
Unix domain socket。 Socket.open の第一引数 domain に使用します。
Unix domain socket。
Socket.open の第一引数 domain に使用します。
@see sys/socket.h(header), unix(7linux) -
Etc
:: SC _ REALTIME _ SIGNALS -> Integer (27604.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ ATTR _ STACKADDR -> Integer (27604.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ SPORADIC _ SERVER -> Integer (27604.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ THREAD _ THREADS _ MAX -> Integer (27604.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
UNIXServer
# accept -> UnixSocket (27601.0) -
クライアントからの接続要求を accept(2)で待ち受け、接続した UNIXSocket のインスタンスを返します。
クライアントからの接続要求を accept(2)で待ち受け、接続した
UNIXSocket のインスタンスを返します。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept
s.write "from server"
c.write "from client"
p c.recv(20) #=> "from server"
p s.recv(20) #=> "from clie... -
UNIXServer
# accept _ nonblock -> UnixSocket (27601.0) -
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。
ソケットをノンブロッキングモードに設定した後、
accept(2) を呼び出します。
接続した
UNIXSocket のインスタンスを返します。
accept(2) がエラーになった場合、Socket#accept と同じ例外が
発生します。
Errno::EWOULDBLOCK, Errno::EAGAIN,
Errno::ECONNABORTED, Errno::EPROTO のいずれかの例外が
発生した場合は、その例外には IO::WaitReadable が extend
されます。それを利用してリトライ可能な例外を掴まえることができます。
require 'socket... -
Socket
:: AncillaryData # unix _ rights -> [IO] | nil (27586.0) -
Unix domain socket の SCM_RIGHTS 制御メッセージに含まれる ファイルディスクリプタを IO オブジェクトの配列として返します。
Unix domain socket の SCM_RIGHTS 制御メッセージに含まれる
ファイルディスクリプタを IO オブジェクトの配列として返します。
得られる IO オブジェクトか IO か Socket です。
この配列は Socket::AncillaryData が初期化されたときに
作られます。例えば BasicSocket#recvmsg を :scm_rights => true
オプションを付けて呼びだし、
SCM_RIGHTS な 制御メッセージを受け取ったときに配列が作られます。
適切なオプションを指定しなかった場合は配列は生成されず、
このメソッドは nil... -
Addrinfo
# unix? -> bool (27424.0) -
アドレスが Unix domain socket のものならば true を返します。
アドレスが Unix domain socket のものならば true を返します。
require 'socket'
Addrinfo.tcp("127.0.0.1", 80).unix? #=> false
Addrinfo.tcp("::1", 80).unix? #=> false
Addrinfo.unix("/tmp/sock").unix? #=> true
@see Addrinfo#ip? -
UNIXSocket
# addr -> [String , String] (27403.0) -
ソケットの接続情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
ソケットの接続情報を表す配列を返します。配列の各要素は第1要
素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
クライアント側はパスを持たないため空文字列となります。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
p serv.addr #=> ["AF_UNIX", "/tmp/s"]
}
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p c.peeraddr #=> [... -
UNIXSocket
# peeraddr -> [String , String] (27385.0) -
接続相手先ソケットの情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
接続相手先ソケットの情報を表す配列を返します。配列の各要素は第1要
素が文字列 "AF_UNIX"、第2要素がパスを表す文字列です。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p c.peeraddr #=> ["AF_UNIX", "/tmp/s"]
p c.addr #=> ["AF_UNIX", ""]
}
@see UNIXSocket#addr -
UNIXSocket
# path -> String (27349.0) -
UNIX ソケットのパスを返します。
UNIX ソケットのパスを返します。
クライアント側はパスを持たないため空文字列となります。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
p serv.path #=> "/tmp/s"
} -
Addrinfo
# family _ addrinfo(host , port) -> Addrinfo (27337.0) -
引数から自身に「似た」Addrinfo オブジェクトを生成します。
引数から自身に「似た」Addrinfo オブジェクトを生成します。
「似た」の意味はプロトコルファミリ、ソケットタイプ、プロトコルが
同じことを意味します。
require 'socket'
Addrinfo.tcp("0.0.0.0", 4649).family_addrinfo("www.ruby-lang.org", 80)
#=> #<Addrinfo: 221.186.184.68:80 TCP (www.ruby-lang.org:80)>
Addrinfo.unix("/tmp/sock").family_addrinfo("/tmp/sock2")... -
Addrinfo
# family _ addrinfo(path) -> Addrinfo (27337.0) -
引数から自身に「似た」Addrinfo オブジェクトを生成します。
引数から自身に「似た」Addrinfo オブジェクトを生成します。
「似た」の意味はプロトコルファミリ、ソケットタイプ、プロトコルが
同じことを意味します。
require 'socket'
Addrinfo.tcp("0.0.0.0", 4649).family_addrinfo("www.ruby-lang.org", 80)
#=> #<Addrinfo: 221.186.184.68:80 TCP (www.ruby-lang.org:80)>
Addrinfo.unix("/tmp/sock").family_addrinfo("/tmp/sock2")... -
Addrinfo
# inspect _ sockaddr -> String (27319.0) -
アドレスやポート番号などの情報を人間に読める形の文字列で返します。
アドレスやポート番号などの情報を人間に読める形の文字列で返します。
require 'socket'
Addrinfo.tcp("localhost", 80).inspect_sockaddr #=> "127.0.0.1:80"
Addrinfo.tcp("ip6-localhost", 80).inspect_sockaddr #=> "[::1]:80"
Addrinfo.unix("/tmp/sock").inspect_sockaddr #=> "/tmp/sock" -
UNIXServer
# sysaccept -> Integer (27301.0) -
接続したクライアントのソケットをファイル記述子で返すことを除けば UNIXServer#accept と同じです。
接続したクライアントのソケットをファイル記述子で返すことを除けば
UNIXServer#accept と同じです。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
p serv.sysaccept #=> 6
} -
Unix (27292.0)
-
Unix ハッカーのおもちゃ。Unix か UNIX かはこだわりがあるらしい。ここでの Unix とは Unix そのものかあるいは互換 OS を指している。たまに platform/Cygwin を含むことがある。
Unix
ハッカーのおもちゃ。Unix か UNIX かはこだわりがあるらしい。ここでの
Unix とは Unix そのものかあるいは互換 OS を指している。たまに
platform/Cygwin を含むことがある。
RubyはもともとUnix上で開発されてきており、機能的にもファイルシステム、
プロセスの扱いなどでUnix指向な部分がある。いうなれば、Unix版Rubyがすべての
基本と言えるかもしれない。 -
Socket
. unix _ server _ socket(path) -> Socket (18691.0) -
Unix サーバソケットを生成します。
Unix サーバソケットを生成します。
ブロックが省略されたときは、生成されたソケットが返されます。
ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。
require 'socket'
socket = Socket.unix_server_socket("/tmp/s")
p socket #=> #<Socket:fd 3>
p socket.local_address #=> #<... -
Socket
. unix _ server _ socket(path) {|sock| . . . } -> object (18691.0) -
Unix サーバソケットを生成します。
Unix サーバソケットを生成します。
ブロックが省略されたときは、生成されたソケットが返されます。
ブロックが渡されたときは、生成されたソケットを
引数としてブロックを呼び出します。メソッドの返り値は
ブロックの評価値となります。また、ブロックの終了後に
ソケットを IO#close します。
require 'socket'
socket = Socket.unix_server_socket("/tmp/s")
p socket #=> #<Socket:fd 3>
p socket.local_address #=> #<... -
Socket
. unix _ server _ loop(path) {|socket , client _ addrinfo| . . . } -> () (18652.0) -
Unix サーバソケットを生成し、 新しい接続を受け入れるごとにブロックを呼び出します。
Unix サーバソケットを生成し、
新しい接続を受け入れるごとにブロックを呼び出します。
ブロックには新しい接続を表すソケットオブジェクトと、
クライアントアドレスを表す Addrinfo オブジェクトが渡されます。
ブロックの実行が終わってもソケットは close されません。
アプリケーション側が明示的に close する必要があります。
path という名前のファイルが既に存在するときは、
そのファイルのオーナである場合は先にそのファイルを削除してしまいます。
これは path が悪意あるユーザによって変更されない場合に限りは安全です。
つまり、 /tmp/malicious-us... -
Socket
:: AF _ LOCAL -> Integer (18373.0) -
Unix domain socket。 Socket.open の第一引数 domain に使用します。
Unix domain socket。
Socket.open の第一引数 domain に使用します。
@see sys/socket.h(header), unix(7linux) -
Socket
:: Constants :: AF _ LOCAL -> Integer (18373.0) -
Unix domain socket。 Socket.open の第一引数 domain に使用します。
Unix domain socket。
Socket.open の第一引数 domain に使用します。
@see sys/socket.h(header), unix(7linux) -
Socket
:: Constants :: PF _ LOCAL -> Integer (18373.0) -
Unix domain socket。 Socket.open の第一引数 domain に使用します。
Unix domain socket。
Socket.open の第一引数 domain に使用します。
@see sys/socket.h(header), unix(7linux) -
Socket
:: Constants :: PF _ UNIX -> Integer (18373.0) -
Unix domain socket。 Socket.open の第一引数 domain に使用します。
Unix domain socket。
Socket.open の第一引数 domain に使用します。
@see sys/socket.h(header), unix(7linux) -
Socket
:: PF _ LOCAL -> Integer (18373.0) -
Unix domain socket。 Socket.open の第一引数 domain に使用します。
Unix domain socket。
Socket.open の第一引数 domain に使用します。
@see sys/socket.h(header), unix(7linux) -
Socket
:: PF _ UNIX -> Integer (18373.0) -
Unix domain socket。 Socket.open の第一引数 domain に使用します。
Unix domain socket。
Socket.open の第一引数 domain に使用します。
@see sys/socket.h(header), unix(7linux) -
Date
:: ENGLAND -> Integer (18349.0) -
英国がグレゴリオ暦をつかい始めた日 (1752年9月14日) をあらわすユリウス日です。 この "ENGLAND" の名前は、旧い UNIX の cal(1) の記述に由来します。
英国がグレゴリオ暦をつかい始めた日 (1752年9月14日) をあらわすユリウス日です。
この "ENGLAND" の名前は、旧い UNIX の cal(1) の記述に由来します。
@see https://www.bell-labs.com/usr/dmr/www/pdfs/man61.pdf
ちなみに、本実装で英国の改暦日を尊重する姿勢がみられるのは前実装からの影響です。
前実装が英国の改暦日を尊重していたのは、おそらく cal(1) の影響です。
もっとも本実装で一番に尊重されているのは、伊国の改暦日であり、多くの場合、
改暦日の既定値は Date::ITALY です。 -
File
:: ALT _ SEPARATOR -> "\\" | nil (18349.0) -
システムのファイルパスのセパレータが SEPARATOR と異なる場合 に設定されます。MS-DOS などでは "\\" です。UNIX や Cygwin などでは nil です。
システムのファイルパスのセパレータが SEPARATOR と異なる場合
に設定されます。MS-DOS などでは "\\" です。UNIX や Cygwin などでは nil です。 -
Kernel
. # spawn(env , program , *args , options={}) -> Integer (18337.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//... -
Kernel
. # spawn(program , *args) -> Integer (18337.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//... -
Socket
. pack _ sockaddr _ un(path) -> String (18337.0) -
指定したアドレスをlib:socket#pack_string で返します。
指定したアドレスをlib:socket#pack_string
で返します。
@param path パスを文字列で指定します。
例:
require 'socket'
p Socket.sockaddr_un("/tmp/.X11-unix/X0")
=> "\001\000/tmp/.X11-unix/X0\000...." -
Socket
. sockaddr _ un(path) -> String (18337.0) -
指定したアドレスをlib:socket#pack_string で返します。
指定したアドレスをlib:socket#pack_string
で返します。
@param path パスを文字列で指定します。
例:
require 'socket'
p Socket.sockaddr_un("/tmp/.X11-unix/X0")
=> "\001\000/tmp/.X11-unix/X0\000...." -
Socket
. unpack _ sockaddr _ un(sockaddr) -> String (18337.0) -
lib:socket#pack_stringを unpack したソケットパス名を返します。
lib:socket#pack_stringを
unpack したソケットパス名を返します。
@param sockaddr lib:socket#pack_stringを指定します。
例:
require 'socket'
p Socket.unpack_sockaddr_un(Socket.sockaddr_un("/tmp/.X11-unix/X0"))
=> "/tmp/.X11-unix/X0" -
Socket
. accept _ loop(sockets) {|sock , client _ addrinfo| . . . } -> () (18319.0) -
sockets でサーバソケットを受け取り、接続を待ち受け、 クライアントとの接続が確立するたびにブロックにその接続 ソケットを渡し呼び出します。
sockets でサーバソケットを受け取り、接続を待ち受け、
クライアントとの接続が確立するたびにブロックにその接続
ソケットを渡し呼び出します。
ブロックの引数はクライアントと接続したソケットオブジェクトと
Addrinfo オブジェクトです。
Socket.tcp_server_loop と同様、ブロックは
逐次的に呼び出されます。つまりブロックか終了するまで
次の接続は accept されません。
並列に通信したい場合は
スレッドのような並列実行機構を使う必要があります。
@param sockets 待ち受けたいサーバソケットの配列
@see Socket.tcp_server... -
Socket
:: Constants :: SCM _ CREDENTIALS -> Integer (18319.0) -
The sender's credentials
The sender's credentials
Socket::AncillaryData の type として利用します。
@see Socket::AncillaryData,
BasicSocket#sendmsg, BasicSocket#recvmsg,
unix(7linux) -
Socket
:: Constants :: SO _ PASSCRED -> Integer (18319.0) -
Receive SCM_CREDENTIALS messages。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Receive SCM_CREDENTIALS messages。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see socket(7linux), unix(7linux),
Socket::Constants::SOL_SOCKET -
Socket
:: SCM _ CREDENTIALS -> Integer (18319.0) -
The sender's credentials
The sender's credentials
Socket::AncillaryData の type として利用します。
@see Socket::AncillaryData,
BasicSocket#sendmsg, BasicSocket#recvmsg,
unix(7linux) -
Socket
:: SO _ PASSCRED -> Integer (18319.0) -
Receive SCM_CREDENTIALS messages。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Receive SCM_CREDENTIALS messages。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see socket(7linux), unix(7linux),
Socket::Constants::SOL_SOCKET -
WIN32OLE
. locale -> Integer (18319.0) -
WIN32OLEがオートメーション呼び出し時に設定するロケール識別子(LCID)を取 得します。
WIN32OLEがオートメーション呼び出し時に設定するロケール識別子(LCID)を取
得します。
OLEオートメーションでは、UNIXで利用される"ja_JP"などの国名と言語名を「_」
で接続した文字列ではなく、32ビット整数で示します。32ビットの内訳は上位
16ビットが予約領域で0、下位16ビットが言語ID(LANGID)です。LANGIDは、0〜
9ビットでプライマリ言語ID、10〜15ビットでサブ言語IDを示します。
ロード時の既定値はWIN32OLE::LOCALE_SYSTEM_DEFAULTです。
@return WIN32OLEがオートメーション呼び出し時に設定するロ... -
WIN32OLE
. locale=(lcid) -> nil (18319.0) -
WIN32OLEがオートメーション呼び出し時に設定するロケール識別子(LCID)を設 定します。
WIN32OLEがオートメーション呼び出し時に設定するロケール識別子(LCID)を設
定します。
OLEオートメーションでは、UNIXで利用される"ja_JP"などの国名と言語名を「_」
で接続した文字列ではなく、32ビット整数で示します。32ビットの内訳は上位
16ビットが予約領域で0、下位16ビットが言語ID(LANGID)です。LANGIDは、0〜
9ビットでプライマリ言語ID、10〜15ビットでサブ言語IDを示します。
@param lcid 新たに設定するロケール識別子を整数で指定します。
@raise WIN32OLERuntimeError システムにインストールされてい... -
Kernel
. # spawn(command , options={}) -> Integer (18307.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash... -
Kernel
. # spawn(env , command , options={}) -> Integer (18307.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
=== 引数の解釈
この形式では command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash... -
Etc
:: SC _ 2 _ CHAR _ TERM -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ 2 _ LOCALEDEF -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ 2 _ PBS _ ACCOUNTING -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ 2 _ PBS _ LOCATE -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ 2 _ PBS _ MESSAGE -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ 2 _ PBS _ TRACK -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ ADVISORY _ INFO -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ AIO _ LISTIO _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ AIO _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ AIO _ PRIO _ DELTA _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ ARG _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ ASYNCHRONOUS _ IO -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ ATEXIT _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ AVPHYS _ PAGES -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ BARRIERS -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ BC _ BASE _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ BC _ DIM _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ BC _ SCALE _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ BC _ STRING _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ CHILD _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ COLL _ WEIGHTS _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ DELAYTIMER _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ EXPR _ NEST _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ GETGR _ R _ SIZE _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ GETPW _ R _ SIZE _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ HOST _ NAME _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ IOV _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ LINE _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ LOGIN _ NAME _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ MAPPED _ FILES -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ MEMLOCK _ RANGE -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ MESSAGE _ PASSING -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ MQ _ OPEN _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ MQ _ PRIO _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ NGROUPS _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ OPEN _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ PAGESIZE -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ PAGE _ SIZE -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ PHYS _ PAGES -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ RAW _ SOCKETS -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ READER _ WRITER _ LOCKS -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ RE _ DUP _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ RTSIG _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ SAVED _ IDS -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ SEMAPHORES -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ SEM _ NSEMS _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ SEM _ VALUE _ MAX -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。 -
Etc
:: SC _ SHARED _ MEMORY _ OBJECTS -> Integer (18304.0) -
Etc.#sysconf の引数に指定します。
Etc.#sysconf の引数に指定します。
詳細は sysconf(3) を参照してください。