Shell Interaction in Python: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 3: Line 3:
* [[Python_Module_shutil|shutil]]
* [[Python_Module_shutil|shutil]]


=Command Line Argument Processing==
=Command Line Argument Processing=


<code>sys.argv</code> is the list containing arguments as strings. On the position 0 is the full path of the script being executed.
<syntaxhighlight lang='python'>
<syntaxhighlight lang='python'>
import sys
import sys

Revision as of 04:43, 2 March 2022

Internal

Command Line Argument Processing

sys.argv is the list containing arguments as strings. On the position 0 is the full path of the script being executed.

import sys

def main():
  print(f"Arguments count: {len(sys.argv)}")
  for i, arg in enumerate(sys.argv):
    print(f"Argument {i:>6}: {arg}")

if __name__ == '__main__':
  main()

Organizatorium

from shutil import which

commands={
  "aws":                "awscli",
  "aws-login":          "aws-login",
  "aws-eks-configure":  "aws-eks-configure"
}
for c in commands:
  print("{:20}{:7}".format(commands[c], "OK" if which(c) else "missing"))