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 : 3.142.219.125
Domains :
Cant Read [ /etc/named.conf ]
User : cleahvkv
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
opt /
alt /
ruby33 /
share /
ruby /
Delete
Unzip
Name
Size
Permission
Date
Action
bigdecimal
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
cgi
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
csv
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
did_you_mean
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
digest
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
drb
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
erb
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
error_highlight
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
fiddle
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
forwardable
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
io
[ DIR ]
drwxr-xr-x
2025-01-26 18:06
json
[ DIR ]
drwxr-xr-x
2025-02-06 11:33
logger
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
net
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
objspace
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
open3
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
openssl
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
optparse
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
prism
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
psych
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
random
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
reline
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
rinda
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
ripper
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
ruby_vm
[ DIR ]
drwxr-xr-x
2024-06-12 10:36
set
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
syntax_suggest
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
syslog
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
unicode_normalize
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
uri
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
vendor_ruby
[ DIR ]
drwxr-xr-x
2025-01-26 18:06
yaml
[ DIR ]
drwxr-xr-x
2025-02-06 11:32
English.rb
5.54
KB
-rw-r--r--
2025-01-26 18:06
abbrev.rb
3.47
KB
-rw-r--r--
2025-01-26 18:06
base64.rb
13.22
KB
-rw-r--r--
2025-01-26 18:06
benchmark.rb
18.42
KB
-rw-r--r--
2025-01-26 18:06
bigdecimal.rb
130
B
-rw-r--r--
2025-01-26 18:06
bundled_gems.rb
6.86
KB
-rw-r--r--
2025-01-26 18:06
cgi.rb
9.83
KB
-rw-r--r--
2025-01-26 18:06
coverage.rb
368
B
-rw-r--r--
2025-01-26 18:06
csv.rb
92.46
KB
-rw-r--r--
2025-01-26 18:06
date.rb
1.17
KB
-rw-r--r--
2025-01-26 18:06
delegate.rb
11.68
KB
-rw-r--r--
2025-01-26 18:06
did_you_mean.rb
5.36
KB
-rw-r--r--
2025-01-26 18:06
digest.rb
3.3
KB
-rw-r--r--
2025-01-26 18:06
drb.rb
50
B
-rw-r--r--
2025-01-26 18:06
erb.rb
14.53
KB
-rw-r--r--
2025-01-26 18:06
error_highlight.rb
84
B
-rw-r--r--
2025-01-26 18:06
expect.rb
2.19
KB
-rw-r--r--
2025-01-26 18:06
fiddle.rb
2.88
KB
-rw-r--r--
2025-01-26 18:06
fileutils.rb
78.69
KB
-rw-r--r--
2025-01-26 18:06
find.rb
2.52
KB
-rw-r--r--
2025-01-26 18:06
forwardable.rb
9.03
KB
-rw-r--r--
2025-01-26 18:06
getoptlong.rb
20.26
KB
-rw-r--r--
2025-01-26 18:06
ipaddr.rb
20.93
KB
-rw-r--r--
2025-01-26 18:06
json.rb
19.62
KB
-rw-r--r--
2025-01-26 18:06
kconv.rb
5.72
KB
-rw-r--r--
2025-01-26 18:06
logger.rb
22.03
KB
-rw-r--r--
2025-01-26 18:06
mkmf.rb
88.69
KB
-rw-r--r--
2025-01-26 18:06
monitor.rb
6.75
KB
-rw-r--r--
2025-01-26 18:06
mutex_m.rb
2.36
KB
-rw-r--r--
2025-01-26 18:06
objspace.rb
4.14
KB
-rw-r--r--
2025-01-26 18:06
observer.rb
6.38
KB
-rw-r--r--
2025-01-26 18:06
open-uri.rb
25.84
KB
-rw-r--r--
2025-01-26 18:06
open3.rb
47.51
KB
-rw-r--r--
2025-01-26 18:06
openssl.rb
1.03
KB
-rw-r--r--
2025-01-26 18:06
optionparser.rb
59
B
-rw-r--r--
2025-01-26 18:06
optparse.rb
61.82
KB
-rw-r--r--
2025-01-26 18:06
ostruct.rb
14.22
KB
-rw-r--r--
2025-01-26 18:06
pathname.rb
16.85
KB
-rw-r--r--
2025-01-26 18:06
pp.rb
17.24
KB
-rw-r--r--
2025-01-26 18:06
prettyprint.rb
15.93
KB
-rw-r--r--
2025-01-26 18:06
prism.rb
3.17
KB
-rw-r--r--
2025-01-26 18:06
pstore.rb
20.36
KB
-rw-r--r--
2025-01-26 18:06
psych.rb
24.44
KB
-rw-r--r--
2025-01-26 18:06
readline.rb
215
B
-rw-r--r--
2025-01-26 18:06
reline.rb
14.7
KB
-rw-r--r--
2025-01-26 18:06
resolv-replace.rb
1.76
KB
-rw-r--r--
2025-01-26 18:06
resolv.rb
85.03
KB
-rw-r--r--
2025-01-26 18:06
ripper.rb
2.44
KB
-rw-r--r--
2025-01-26 18:06
securerandom.rb
2.06
KB
-rw-r--r--
2025-01-26 18:06
set.rb
24.94
KB
-rw-r--r--
2025-01-26 18:06
shellwords.rb
7.11
KB
-rw-r--r--
2025-01-26 18:06
singleton.rb
3.94
KB
-rw-r--r--
2025-01-26 18:06
socket.rb
44.04
KB
-rw-r--r--
2025-01-26 18:06
syntax_suggest.rb
74
B
-rw-r--r--
2025-01-26 18:06
tempfile.rb
14.73
KB
-rw-r--r--
2025-01-26 18:06
time.rb
23.74
KB
-rw-r--r--
2025-01-26 18:06
timeout.rb
5.69
KB
-rw-r--r--
2025-01-26 18:06
tmpdir.rb
4.93
KB
-rw-r--r--
2025-01-26 18:06
tsort.rb
14.29
KB
-rw-r--r--
2025-01-26 18:06
un.rb
11.17
KB
-rw-r--r--
2025-01-26 18:06
uri.rb
3.06
KB
-rw-r--r--
2025-01-26 18:06
weakref.rb
1.36
KB
-rw-r--r--
2025-01-26 18:06
yaml.rb
2.13
KB
-rw-r--r--
2025-01-26 18:06
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 VERSION = "0.2.0" # 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