是否可以在批处理函数中运行Python代码?
我在 bash 中有这样的东西:
addcert(){
$PYTHON << EOF
import os
from datetime import datetime
...
EOF
}
尝试过:
:addcert
python -x "%~f0" %* & goto :endofPython
import....
print("ok")
:endofPython
EXIT /B 0
但这也许不是正确的方法。
谢谢你
在批处理脚本 (Windows) 中运行 Python 代码可能有点棘手。但是,您可以通过将 Python 代码嵌入批处理脚本并使用 python 命令执行它来实现此目的。以下是有关如何执行此操作的分步指南:
分步指南 创建批处理函数: 定义将运行嵌入式 Python 脚本的批处理函数。
嵌入Python脚本: 使用一种技术将 Python 脚本嵌入到批处理脚本中。
执行Python脚本: 使用python命令执行嵌入的Python脚本。
这是演示此方法的示例批处理脚本 (script.bat):
@echo off
SETLOCAL
REM Define a batch function to run the embedded Python script
:addcert
(
echo import os
echo from datetime import datetime
echo
echo # Your Python code here
echo print("Running embedded Python script")
echo print("Current working directory: ", os.getcwd())
echo print("Current datetime: ", datetime.now())
) > "%temp%\temp_script.py"
REM Execute the embedded Python script
python "%temp%\temp_script.py"
REM Clean up
del "%temp%\temp_script.py"
ENDLOCAL
EXIT /B 0
说明: 批处理函数定义: addcert 函数被定义为运行嵌入式 Python 脚本。
嵌入Python脚本: echo 命令用于将 Python 脚本行写入 %temp% 目录中的临时文件 (temp_script.py)。
执行Python脚本: python命令用于运行临时Python脚本。
清理: 临时Python脚本在执行后被删除以清理。
使用方法: 将上面的批处理脚本保存为script.bat。 从命令行运行脚本
script.bat
这将执行批处理脚本中嵌入的 Python 脚本,您应该会看到 Python 脚本的输出打印到控制台。