Linux iad1-shared-b7-18 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
Apache
: 67.205.6.31 | : 216.73.216.47
Cant Read [ /etc/named.conf ]
8.2.29
fernandoquevedo
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
lib /
python3 /
dist-packages /
awscli /
[ HOME SHELL ]
Name
Size
Permission
Action
__pycache__
[ DIR ]
drwxr-xr-x
bcdoc
[ DIR ]
drwxr-xr-x
customizations
[ DIR ]
drwxr-xr-x
data
[ DIR ]
drwxr-xr-x
examples
[ DIR ]
drwxr-xr-x
topics
[ DIR ]
drwxr-xr-x
__init__.py
1.43
KB
-rw-r--r--
__main__.py
663
B
-rw-r--r--
alias.py
10.95
KB
-rw-r--r--
argparser.py
7.46
KB
-rw-r--r--
argprocess.py
20.84
KB
-rw-r--r--
arguments.py
18.38
KB
-rw-r--r--
clidocs.py
28.56
KB
-rw-r--r--
clidriver.py
26.44
KB
-rw-r--r--
commands.py
2.06
KB
-rw-r--r--
compat.py
18.43
KB
-rw-r--r--
completer.py
5.74
KB
-rw-r--r--
errorhandler.py
2.96
KB
-rw-r--r--
formatter.py
11
KB
-rw-r--r--
handlers.py
9.87
KB
-rw-r--r--
help.py
13.26
KB
-rw-r--r--
paramfile.py
9.94
KB
-rw-r--r--
plugin.py
2.21
KB
-rw-r--r--
schema.py
6.25
KB
-rw-r--r--
shorthand.py
17.11
KB
-rw-r--r--
table.py
15.01
KB
-rw-r--r--
testutils.py
34.5
KB
-rw-r--r--
text.py
4.18
KB
-rw-r--r--
topictags.py
12.36
KB
-rw-r--r--
utils.py
9.08
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : completer.py
# Copyright 2012-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved. # Licensed under the Apache License, Version 2.0 (the "License"). You # may not use this file except in compliance with the License. A copy of # the License is located at # http://aws.amazon.com/apache2.0/ # or in the "license" file accompanying this file. This file is # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF # ANY KIND, either express or implied. See the License for the specific # language governing permissions and limitations under the License. import awscli.clidriver import sys import logging import copy LOG = logging.getLogger(__name__) class Completer(object): def __init__(self, driver=None): if driver is not None: self.driver = driver else: self.driver = awscli.clidriver.create_clidriver() self.main_help = self.driver.create_help_command() self.main_options = self._get_documented_completions( self.main_help.arg_table) def complete(self, cmdline, point=None): if point is None: point = len(cmdline) args = cmdline[0:point].split() current_arg = args[-1] cmd_args = [w for w in args if not w.startswith('-')] opts = [w for w in args if w.startswith('-')] cmd_name, cmd = self._get_command(self.main_help, cmd_args) subcmd_name, subcmd = self._get_command(cmd, cmd_args) if cmd_name is None: # If we didn't find any command names in the cmdline # lets try to complete provider options return self._complete_provider(current_arg, opts) elif subcmd_name is None: return self._complete_command(cmd_name, cmd, current_arg, opts) return self._complete_subcommand(subcmd_name, subcmd, current_arg, opts) def _complete_command(self, command_name, command_help, current_arg, opts): if current_arg == command_name: if command_help: return self._get_documented_completions( command_help.command_table) elif current_arg.startswith('-'): return self._find_possible_options(current_arg, opts) elif command_help is not None: # See if they have entered a partial command name return self._get_documented_completions( command_help.command_table, current_arg) return [] def _complete_subcommand(self, subcmd_name, subcmd_help, current_arg, opts): if current_arg != subcmd_name and current_arg.startswith('-'): return self._find_possible_options(current_arg, opts, subcmd_help) return [] def _complete_option(self, option_name): if option_name == '--endpoint-url': return [] if option_name == '--output': cli_data = self.driver.session.get_data('cli') return cli_data['options']['output']['choices'] if option_name == '--profile': return self.driver.session.available_profiles return [] def _complete_provider(self, current_arg, opts): if current_arg.startswith('-'): return self._find_possible_options(current_arg, opts) elif current_arg == 'aws': return self._get_documented_completions( self.main_help.command_table) else: # Otherwise, see if they have entered a partial command name return self._get_documented_completions( self.main_help.command_table, current_arg) def _get_command(self, command_help, command_args): if command_help is not None and command_help.command_table is not None: for command_name in command_args: if command_name in command_help.command_table: cmd_obj = command_help.command_table[command_name] return command_name, cmd_obj.create_help_command() return None, None def _get_documented_completions(self, table, startswith=None): names = [] for key, command in table.items(): if getattr(command, '_UNDOCUMENTED', False): # Don't tab complete undocumented commands/params continue if startswith is not None and not key.startswith(startswith): continue if getattr(command, 'positional_arg', False): continue names.append(key) return names def _find_possible_options(self, current_arg, opts, subcmd_help=None): all_options = copy.copy(self.main_options) if subcmd_help is not None: all_options += self._get_documented_completions( subcmd_help.arg_table) for option in opts: # Look through list of options on cmdline. If there are # options that have already been specified and they are # not the current word, remove them from list of possibles. if option != current_arg: stripped_opt = option.lstrip('-') if stripped_opt in all_options: all_options.remove(stripped_opt) cw = current_arg.lstrip('-') possibilities = ['--' + n for n in all_options if n.startswith(cw)] if len(possibilities) == 1 and possibilities[0] == current_arg: return self._complete_option(possibilities[0]) return possibilities def complete(cmdline, point): choices = Completer().complete(cmdline, point) print(' \n'.join(choices)) if __name__ == '__main__': if len(sys.argv) == 3: cmdline = sys.argv[1] point = int(sys.argv[2]) elif len(sys.argv) == 2: cmdline = sys.argv[1] else: print('usage: %s <cmdline> <point>' % sys.argv[0]) sys.exit(1) print(complete(cmdline, point))
Close