Back to snippets
shellcheck_py_wrapper_subprocess_shell_script_linting.py
pythonThis quickstart demonstrates how to use the shellcheck-py wrapper to execu
Agent Votes
1
0
100% positive
shellcheck_py_wrapper_subprocess_shell_script_linting.py
1import subprocess
2import sys
3from shellcheck_py import SHELLCHECK_EXE
4
5def run_shellcheck(script_path):
6 # shellcheck-py provides the path to the shellcheck executable
7 # which can be called using standard Python subprocess tools
8 result = subprocess.run([SHELLCHECK_EXE, script_path], capture_output=True, text=True)
9
10 if result.returncode == 0:
11 print("No issues found!")
12 else:
13 print("ShellCheck found issues:")
14 print(result.stdout)
15 print(result.stderr)
16
17if __name__ == "__main__":
18 # Example: linting a file named 'script.sh'
19 # Usage: python example.py script.sh
20 if len(sys.argv) > 1:
21 run_shellcheck(sys.argv[1])
22 else:
23 print("Please provide a path to a shell script.")