Bash-Automatisierer

UFO ermöglicht es dem HostAgent, Bash-Befehle auf dem Host-Computer auszuführen. Die Bash-Befehle können zum Öffnen von Anwendungen oder zum Ausführen von Systembefehlen verwendet werden. Der Bash Automator ist im Modul ufo/automator/app_apis/shell implementiert.

Hinweis

Nur HostAgent wird derzeit vom Bash Automator unterstützt.

Empfänger

Der Web Automator-Empfänger ist die Klasse ShellReceiver, die in der Datei ufo/automator/app_apis/shell/shell_client.py definiert ist.

Basiert auf: ReceiverBasic

Die Basisklasse für Web COM-Clients mit crawl4ai.

Initialisiert den Shell-Client.

Quellcode in automator/app_apis/shell/shell_client.py
19
20
21
22
def __init__(self) -> None:
    """
    Initialize the shell client.
    """

run_shell(params)

Führt den Befehl aus.

Parameter
  • params (Dict[str, Any]) –

    Die Parameter des Befehls.

Rückgabe
  • Any

    Der Ergebnisinhalt.

Quellcode in automator/app_apis/shell/shell_client.py
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
def run_shell(self, params: Dict[str, Any]) -> Any:
    """
    Run the command.
    :param params: The parameters of the command.
    :return: The result content.
    """
    bash_command = params.get("command")
    powershell_path = 'C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe'
    process = subprocess.Popen(
        bash_command,  # command to run
        stdout=subprocess.PIPE,  # capture stdout
        stderr=subprocess.PIPE,  # capture stderr
        shell=True,
        text=True,
        executable=powershell_path,
    )
    return ""


Befehl

Wir unterstützen derzeit nur einen Befehl im Bash Automator, um einen Bash-Befehl auf dem Host-Computer auszuführen.

@ShellReceiver.register
class RunShellCommand(ShellCommand):
    """
    The command to run the crawler with various options.
    """

    def execute(self):
        """
        Execute the command to run the crawler.
        :return: The result content.
        """
        return self.receiver.run_shell(params=self.params)

    @classmethod
    def name(cls) -> str:
        """
        The name of the command.
        """
        return "run_shell"

Unten sehen Sie die Liste der verfügbaren Befehle im Web Automator, die derzeit von UFO unterstützt werden

Befehlsname Funktionsname Beschreibung
RunShellCommand run_shell Ruft den Inhalt einer Webseite im Markdown-Format ab.