ライブラリ
- ビルトイン (4)
-
drb
/ extservm (1) - shell (25)
-
shell
/ builtin-command (8) -
shell
/ command-processor (14) -
shell
/ filter (1) -
shell
/ process-controller (8) -
shell
/ system-command (1) - shellwords (3)
- socket (1)
- win32ole (2)
クラス
-
DRb
:: ExtServManager (1) - Dir (3)
- Shell (25)
-
Shell
:: AppendFile (1) -
Shell
:: AppendIO (1) -
Shell
:: Cat (1) -
Shell
:: CommandProcessor (14) -
Shell
:: Concat (1) -
Shell
:: Echo (1) -
Shell
:: Filter (1) -
Shell
:: Glob (1) -
Shell
:: ProcessController (8) -
Shell
:: SystemCommand (1) -
Shell
:: Tee (1) -
Shell
:: Void (1) - Socket (1)
-
WIN32OLE
_ TYPELIB (1) -
WIN32OLE
_ VARIANT (1)
モジュール
- Process (1)
- Shellwords (3)
キーワード
- [] (1)
- activate (1)
-
active
_ process _ controllers (1) -
add
_ delegate _ command _ to _ shell (1) -
alias
_ command (3) -
alias
_ map (1) -
block
_ output _ synchronize (1) - cascade (1)
- cascade= (1)
- cd (1)
- command (1)
- debug (1)
- debug= (1)
- debug? (1)
-
debug
_ output _ lock (1) -
debug
_ output _ locked? (1) -
debug
_ output _ synchronize (1) -
debug
_ output _ try _ lock (1) -
debug
_ output _ unlock (1) -
def
_ builtin _ commands (1) -
def
_ system _ command (2) -
default
_ record _ separator (1) -
default
_ record _ separator= (1) -
default
_ system _ path (1) -
default
_ system _ path= (1) -
each
_ active _ object (1) - escape (1)
- exec (1)
- getservbyport (1)
- glob (2)
- inactivate (1)
- initialize (1)
-
install
_ builtin _ commands (1) -
install
_ system _ commands (2) - join (1)
-
method
_ added (1) - new (15)
- notify (1)
-
process
_ controllers _ exclusive (1) -
run
_ config (1) - split (1)
-
unalias
_ command (2) -
undef
_ system _ command (2) - verbose (1)
- verbose= (1)
- verbose? (1)
-
wait
_ to _ finish _ all _ process _ controllers (1)
検索結果
先頭5件
-
Shell
. undef _ system _ command(command) -> Shell :: CommandProcessor (63379.0) -
commandを削除します.
commandを削除します.
@param command 削除するコマンドの文字列を指定します。
動作例:
require 'shell'
Shell.def_system_command("ls")
# ls を定義
Shell.undef_system_command("ls")
# ls を 削除
sh = Shell.new
begin
sh.transact {
ls("-l").each {|l|
puts l
}
}
rescue NameError => err
puts ... -
Shell
. new(pwd = Dir . pwd , umask = nil) -> Shell (63355.0) -
プロセスのカレントディレクトリをpwd で指定されたディレクトリとするShellオ ブジェクトを生成します.
プロセスのカレントディレクトリをpwd で指定されたディレクトリとするShellオ
ブジェクトを生成します.
@param pwd プロセスのカレントディレクトリをpwd で指定されたディレクトリとします。
指定しない場合は、Dir.pwd が使用されます。
@param umask ファイル作成の際に用いられる umask を使用します。 -
Shell
. def _ system _ command(command , path = command) -> nil (63178.0) -
Shell のメソッドとして command を登録します.
Shell のメソッドとして command を登録します.
OS上のコマンドを実行するにはまず, Shellのメソッドとして定義します.
注) コマンドを定義しなくとも直接実行できる Shell#system コマンドもあります.
@param command Shell のメソッドとして定義するコマンドを文字列で指定します。
@param path command のパスを指定します。
指定しない場合はcommand と同じになります。
例)
require 'shell'
Shell.def_system_command "ls"
# ls ... -
Shell
. alias _ command(alias , command , *opts) { . . . } -> self (63142.0) -
コマンドの別名(エイリアス)を作成します。 コマンドが無い場合は、Shell.def_system_command などであらかじめ作成します.
コマンドの別名(エイリアス)を作成します。
コマンドが無い場合は、Shell.def_system_command などであらかじめ作成します.
@param alias エイリアスの名前を文字列で指定します.
@param command コマンド名を文字列で指定します.
@param opts command で指定したコマンドのオプションを指定します.
使用例: ls -la | sort -k 5 のような例。
require 'shell'
Shell.def_system_command("ls")
Shell.alias_command("lsla", "... -
Shell
. default _ system _ path -> Array (63142.0) -
Shellでもちいられるコマンドを検索する対象のパスを設定および、参照します。
Shellでもちいられるコマンドを検索する対象のパスを設定および、参照します。
@param path Shellでもちいられるコマンドを検索する対象のパスを文字列で指定します。
動作例
require 'shell'
p Shell.default_system_path
# 例
#=> [ "/opt/local/bin", "/opt/local/sbin", "/usr/bin", "/bin", "/usr/sbin", "/sbin", "/usr/local/bin", "/usr/X11/bin", "/Users/kouya/bin"]
Shell... -
Shell
. default _ system _ path=(path) (63142.0) -
Shellでもちいられるコマンドを検索する対象のパスを設定および、参照します。
Shellでもちいられるコマンドを検索する対象のパスを設定および、参照します。
@param path Shellでもちいられるコマンドを検索する対象のパスを文字列で指定します。
動作例
require 'shell'
p Shell.default_system_path
# 例
#=> [ "/opt/local/bin", "/opt/local/sbin", "/usr/bin", "/bin", "/usr/sbin", "/sbin", "/usr/local/bin", "/usr/X11/bin", "/Users/kouya/bin"]
Shell... -
Shell
. unalias _ command(alias) -> () (63130.0) -
commandのaliasを削除します.
commandのaliasを削除します.
@param alias 削除したいエイリアスの名前を文字列で指定します。
@raise NameError alias で指定したコマンドが無い場合に発生します。
使用例: ls -la | sort -k 5 のような例。
require 'shell'
Shell.def_system_command("ls")
Shell.alias_command("lsla", "ls", "-a", "-l")
Shell.def_system_command("sort")
sh = Shell.new
sh.trans... -
Shell
. install _ system _ commands(pre = "sys _ ") -> () (63124.0) -
system_path上にある全ての実行可能ファイルをShellに定義する. メソッ ド名は元のファイル名の頭にpreをつけたものとなる.
system_path上にある全ての実行可能ファイルをShellに定義する. メソッ
ド名は元のファイル名の頭にpreをつけたものとなる.
@param pre Shellに定義するメソッド名の先頭に付加される文字列を指定します。
使用例: ls -l | head -n 5 のような例。
require 'shell'
Shell.install_system_commands
sh = Shell.new
sh.verbose = false
sh.transact {
(sys_ls("-l") | sys_head("-n 5")).each {|l... -
Shell
. cd(path = nil , verbose = self . verbose) -> self (63088.0) -
pathをカレントディレクトリとするShellオブジェクトを生成します.
pathをカレントディレクトリとするShellオブジェクトを生成します.
@param path カレントディレクトリとするディレクトリを文字列で指定します。
@param verbose true を指定すると冗長な出力を行います。
使用例
require 'shell'
sh = Shell.new
sh.cd("/tmp") -
Shell
. default _ record _ separator -> String (63040.0) -
執筆者募集
執筆者募集
Shell で用いられる入力レコードセパレータを表す文字列を設定および参照します。
なにも指定しない場合は$/ の値が用いられます。
@param rs Shell で用いられる入力レコードセパレータを表す文字列を指定します。 -
Shell
. default _ record _ separator=(rs) (63040.0) -
執筆者募集
執筆者募集
Shell で用いられる入力レコードセパレータを表す文字列を設定および参照します。
なにも指定しない場合は$/ の値が用いられます。
@param rs Shell で用いられる入力レコードセパレータを表す文字列を指定します。 -
Shell
. cascade -> bool (63004.0) -
@todo
@todo -
Shell
. cascade=(flag) (63004.0) -
@todo
@todo -
Shell
. debug -> bool | Integer (63004.0) -
@todo
@todo
デバッグ用フラグを参照します。 -
Shell
. debug=(val) (63004.0) -
デバッグ用のフラグを設定します。
デバッグ用のフラグを設定します。
@param val bool 値や整数値を指定します。詳細は下記を参照してください。
# debug: true -> normal debug
# debug: 1 -> eval definition debug
# debug: 2 -> detail inspect debug -
Shell
. debug? -> bool | Integer (63004.0) -
@todo
@todo
デバッグ用フラグを参照します。 -
Shell
. debug _ output _ lock -> Mutex (63004.0) -
@todo
@todo
@see Thread::Mutex#lock -
Shell
. debug _ output _ locked? -> bool (63004.0) -
@todo
@todo
@see Thread::Mutex#locked? -
Shell
. debug _ output _ synchronize (63004.0) -
@todo
@todo
@see Thread::Mutex#synchronize -
Shell
. debug _ output _ try _ lock -> bool (63004.0) -
@todo
@todo
@see Thread::Mutex#try_lock -
Shell
. debug _ output _ unlock -> Mutex | nil (63004.0) -
@todo
@todo
@see Thread::Mutex#unlock -
Shell
. notify(*opts) {|message| . . . } -> String (63004.0) -
@todo
@todo -
Shell
. verbose -> bool (63004.0) -
@todo
@todo -
Shell
. verbose=(flag) (63004.0) -
true ならば冗長な出力の設定を行います。
true ならば冗長な出力の設定を行います。
@param flag true ならば冗長な出力の設定を行います。 -
Shell
. verbose? -> bool (63004.0) -
@todo
@todo -
Shell
:: CommandProcessor . add _ delegate _ command _ to _ shell(id) (27325.0) -
@todo
@todo
Shell 自体を初期化する時に呼び出されるメソッドです。
ユーザが使用することはありません。
@param id メソッド名を指定します。 -
Shell
:: Filter . new(sh) -> Shell :: Filter (9355.0) -
Shell::Filter クラスのインスタンスを返します。 通常このメソッドを直接使う機会は少ないでしょう。
Shell::Filter クラスのインスタンスを返します。
通常このメソッドを直接使う機会は少ないでしょう。 -
Shell
:: ProcessController . new(shell) (9343.0) -
自身を初期化します。
自身を初期化します。
@param shell Shell のインスタンスを指定します。 -
Shell
:: CommandProcessor . new(shell) (9307.0) -
@todo
@todo -
Shell
:: CommandProcessor . alias _ map -> Hash (9052.0) -
Shell::CommandProcessor.alias_command で定義したエイリアスの一覧を返します。
Shell::CommandProcessor.alias_command で定義したエイリアスの一覧を返します。 -
Shell
:: CommandProcessor . method _ added(id) (9052.0) -
@todo このクラスに定義されたメソッドを Shell にも定義するためのフックです。
@todo
このクラスに定義されたメソッドを Shell にも定義するためのフックです。
@param id メソッド名を指定します。 -
Shell
:: CommandProcessor . run _ config -> () (9052.0) -
ユーザのホームディレクトリに "~/.rb_shell" というファイルが存在すれば、それを Kernel.#load します。
ユーザのホームディレクトリに "~/.rb_shell" というファイルが存在すれば、それを Kernel.#load します。
存在しない時は何もしません。 -
Shell
:: AppendFile . new(sh , filename) (9004.0) -
@todo
@todo -
Shell
:: AppendIO . new(sh , filename) (9004.0) -
@todo
@todo -
Shell
:: Cat . new(sh , *filenames) (9004.0) -
@todo
@todo -
Shell
:: CommandProcessor . alias _ command(alias , command , *opts) -> self (9004.0) -
@todo
@todo
@param alias エイリアスの名前を指定します。
@param command コマンド名を指定します。
@param opts コマンドに与えるオプションを指定します。
@raise SyntaxError コマンドのエイリアス作成に失敗した時に発生します。 -
Shell
:: CommandProcessor . alias _ command(alias , command , *opts) { . . . } -> self (9004.0) -
@todo
@todo
@param alias エイリアスの名前を指定します。
@param command コマンド名を指定します。
@param opts コマンドに与えるオプションを指定します。
@raise SyntaxError コマンドのエイリアス作成に失敗した時に発生します。 -
Shell
:: CommandProcessor . def _ builtin _ commands(delegation _ class , commands _ specs) -> () (9004.0) -
@todo
@todo
@param delegation_class 処理を委譲したいクラスかモジュールを指定します。
@param commands_specs コマンドの仕様を文字列の配列で指定します。
[[コマンド名, [引数1, 引数2, ...]], ...] -
Shell
:: CommandProcessor . def _ system _ command(command , path = command) -> () (9004.0) -
@todo
@todo
与えられたコマンドをメソッドとして定義します。
@param command 定義したいコマンドを指定します。
@param path command のパスを指定します。省略すると環境変数 PATH から command を探します。 -
Shell
:: CommandProcessor . initialize -> () (9004.0) -
@todo
@todo
このクラスを初期化します。 -
Shell
:: CommandProcessor . install _ builtin _ commands -> () (9004.0) -
ビルトインコマンドを定義します。
ビルトインコマンドを定義します。 -
Shell
:: CommandProcessor . install _ system _ commands(prefix = "sys _ ") -> () (9004.0) -
全てのシステムコマンドをメソッドとして定義します。
全てのシステムコマンドをメソッドとして定義します。
既に定義されているコマンドを再定義することはありません。
デフォルトでは全てのコマンドに "sys_" というプレフィクスが付きます。
また、メソッド名として使用できない文字は全て "_" に置換してメソッドを定義します。
このメソッドの実行中に発生した例外は単に無視されます。
@param prefix プレフィクスを指定します。 -
Shell
:: CommandProcessor . unalias _ command(alias) -> self (9004.0) -
エイリアスを削除します。
エイリアスを削除します。
@param alias 削除したいエイリアスを指定します。 -
Shell
:: CommandProcessor . undef _ system _ command(command) -> self (9004.0) -
与えられたコマンドを削除します。
与えられたコマンドを削除します。
@param command 削除したいコマンド名を指定します。 -
Shell
:: Concat . new(sh , *jobs) (9004.0) -
@todo
@todo -
Shell
:: Echo . new(sh , *strings) (9004.0) -
@todo
@todo -
Shell
:: Glob . new(sh , pattern) (9004.0) -
@todo
@todo -
Shell
:: ProcessController . activate(pc) -> () (9004.0) -
@todo
@todo -
Shell
:: ProcessController . active _ process _ controllers -> () (9004.0) -
@todo
@todo -
Shell
:: ProcessController . block _ output _ synchronize { . . . } -> () (9004.0) -
@todo
@todo -
Shell
:: ProcessController . each _ active _ object {|ref| . . . } -> () (9004.0) -
@todo
@todo -
Shell
:: ProcessController . inactivate(pc) -> () (9004.0) -
@todo
@todo -
Shell
:: ProcessController . process _ controllers _ exclusive -> () (9004.0) -
@todo
@todo -
Shell
:: ProcessController . wait _ to _ finish _ all _ process _ controllers -> () (9004.0) -
@todo
@todo -
Shell
:: SystemCommand . new(sh , command , *opts) (9004.0) -
@todo
@todo
@param sh
@param command
@param opts -
Shell
:: Tee . new(sh , filename) (9004.0) -
@todo
@todo -
Shell
:: Void . new(sh , *opts) (9004.0) -
-
Shellwords
. escape(str) -> String (9004.0) -
文字列を Bourne シェルのコマンドライン中で安全に使えるようにエスケープします。
文字列を Bourne シェルのコマンドライン中で安全に使えるようにエスケープします。
このメソッドは、Shellwords.#shellescape の別名です。
@param str エスケープの対象となる文字列を指定します。
@return エスケープされた文字列を返します。 -
Shellwords
. join(array) -> String (9004.0) -
配列の各要素である文字列に対して、Bourne シェルのコマンドライン中で安全に 使えるためのエスケープを適用し、空白文字を介してそれらを連結したコマンド ライン文字列を生成します。
配列の各要素である文字列に対して、Bourne シェルのコマンドライン中で安全に
使えるためのエスケープを適用し、空白文字を介してそれらを連結したコマンド
ライン文字列を生成します。
このメソッドは、Shellwords.#shelljoin の別名です。
@param array エスケープ対象の文字列を要素とする配列を指定します。
@return エスケープ結果を連結した文字列を返します。 -
Shellwords
. split(line) -> [String] (9004.0) -
Bourne シェルの単語分割規則に従った空白区切りの単語分割を行い、 単語 (文字列) の配列を返します。
Bourne シェルの単語分割規則に従った空白区切りの単語分割を行い、
単語 (文字列) の配列を返します。
このメソッドは、Shellwords.#shellsplit の別名です。
@param line 分割の対象となる文字列を指定します。
@return 分割結果の各文字列を要素とする配列を返します。
@raise ArgumentError 引数の中に対でないシングルクォートまたはダブル
クォートが現れた場合に発生します。 -
WIN32OLE
_ VARIANT . new(val , vartype = nil) -> WIN32OLE _ VARIANT (58.0) -
指定したオブジェクトを値とするWIN32OLE_VARIANTオブジェクトを生成します。
指定したオブジェクトを値とするWIN32OLE_VARIANTオブジェクトを生成します。
@param val ラップするRubyオブジェクトを指定します。
@param vartype 省略時はWIN32OLEが自動型変換を行います。指定する場合は
WIN32OLE::VARIANTの定数を指定してください。
@return val引数を値として持つWIN32OLE_VARIANTオブジェクトを返します。
@raise TypeError val引数の型がArray、String、Integer、Float、Time、
WI... -
DRb
:: ExtServManager . command -> { String => String|[String] } (40.0) -
サービスを起動するためのコマンドを指定するための Hash を 返します。
サービスを起動するためのコマンドを指定するための Hash を
返します。
Hash のキーがサービス名で、値がそのサービスを起動するためのコマンドです。
この Hash を変更することでサービスを定義します。
DRb::ExtServManager.command= で Hash 自体を
変更することでも同じことができます。
コマンドは文字列、もしくは文字列の配列で指定します。
文字列で指定した場合は Kernel.#spawn で
プロセスを起動する際に shell 経由で起動されます。
文字列の配列で指定すると shell を経由せずに起動されます。 -
Process
. exec(command , *args) -> () (40.0) -
カレントプロセスを与えられた外部コマンドで置き換えます。
カレントプロセスを与えられた外部コマンドで置き換えます。
=== 引数の解釈
引数が一つだけ与えられた場合、command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
引数が複数与えられた場合、第 2 引数以降は command に直接渡され、
インタプリタから直接実行されます。
第 1 引数が 2 要素の配列の場合、第 1 要素の文字列が実際に起動する
プログラムのパスで、第 2 要素が「みせかけ... -
WIN32OLE
_ TYPELIB . new(libname , mjv = nil , miv = nil) -> WIN32OLE _ TYPELIB (40.0) -
WIN32OLE_TYPELIBオブジェクトを生成します。
WIN32OLE_TYPELIBオブジェクトを生成します。
@param libname 生成するTypeLibのレジストリ上のドキュメント文字列
(WIN32OLE_TYPELIB#name)または
GUID(WIN32OLE_TYPELIB#guid)またはTLBファイル名を
文字列で指定します。
@param mjv 作成するTypeLibのメジャーバージョン番号をIntegerで指定します。
または整数部にメジャーバージョン、小数点数部にマイナーバージョ
... -
Dir
. [](*pattern) -> [String] (22.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
ワイルドカードの展開を行い、
パターンにマッチするファイル名を文字列の配列として返します。
パターンにマッチするファイルがない場合は空の配列を返します。
ブロックが与えられたときはワイルドカードにマッチしたファイルを
引数にそのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。
パターンを文字列で指定する場合、パターンを "\0" で区切って
1 度に複数のパターンを指定することもでき... -
Dir
. glob(pattern , flags = 0) -> [String] (22.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
ワイルドカードの展開を行い、
パターンにマッチするファイル名を文字列の配列として返します。
パターンにマッチするファイルがない場合は空の配列を返します。
ブロックが与えられたときはワイルドカードにマッチしたファイルを
引数にそのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。
パターンを文字列で指定する場合、パターンを "\0" で区切って
1 度に複数のパターンを指定することもでき... -
Dir
. glob(pattern , flags = 0) {|file| . . . } -> nil (22.0) -
ワイルドカードの展開を行い、 パターンにマッチするファイル名を文字列の配列として返します。 パターンにマッチするファイルがない場合は空の配列を返します。
ワイルドカードの展開を行い、
パターンにマッチするファイル名を文字列の配列として返します。
パターンにマッチするファイルがない場合は空の配列を返します。
ブロックが与えられたときはワイルドカードにマッチしたファイルを
引数にそのブロックを 1 つずつ評価して nil を返します
@param pattern パターンを文字列か配列で指定します。
配列を指定すると複数のパターンを指定できます。
パターンを文字列で指定する場合、パターンを "\0" で区切って
1 度に複数のパターンを指定することもでき... -
Socket
. getservbyport(port , protocol _ name="tcp") -> String (22.0) -
ポート番号に対応するサービスの正式名を返します。
ポート番号に対応するサービスの正式名を返します。
@param port ポート番号
@param protocol_name "tcp" や "udp" などのプロトコル名
@return サービスの正式名
require 'socket'
Socket.getservbyport(80) #=> "www"
Socket.getservbyport(514, "tcp") #=> "shell"
Socket.getservbyport(514, "udp") #=> "syslog"