Linux premium71.web-hosting.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64
LiteSpeed
Server IP : 198.187.29.8 & Your IP : 18.119.167.222
Domains :
Cant Read [ /etc/named.conf ]
User : cleahvkv
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
opt /
alt /
ruby31 /
share /
ruby /
Delete
Unzip
Name
Size
Permission
Date
Action
benchmark
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
bigdecimal
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
cgi
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
csv
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
did_you_mean
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
digest
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
drb
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
erb
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
error_highlight
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
fiddle
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
forwardable
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
io
[ DIR ]
drwxr-xr-x
2024-07-04 16:28
json
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
logger
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
net
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
objspace
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
open3
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
openssl
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
optparse
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
psych
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
racc
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
random
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
reline
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
rinda
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
ripper
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
set
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
syslog
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
unicode_normalize
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
uri
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
vendor_ruby
[ DIR ]
drwxr-xr-x
2024-07-04 16:28
yaml
[ DIR ]
drwxr-xr-x
2024-07-24 10:31
English.rb
6.11
KB
-rw-r--r--
2024-07-04 16:28
abbrev.rb
3.45
KB
-rw-r--r--
2024-07-04 16:28
base64.rb
3.35
KB
-rw-r--r--
2024-07-04 16:28
benchmark.rb
18.4
KB
-rw-r--r--
2024-07-04 16:28
bigdecimal.rb
24
B
-rw-r--r--
2024-07-04 16:28
cgi.rb
9.83
KB
-rw-r--r--
2024-07-04 16:28
coverage.rb
368
B
-rw-r--r--
2024-07-04 16:28
csv.rb
92.41
KB
-rw-r--r--
2024-07-04 16:28
date.rb
1.1
KB
-rw-r--r--
2024-07-04 16:28
delegate.rb
11.68
KB
-rw-r--r--
2024-07-04 16:28
did_you_mean.rb
5.31
KB
-rw-r--r--
2024-07-04 16:28
digest.rb
3.3
KB
-rw-r--r--
2024-07-04 16:28
drb.rb
50
B
-rw-r--r--
2024-07-04 16:28
erb.rb
28.74
KB
-rw-r--r--
2024-07-04 16:28
error_highlight.rb
84
B
-rw-r--r--
2024-07-04 16:28
expect.rb
2.17
KB
-rw-r--r--
2024-07-04 16:28
fiddle.rb
2.11
KB
-rw-r--r--
2024-07-04 16:28
fileutils.rb
47.74
KB
-rw-r--r--
2024-07-04 16:28
find.rb
2.5
KB
-rw-r--r--
2024-07-04 16:28
forwardable.rb
8.98
KB
-rw-r--r--
2024-07-04 16:28
getoptlong.rb
15.46
KB
-rw-r--r--
2024-07-04 16:28
ipaddr.rb
20.58
KB
-rw-r--r--
2024-07-04 16:28
json.rb
19.29
KB
-rw-r--r--
2024-07-04 16:28
kconv.rb
5.72
KB
-rw-r--r--
2024-07-04 16:28
logger.rb
16.54
KB
-rw-r--r--
2024-07-04 16:28
mkmf.rb
88.12
KB
-rw-r--r--
2024-07-04 16:28
monitor.rb
6.76
KB
-rw-r--r--
2024-07-04 16:28
mutex_m.rb
2.33
KB
-rw-r--r--
2024-07-04 16:28
objspace.rb
2.66
KB
-rw-r--r--
2024-07-04 16:28
observer.rb
6.38
KB
-rw-r--r--
2024-07-04 16:28
open-uri.rb
24.88
KB
-rw-r--r--
2024-07-04 16:28
open3.rb
22.11
KB
-rw-r--r--
2024-07-04 16:28
openssl.rb
1.03
KB
-rw-r--r--
2024-07-04 16:28
optionparser.rb
59
B
-rw-r--r--
2024-07-04 16:28
optparse.rb
58.82
KB
-rw-r--r--
2024-07-04 16:28
ostruct.rb
13.78
KB
-rw-r--r--
2024-07-04 16:28
pathname.rb
16.47
KB
-rw-r--r--
2024-07-04 16:28
pp.rb
16.69
KB
-rw-r--r--
2024-07-04 16:28
prettyprint.rb
15.9
KB
-rw-r--r--
2024-07-04 16:28
pstore.rb
14.73
KB
-rw-r--r--
2024-07-04 16:28
psych.rb
24.61
KB
-rw-r--r--
2024-07-04 16:28
racc.rb
137
B
-rw-r--r--
2024-07-04 16:28
readline.rb
189
B
-rw-r--r--
2024-07-04 16:28
reline.rb
17.67
KB
-rw-r--r--
2024-07-04 16:28
resolv-replace.rb
1.76
KB
-rw-r--r--
2024-07-04 16:28
resolv.rb
74.18
KB
-rw-r--r--
2024-07-04 16:28
ripper.rb
2.44
KB
-rw-r--r--
2024-07-04 16:28
securerandom.rb
2.06
KB
-rw-r--r--
2024-07-04 16:28
set.rb
25.43
KB
-rw-r--r--
2024-07-04 16:28
shellwords.rb
7.09
KB
-rw-r--r--
2024-07-04 16:28
singleton.rb
4.08
KB
-rw-r--r--
2024-07-04 16:28
socket.rb
43.65
KB
-rw-r--r--
2024-07-04 16:28
tempfile.rb
12.43
KB
-rw-r--r--
2024-07-04 16:28
time.rb
23.72
KB
-rw-r--r--
2024-07-04 16:28
timeout.rb
4.07
KB
-rw-r--r--
2024-07-04 16:28
tmpdir.rb
4.44
KB
-rw-r--r--
2024-07-04 16:28
tsort.rb
14.3
KB
-rw-r--r--
2024-07-04 16:28
un.rb
11.06
KB
-rw-r--r--
2024-07-04 16:28
uri.rb
3.06
KB
-rw-r--r--
2024-07-04 16:28
weakref.rb
1.46
KB
-rw-r--r--
2024-07-04 16:28
yaml.rb
1.8
KB
-rw-r--r--
2024-07-04 16:28
Save
Rename
# frozen-string-literal: true ## # == Manipulates strings like the UNIX Bourne shell # # This module manipulates strings according to the word parsing rules # of the UNIX Bourne shell. # # The shellwords() function was originally a port of shellwords.pl, # but modified to conform to the Shell & Utilities volume of the IEEE # Std 1003.1-2008, 2016 Edition [1]. # # === Usage # # You can use Shellwords to parse a string into a Bourne shell friendly Array. # # require 'shellwords' # # argv = Shellwords.split('three blind "mice"') # argv #=> ["three", "blind", "mice"] # # Once you've required Shellwords, you can use the #split alias # String#shellsplit. # # argv = "see how they run".shellsplit # argv #=> ["see", "how", "they", "run"] # # They treat quotes as special characters, so an unmatched quote will # cause an ArgumentError. # # argv = "they all ran after the farmer's wife".shellsplit # #=> ArgumentError: Unmatched quote: ... # # Shellwords also provides methods that do the opposite. # Shellwords.escape, or its alias, String#shellescape, escapes # shell metacharacters in a string for use in a command line. # # filename = "special's.txt" # # system("cat -- #{filename.shellescape}") # # runs "cat -- special\\'s.txt" # # Note the '--'. Without it, cat(1) will treat the following argument # as a command line option if it starts with '-'. It is guaranteed # that Shellwords.escape converts a string to a form that a Bourne # shell will parse back to the original string, but it is the # programmer's responsibility to make sure that passing an arbitrary # argument to a command does no harm. # # Shellwords also comes with a core extension for Array, Array#shelljoin. # # dir = "Funny GIFs" # argv = %W[ls -lta -- #{dir}] # system(argv.shelljoin + " | less") # # runs "ls -lta -- Funny\\ GIFs | less" # # You can use this method to build a complete command line out of an # array of arguments. # # === Authors # * Wakou Aoyama # * Akinori MUSHA <knu@iDaemons.org> # # === Contact # * Akinori MUSHA <knu@iDaemons.org> (current maintainer) # # === Resources # # 1: {IEEE Std 1003.1-2008, 2016 Edition, the Shell & Utilities volume}[http://pubs.opengroup.org/onlinepubs/9699919799/utilities/contents.html] module Shellwords # Splits a string into an array of tokens in the same way the UNIX # Bourne shell does. # # argv = Shellwords.split('here are "two words"') # argv #=> ["here", "are", "two words"] # # Note, however, that this is not a command line parser. Shell # metacharacters except for the single and double quotes and # backslash are not treated as such. # # argv = Shellwords.split('ruby my_prog.rb | less') # argv #=> ["ruby", "my_prog.rb", "|", "less"] # # String#shellsplit is a shortcut for this function. # # argv = 'here are "two words"'.shellsplit # argv #=> ["here", "are", "two words"] def shellsplit(line) words = [] field = String.new line.scan(/\G\s*(?>([^\s\\\'\"]+)|'([^\']*)'|"((?:[^\"\\]|\\.)*)"|(\\.?)|(\S))(\s|\z)?/m) do |word, sq, dq, esc, garbage, sep| raise ArgumentError, "Unmatched quote: #{line.inspect}" if garbage # 2.2.3 Double-Quotes: # # The <backslash> shall retain its special meaning as an # escape character only when followed by one of the following # characters when considered special: # # $ ` " \ <newline> field << (word || sq || (dq && dq.gsub(/\\([$`"\\\n])/, '\\1')) || esc.gsub(/\\(.)/, '\\1')) if sep words << field field = String.new end end words end alias shellwords shellsplit module_function :shellsplit, :shellwords class << self alias split shellsplit end # Escapes a string so that it can be safely used in a Bourne shell # command line. +str+ can be a non-string object that responds to # +to_s+. # # Note that a resulted string should be used unquoted and is not # intended for use in double quotes nor in single quotes. # # argv = Shellwords.escape("It's better to give than to receive") # argv #=> "It\\'s\\ better\\ to\\ give\\ than\\ to\\ receive" # # String#shellescape is a shorthand for this function. # # argv = "It's better to give than to receive".shellescape # argv #=> "It\\'s\\ better\\ to\\ give\\ than\\ to\\ receive" # # # Search files in lib for method definitions # pattern = "^[ \t]*def " # open("| grep -Ern -e #{pattern.shellescape} lib") { |grep| # grep.each_line { |line| # file, lineno, matched_line = line.split(':', 3) # # ... # } # } # # It is the caller's responsibility to encode the string in the right # encoding for the shell environment where this string is used. # # Multibyte characters are treated as multibyte characters, not as bytes. # # Returns an empty quoted String if +str+ has a length of zero. def shellescape(str) str = str.to_s # An empty argument will be skipped, so return empty quotes. return "''".dup if str.empty? str = str.dup # Treat multibyte characters as is. It is the caller's responsibility # to encode the string in the right encoding for the shell # environment. str.gsub!(/[^A-Za-z0-9_\-.,:+\/@\n]/, "\\\\\\&") # A LF cannot be escaped with a backslash because a backslash + LF # combo is regarded as a line continuation and simply ignored. str.gsub!(/\n/, "'\n'") return str end module_function :shellescape class << self alias escape shellescape end # Builds a command line string from an argument list, +array+. # # All elements are joined into a single string with fields separated by a # space, where each element is escaped for the Bourne shell and stringified # using +to_s+. # # ary = ["There's", "a", "time", "and", "place", "for", "everything"] # argv = Shellwords.join(ary) # argv #=> "There\\'s a time and place for everything" # # Array#shelljoin is a shortcut for this function. # # ary = ["Don't", "rock", "the", "boat"] # argv = ary.shelljoin # argv #=> "Don\\'t rock the boat" # # You can also mix non-string objects in the elements as allowed in Array#join. # # output = `#{['ps', '-p', $$].shelljoin}` # def shelljoin(array) array.map { |arg| shellescape(arg) }.join(' ') end module_function :shelljoin class << self alias join shelljoin end end class String # call-seq: # str.shellsplit => array # # Splits +str+ into an array of tokens in the same way the UNIX # Bourne shell does. # # See Shellwords.shellsplit for details. def shellsplit Shellwords.split(self) end # call-seq: # str.shellescape => string # # Escapes +str+ so that it can be safely used in a Bourne shell # command line. # # See Shellwords.shellescape for details. def shellescape Shellwords.escape(self) end end class Array # call-seq: # array.shelljoin => string # # Builds a command line string from an argument list +array+ joining # all elements escaped for the Bourne shell and separated by a space. # # See Shellwords.shelljoin for details. def shelljoin Shellwords.join(self) end end