Source code for scitex_sh._shell_legacy

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# Time-stamp: "2024-01-29 07:36:39 (ywatanabe)"

import os
import subprocess


[docs] def run_shellscript(lpath_sh, *args): # Check if the script is executable, if not, make it executable if not os.access(lpath_sh, os.X_OK): subprocess.run(["chmod", "+x", lpath_sh]) # Prepare the command with script path and arguments command = [lpath_sh] + list(args) # Run the shell script with arguments using run_shellcommand return run_shellcommand(*command)
# return stdout, stderr, exit_code
[docs] def run_shellcommand(command, *args): # Prepare the command with additional arguments full_command = [command] + list(args) # Run the command result = subprocess.run( full_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True ) # Get the standard output and error stdout = result.stdout stderr = result.stderr exit_code = result.returncode # Check if the command ran successfully if exit_code == 0: print("Command executed successfully") print("Output:", stdout) else: print("Command failed with error code:", exit_code) print("Error:", stderr) return { "stdout": stdout, "stderr": stderr, "exit_code": exit_code, }