Linux server1.dn-server.com 4.18.0-553.89.1.lve.el8.x86_64 #1 SMP Wed Dec 10 13:58:50 UTC 2025 x86_64
LiteSpeed
Server IP : 195.201.204.189 & Your IP : 216.73.216.198
Domains :
Cant Read [ /etc/named.conf ]
User : beriska1
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
opt /
alt /
ruby21 /
lib64 /
ruby /
2.1.0 /
Delete
Unzip
Name
Size
Permission
Date
Action
bigdecimal
[ DIR ]
drwxr-xr-x
2026-05-01 04:24
cgi
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
date
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
digest
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
dl
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
drb
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
fiddle
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
io
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
irb
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
json
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
matrix
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
minitest
[ DIR ]
drwxr-xr-x
2026-05-01 04:24
net
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
openssl
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
optparse
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
psych
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
racc
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rake
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rbconfig
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rdoc
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rexml
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rinda
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
ripper
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rss
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
rubygems
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
shell
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
syslog
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
test
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
tk
[ DIR ]
drwxr-xr-x
2026-05-01 04:23
tkextlib
[ DIR ]
drwxr-xr-x
2026-05-01 04:23
uri
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
webrick
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
x86_64-linux
[ DIR ]
drwxr-xr-x
2026-05-01 04:24
xmlrpc
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
yaml
[ DIR ]
drwxr-xr-x
2026-04-30 23:44
English.rb
6.44
KB
-rw-r--r--
2013-02-04 06:20
abbrev.rb
3.31
KB
-rw-r--r--
2013-02-21 21:05
base64.rb
2.63
KB
-rw-r--r--
2013-05-19 07:40
benchmark.rb
17.95
KB
-rw-r--r--
2013-09-20 20:35
cgi.rb
9.84
KB
-rw-r--r--
2013-07-18 18:20
cmath.rb
8.93
KB
-rw-r--r--
2015-07-03 13:42
complex.rb
380
B
-rw-r--r--
2009-08-16 20:04
csv.rb
81.68
KB
-rw-r--r--
2014-09-14 19:55
date.rb
946
B
-rw-r--r--
2023-07-26 17:52
debug.rb
29.08
KB
-rw-r--r--
2013-12-14 18:18
delegate.rb
11.13
KB
-rw-r--r--
2014-02-02 17:16
digest.rb
2.34
KB
-rw-r--r--
2023-07-26 17:52
dl.rb
280
B
-rw-r--r--
2023-07-26 17:52
drb.rb
19
B
-rw-r--r--
2009-10-02 14:15
e2mmap.rb
3.89
KB
-rw-r--r--
2013-12-17 14:50
erb.rb
26.07
KB
-rw-r--r--
2014-08-11 19:25
expect.rb
2.14
KB
-rw-r--r--
2023-07-26 17:52
fiddle.rb
1.65
KB
-rw-r--r--
2023-07-26 17:52
fileutils.rb
47.17
KB
-rw-r--r--
2015-04-28 09:46
find.rb
2.36
KB
-rw-r--r--
2014-10-15 19:01
forwardable.rb
7.86
KB
-rw-r--r--
2013-05-24 02:16
getoptlong.rb
15.38
KB
-rw-r--r--
2013-05-19 19:20
gserver.rb
8.86
KB
-rw-r--r--
2014-07-06 18:27
ipaddr.rb
17.05
KB
-rw-r--r--
2015-10-29 18:06
irb.rb
20.03
KB
-rw-r--r--
2016-03-25 12:52
json.rb
1.74
KB
-rw-r--r--
2023-07-26 17:52
kconv.rb
5.74
KB
-rw-r--r--
2023-07-26 17:52
logger.rb
22.37
KB
-rw-r--r--
2016-02-25 14:34
mathn.rb
6.52
KB
-rw-r--r--
2011-08-27 02:52
matrix.rb
45.43
KB
-rw-r--r--
2014-07-11 18:38
mkmf.rb
80.5
KB
-rw-r--r--
2023-07-26 17:49
monitor.rb
6.93
KB
-rw-r--r--
2012-11-16 20:25
multi-tk.rb
98.4
KB
-rw-r--r--
2023-07-26 17:52
mutex_m.rb
2
KB
-rw-r--r--
2013-02-20 06:21
observer.rb
5.81
KB
-rw-r--r--
2013-11-21 08:14
open-uri.rb
24.27
KB
-rw-r--r--
2014-02-22 12:24
open3.rb
20.37
KB
-rw-r--r--
2013-12-01 06:43
openssl.rb
528
B
-rw-r--r--
2023-07-26 17:52
optparse.rb
50.8
KB
-rw-r--r--
2013-11-28 11:04
ostruct.rb
7.7
KB
-rw-r--r--
2013-10-23 18:44
pathname.rb
15.3
KB
-rw-r--r--
2023-07-26 17:52
pp.rb
14.1
KB
-rw-r--r--
2013-10-22 12:59
prettyprint.rb
16.33
KB
-rw-r--r--
2013-05-19 07:40
prime.rb
13.2
KB
-rw-r--r--
2013-07-15 08:51
profile.rb
205
B
-rw-r--r--
2009-10-02 14:15
profiler.rb
4.51
KB
-rw-r--r--
2013-05-20 03:34
pstore.rb
14.85
KB
-rw-r--r--
2012-11-11 07:53
psych.rb
14.88
KB
-rw-r--r--
2023-07-26 17:52
rake.rb
2.12
KB
-rw-r--r--
2013-10-12 01:05
rational.rb
308
B
-rw-r--r--
2009-09-24 04:12
rdoc.rb
4.92
KB
-rw-r--r--
2013-12-22 13:55
remote-tk.rb
14.11
KB
-rw-r--r--
2023-07-26 17:52
resolv-replace.rb
1.73
KB
-rw-r--r--
2013-03-11 17:17
resolv.rb
72.31
KB
-rw-r--r--
2015-05-13 10:03
ripper.rb
2.53
KB
-rw-r--r--
2023-07-26 17:52
rss.rb
2.84
KB
-rw-r--r--
2011-05-11 14:52
rubygems.rb
30.97
KB
-rw-r--r--
2023-07-26 17:49
scanf.rb
23.54
KB
-rw-r--r--
2013-12-14 06:25
securerandom.rb
8.49
KB
-rw-r--r--
2013-11-07 21:34
set.rb
18.7
KB
-rw-r--r--
2013-11-23 03:20
shell.rb
10.3
KB
-rw-r--r--
2013-05-19 07:40
shellwords.rb
5.94
KB
-rw-r--r--
2013-12-14 21:56
singleton.rb
4.02
KB
-rw-r--r--
2011-05-18 18:39
socket.rb
25.6
KB
-rw-r--r--
2023-07-26 17:52
sync.rb
7.25
KB
-rw-r--r--
2013-05-19 07:40
tcltk.rb
10.06
KB
-rw-r--r--
2023-07-26 17:52
tempfile.rb
11.4
KB
-rw-r--r--
2013-11-21 12:58
thwait.rb
3.38
KB
-rw-r--r--
2013-11-07 20:32
time.rb
21.32
KB
-rw-r--r--
2015-08-17 12:11
timeout.rb
3.7
KB
-rw-r--r--
2015-08-17 12:25
tk.rb
163.72
KB
-rw-r--r--
2023-07-26 17:52
tkafter.rb
57
B
-rw-r--r--
2023-07-26 17:52
tkbgerror.rb
63
B
-rw-r--r--
2023-07-26 17:52
tkcanvas.rb
60
B
-rw-r--r--
2023-07-26 17:52
tkclass.rb
950
B
-rw-r--r--
2023-07-26 17:52
tkconsole.rb
63
B
-rw-r--r--
2023-07-26 17:52
tkdialog.rb
60
B
-rw-r--r--
2023-07-26 17:52
tkentry.rb
57
B
-rw-r--r--
2023-07-26 17:52
tkfont.rb
54
B
-rw-r--r--
2023-07-26 17:52
tkmacpkg.rb
60
B
-rw-r--r--
2023-07-26 17:52
tkmenubar.rb
63
B
-rw-r--r--
2023-07-26 17:52
tkmngfocus.rb
66
B
-rw-r--r--
2023-07-26 17:52
tkpalette.rb
63
B
-rw-r--r--
2023-07-26 17:52
tkscrollbox.rb
69
B
-rw-r--r--
2023-07-26 17:52
tktext.rb
54
B
-rw-r--r--
2023-07-26 17:52
tkvirtevent.rb
69
B
-rw-r--r--
2023-07-26 17:52
tkwinpkg.rb
60
B
-rw-r--r--
2023-07-26 17:52
tmpdir.rb
4.15
KB
-rw-r--r--
2013-05-19 07:40
tracer.rb
6.4
KB
-rw-r--r--
2013-07-18 18:20
tsort.rb
14.14
KB
-rw-r--r--
2013-10-17 19:29
ubygems.rb
268
B
-rw-r--r--
2009-10-02 14:15
un.rb
8.87
KB
-rw-r--r--
2013-07-05 18:13
uri.rb
3.07
KB
-rw-r--r--
2011-05-14 00:33
weakref.rb
3.23
KB
-rw-r--r--
2013-11-10 02:12
webrick.rb
6.69
KB
-rw-r--r--
2013-10-06 03:09
xmlrpc.rb
8.49
KB
-rw-r--r--
2013-12-12 06:39
yaml.rb
2.31
KB
-rw-r--r--
2013-08-12 08:19
Save
Rename
# # shell.rb - # $Release Version: 0.7 $ # $Revision: 1.9 $ # by Keiju ISHITSUKA(keiju@ruby-lang.org) # # -- # # # require "e2mmap" require "thread" unless defined?(Mutex) require "forwardable" require "shell/error" require "shell/command-processor" require "shell/process-controller" # Shell implements an idiomatic Ruby interface for common UNIX shell commands. # # It provides users the ability to execute commands with filters and pipes, # like +sh+/+csh+ by using native facilities of Ruby. # # == Examples # # === Temp file creation # # In this example we will create three +tmpFile+'s in three different folders # under the +/tmp+ directory. # # sh = Shell.cd("/tmp") # Change to the /tmp directory # sh.mkdir "shell-test-1" unless sh.exists?("shell-test-1") # # make the 'shell-test-1' directory if it doesn't already exist # sh.cd("shell-test-1") # Change to the /tmp/shell-test-1 directory # for dir in ["dir1", "dir3", "dir5"] # if !sh.exists?(dir) # sh.mkdir dir # make dir if it doesnt' already exist # sh.cd(dir) do # # change to the `dir` directory # f = sh.open("tmpFile", "w") # open a new file in write mode # f.print "TEST\n" # write to the file # f.close # close the file handler # end # print sh.pwd # output the process working directory # end # end # # === Temp file creation with self # # This example is identical to the first, except we're using # CommandProcessor#transact. # # CommandProcessor#transact executes the given block against self, in this case # +sh+; our Shell object. Within the block we can substitute +sh.cd+ to +cd+, # because the scope within the block uses +sh+ already. # # sh = Shell.cd("/tmp") # sh.transact do # mkdir "shell-test-1" unless exists?("shell-test-1") # cd("shell-test-1") # for dir in ["dir1", "dir3", "dir5"] # if !exists?(dir) # mkdir dir # cd(dir) do # f = open("tmpFile", "w") # f.print "TEST\n" # f.close # end # print pwd # end # end # end # # === Pipe /etc/printcap into a file # # In this example we will read the operating system file +/etc/printcap+, # generated by +cupsd+, and then output it to a new file relative to the +pwd+ # of +sh+. # # sh = Shell.new # sh.cat("/etc/printcap") | sh.tee("tee1") > "tee2" # (sh.cat < "/etc/printcap") | sh.tee("tee11") > "tee12" # sh.cat("/etc/printcap") | sh.tee("tee1") >> "tee2" # (sh.cat < "/etc/printcap") | sh.tee("tee11") >> "tee12" # class Shell @RCS_ID='-$Id: shell.rb,v 1.9 2002/03/04 12:01:10 keiju Exp keiju $-' include Error extend Exception2MessageMapper # @cascade = true # debug: true -> normal debug # debug: 1 -> eval definition debug # debug: 2 -> detail inspect debug @debug = false @verbose = true @debug_display_process_id = false @debug_display_thread_id = true @debug_output_mutex = Mutex.new class << Shell extend Forwardable attr_accessor :cascade, :debug, :verbose # alias cascade? cascade alias debug? debug alias verbose? verbose @verbose = true def debug=(val) @debug = val @verbose = val if val end # call-seq: # Shell.cd(path) # # Creates a new Shell instance with the current working directory # set to +path+. def cd(path) new(path) end # Returns the directories in the current shell's PATH environment variable # as an array of directory names. This sets the system_path for all # instances of Shell. # # Example: If in your current shell, you did: # # $ echo $PATH # /usr/bin:/bin:/usr/local/bin # # Running this method in the above shell would then return: # # ["/usr/bin", "/bin", "/usr/local/bin"] # def default_system_path if @default_system_path @default_system_path else ENV["PATH"].split(":") end end # Sets the system_path that new instances of Shell should have as their # initial system_path. # # +path+ should be an array of directory name strings. def default_system_path=(path) @default_system_path = path end def default_record_separator if @default_record_separator @default_record_separator else $/ end end def default_record_separator=(rs) @default_record_separator = rs end # os resource mutex mutex_methods = ["unlock", "lock", "locked?", "synchronize", "try_lock", "exclusive_unlock"] for m in mutex_methods def_delegator("@debug_output_mutex", m, "debug_output_"+m.to_s) end end # call-seq: # Shell.new(pwd, umask) -> obj # # Creates a Shell object which current directory is set to the process # current directory, unless otherwise specified by the +pwd+ argument. def initialize(pwd = Dir.pwd, umask = nil) @cwd = File.expand_path(pwd) @dir_stack = [] @umask = umask @system_path = Shell.default_system_path @record_separator = Shell.default_record_separator @command_processor = CommandProcessor.new(self) @process_controller = ProcessController.new(self) @verbose = Shell.verbose @debug = Shell.debug end # Returns the command search path in an array attr_reader :system_path # Sets the system path (the Shell instance's PATH environment variable). # # +path+ should be an array of directory name strings. def system_path=(path) @system_path = path rehash end # Returns the umask attr_accessor :umask attr_accessor :record_separator attr_accessor :verbose, :debug def debug=(val) @debug = val @verbose = val if val end alias verbose? verbose alias debug? debug attr_reader :command_processor attr_reader :process_controller def expand_path(path) File.expand_path(path, @cwd) end # Most Shell commands are defined via CommandProcessor # # Dir related methods # # Shell#cwd/dir/getwd/pwd # Shell#chdir/cd # Shell#pushdir/pushd # Shell#popdir/popd # Shell#mkdir # Shell#rmdir # Returns the current working directory. attr_reader :cwd alias dir cwd alias getwd cwd alias pwd cwd attr_reader :dir_stack alias dirs dir_stack # call-seq: # Shell.chdir(path) # # Creates a Shell object which current directory is set to +path+. # # If a block is given, it restores the current directory when the block ends. # # If called as iterator, it restores the current directory when the # block ends. def chdir(path = nil, verbose = @verbose) check_point if iterator? notify("chdir(with block) #{path}") if verbose cwd_old = @cwd begin chdir(path, nil) yield ensure chdir(cwd_old, nil) end else notify("chdir #{path}") if verbose path = "~" unless path @cwd = expand_path(path) notify "current dir: #{@cwd}" rehash Void.new(self) end end alias cd chdir # call-seq: # pushdir(path) # pushdir(path) { &block } # # Pushes the current directory to the directory stack, changing the current # directory to +path+. # # If +path+ is omitted, it exchanges its current directory and the top of its # directory stack. # # If a block is given, it restores the current directory when the block ends. def pushdir(path = nil, verbose = @verbose) check_point if iterator? notify("pushdir(with block) #{path}") if verbose pushdir(path, nil) begin yield ensure popdir end elsif path notify("pushdir #{path}") if verbose @dir_stack.push @cwd chdir(path, nil) notify "dir stack: [#{@dir_stack.join ', '}]" self else notify("pushdir") if verbose if pop = @dir_stack.pop @dir_stack.push @cwd chdir pop notify "dir stack: [#{@dir_stack.join ', '}]" self else Shell.Fail DirStackEmpty end end Void.new(self) end alias pushd pushdir # Pops a directory from the directory stack, and sets the current directory # to it. def popdir check_point notify("popdir") if pop = @dir_stack.pop chdir pop notify "dir stack: [#{@dir_stack.join ', '}]" self else Shell.Fail DirStackEmpty end Void.new(self) end alias popd popdir # Returns a list of scheduled jobs. def jobs @process_controller.jobs end # call-seq: # kill(signal, job) # # Sends the given +signal+ to the given +job+ def kill(sig, command) @process_controller.kill_job(sig, command) end # Convenience method for Shell::CommandProcessor.def_system_command def Shell.def_system_command(command, path = command) CommandProcessor.def_system_command(command, path) end # Convenience method for Shell::CommandProcessor.undef_system_command def Shell.undef_system_command(command) CommandProcessor.undef_system_command(command) end # Convenience method for Shell::CommandProcessor.alias_command def Shell.alias_command(ali, command, *opts, &block) CommandProcessor.alias_command(ali, command, *opts, &block) end # Convenience method for Shell::CommandProcessor.unalias_command def Shell.unalias_command(ali) CommandProcessor.unalias_command(ali) end # Convenience method for Shell::CommandProcessor.install_system_commands def Shell.install_system_commands(pre = "sys_") CommandProcessor.install_system_commands(pre) end # def inspect if debug.kind_of?(Integer) && debug > 2 super else to_s end end def self.notify(*opts) Shell::debug_output_synchronize do if opts[-1].kind_of?(String) yorn = verbose? else yorn = opts.pop end return unless yorn if @debug_display_thread_id if @debug_display_process_id prefix = "shell(##{Process.pid}:#{Thread.current.to_s.sub("Thread", "Th")}): " else prefix = "shell(#{Thread.current.to_s.sub("Thread", "Th")}): " end else prefix = "shell: " end _head = true STDERR.print opts.collect{|mes| mes = mes.dup yield mes if iterator? if _head _head = false # "shell" " + mes prefix + mes else " "* prefix.size + mes end }.join("\n")+"\n" end end CommandProcessor.initialize CommandProcessor.run_config end