使用python文件中的自定义shell命令

2024-04-25 07:50:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我将尽力解释我面临的问题。 我在linux中创建了这个自定义shell命令

#!/bin/bash

function create() {
    python3 .create.py $1
    cd /home/simon/Linux_Storage/Projects/$FILEPATH$1
    code .
    echo "Project created."
    cd
}

我试图通过使用os.system("create ")从python脚本调用它,但我得到了以下错误:sh: 1: create: not found 。 如果我尝试使用任何其他默认命令,比如os.system("date"),或者我只是尝试从终端调用我的命令,那么它不会有问题。 有没有办法从python文件访问自定义shell命令?还是我应该放弃这个想法


Tags: py命令bashhomebinoslinuxcreate
3条回答

在运行python程序之前,您需要获取包含create脚本的文件的源代码(我们称之为create.sh)。您还需要导出该函数,以便生成的任何进程都可以使用它。例如:

. create.sh
export -f create
python -c 'import os; os.system("create")'

您可以添加前面提到的@MajNeedsChill的完整路径,前提是在bash脚本中调用该函数。您还可以将完整路径添加到名为“create”的别名中,以使自定义命令感觉良好

您是否尝试提供该命令的完整路径

看起来您只提供了命令的名称。您的shell可能知道在哪里可以找到它,但是您可能需要为Python指定它

相关问题 更多 >