種類
- インスタンスメソッド (88)
- 特異メソッド (61)
- 文書 (11)
- ライブラリ (11)
- クラス (2)
ライブラリ
- ビルトイン (16)
- csv (33)
-
net
/ telnet (2) - shell (24)
-
shell
/ builtin-command (6) -
shell
/ command-processor (24) -
shell
/ filter (24) - socket (22)
クラス
- Array (16)
- CSV (33)
- Shell (24)
-
Shell
:: CommandProcessor (24) -
Shell
:: Echo (6) -
Shell
:: Filter (24) - Socket (22)
キーワード
- Telnet (2)
- cat (18)
- filter (33)
- glob (18)
- irb (11)
- pack (16)
-
ruby 1
. 6 feature (11) -
tcp
_ server _ loop (22) - tee (18)
検索結果
先頭5件
-
ruby 1
. 6 feature (23276.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...00019>))
: 2002-09-11: Queue#((<Queue/pop>))
Queue#pop に競合状態の問題がありました ((<ruby-dev:17223>))
: 2002-09-11: SizedQueue.new
引数に 0 以下を受けつけるバグが修正されました。
: 2002-09-05: ((<リテラル/式展開>))
stable snapshot で、一......フォルト値 (((<Hash/default>))) も == で等しい
ときに等しいとみなされるようになりました。
p Hash.new("foo") == Hash.new("bar")
=> ruby 1.6.7 (2002-03-01) [i586-linux]
true
=> ruby 1.6.7 (2002-08-21) [i586-linux]
false......るファイル名を指定したとき、拡張子がついてな
いとロードできなくなっていました。((<ruby-dev:13756>))
$ echo p __FILE__ > ~/a.rb
$ ruby17 -v -r~/a -e0
ruby 1.7.1 (2001-07-03) [i686-linux]
0: No such file to load -- ~/a (LoadError)
$ ruby16... -
Shell
:: Echo . new(sh , *strings) (21101.0) -
@todo
@todo -
Shell
# echo(*strings) -> Shell :: Filter (18119.0) -
実行すると, それらを内容とする Filter オブジェクトを返します.
...ings シェルコマンド echo に与える引数を文字列で指定します。
動作例
require 'shell'
Shell.def_system_command("head")
sh = Shell.new
sh.transact {
glob("*.txt").to_a.each { |file|
file.chomp!
cat(file).each { |l|
echo(l) | tee(file + ".tee")... -
Shell
:: CommandProcessor # echo(*strings) -> Shell :: Filter (18119.0) -
実行すると, それらを内容とする Filter オブジェクトを返します.
...ings シェルコマンド echo に与える引数を文字列で指定します。
動作例
require 'shell'
Shell.def_system_command("head")
sh = Shell.new
sh.transact {
glob("*.txt").to_a.each { |file|
file.chomp!
cat(file).each { |l|
echo(l) | tee(file + ".tee")... -
Shell
:: Filter # echo(*strings) -> Shell :: Filter (18119.0) -
実行すると, それらを内容とする Filter オブジェクトを返します.
...ings シェルコマンド echo に与える引数を文字列で指定します。
動作例
require 'shell'
Shell.def_system_command("head")
sh = Shell.new
sh.transact {
glob("*.txt").to_a.each { |file|
file.chomp!
cat(file).each { |l|
echo(l) | tee(file + ".tee")... -
CSV
. filter(input , options = Hash . new) {|row| . . . } (115.0) -
このメソッドは CSV データに対して Unix のツール群のようなフィルタを構築 するのに便利です。
...適用されます。
":output_row_sep" のデフォルト値は $/ です。
//emlist[例: input, output は初期値][ruby]{
# $ echo "header1,header2\nrow1_1,row1_2" > in.csv; ruby test.rb in.csv
require "csv"
options = { headers: true, return_headers: true, write_headers: true......<< "full name"
next
end
row << row["first name"] + " " + row["last name"]
end
# out.csv の内容
# => id,first name,last name,age,full name
# 1,taro,tanaka,20,taro tanaka
# 2,jiro,suzuki,18,jiro suzuki
# 3,ami,sato,19,ami sato
# 4,yumi,adachi,21,yumi adachi
//}
@see CSV.new... -
CSV
. filter(input , output , options = Hash . new) {|row| . . . } (115.0) -
このメソッドは CSV データに対して Unix のツール群のようなフィルタを構築 するのに便利です。
...適用されます。
":output_row_sep" のデフォルト値は $/ です。
//emlist[例: input, output は初期値][ruby]{
# $ echo "header1,header2\nrow1_1,row1_2" > in.csv; ruby test.rb in.csv
require "csv"
options = { headers: true, return_headers: true, write_headers: true......<< "full name"
next
end
row << row["first name"] + " " + row["last name"]
end
# out.csv の内容
# => id,first name,last name,age,full name
# 1,taro,tanaka,20,taro tanaka
# 2,jiro,suzuki,18,jiro suzuki
# 3,ami,sato,19,ami sato
# 4,yumi,adachi,21,yumi adachi
//}
@see CSV.new... -
CSV
. filter(options = Hash . new) {|row| . . . } (115.0) -
このメソッドは CSV データに対して Unix のツール群のようなフィルタを構築 するのに便利です。
...適用されます。
":output_row_sep" のデフォルト値は $/ です。
//emlist[例: input, output は初期値][ruby]{
# $ echo "header1,header2\nrow1_1,row1_2" > in.csv; ruby test.rb in.csv
require "csv"
options = { headers: true, return_headers: true, write_headers: true......<< "full name"
next
end
row << row["first name"] + " " + row["last name"]
end
# out.csv の内容
# => id,first name,last name,age,full name
# 1,taro,tanaka,20,taro tanaka
# 2,jiro,suzuki,18,jiro suzuki
# 3,ami,sato,19,ami sato
# 4,yumi,adachi,21,yumi adachi
//}
@see CSV.new... -
Array
# pack(template , buffer: String . new) -> String (107.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
...c.to_i}.pack("C4")
# => "\x7F\x00\x00\x01"
//}
: sockaddr_in 構造体
//emlist[][ruby]{
require 'socket'
[Socket::AF_INET,
Socket.getservbyname('echo'),
127, 0, 0, 1].pack("s n C4 x8")
# => "\x02\x00\x00\a\x7F\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00"
//}
pack/unpack を使う代わりに... -
Net
:: Telnet (42.0) -
このクラスは telnet のクライアント機能を提供します。
...ル経由で
コマンドを実行することを考えてみましょう。
これを Net::Telnet で実現するためには、
まず Net::Telnet.new に "Host" オプションを
与えてオブジェクトを作り、 Net::Telnet#login で
ユーザ名とパスワードを送ってログイン......::Telnet のオブジェクトは SMTP や HTTP のような telnet で
ないサービスにも利用できます。この場合には
Net::Telnet.new に "Port" オプションを与えることで
ポートを指定する必要があるでしょう。また、
"Telnetmode" オプションに fal......し、実行後、プロンプトが出るまで待ち合わせる
telnet.cmd("ls") {|c| print c}
# sleep で 5 秒
telnet.cmd("sleep 5 && echo foobar &") {|c| print c}
STDOUT.flush # <- これがないとここまで処理が来てることがわかりにくい
# 前のコマン... -
Socket
. tcp _ server _ loop(host , port) {|sock , addr| . . . } -> () (18.0) -
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。
...逐次的な echo サーバ
# 一度に一つのクライアントした取り扱えない
require 'socket'
Socket.tcp_server_loop(16807) {|sock, client_addrinfo|
begin
IO.copy_stream(sock, sock)
ensure
sock.close
end
}
# スレッドを使った echo サーバ......ない(つまり接続過剰になりえる)ことに注意
require 'socket'
Socket.tcp_server_loop(16807) {|sock, client_addrinfo|
Thread.new {
begin
IO.copy_stream(sock, sock)
ensure
sock.close
end
}
}
内部的には Socket.tcp_server_sockets で... -
Socket
. tcp _ server _ loop(port) {|sock , addr| . . . } -> () (18.0) -
TCP/IP で host:port で待ち受けるサーバ側のソケットを作成し、 新しい接続を受け入れるごとにブロックを呼び出します。
...逐次的な echo サーバ
# 一度に一つのクライアントした取り扱えない
require 'socket'
Socket.tcp_server_loop(16807) {|sock, client_addrinfo|
begin
IO.copy_stream(sock, sock)
ensure
sock.close
end
}
# スレッドを使った echo サーバ......ない(つまり接続過剰になりえる)ことに注意
require 'socket'
Socket.tcp_server_loop(16807) {|sock, client_addrinfo|
Thread.new {
begin
IO.copy_stream(sock, sock)
ensure
sock.close
end
}
}
内部的には Socket.tcp_server_sockets で...