2024-09-30 12:15:01 发布
网友
我可以打开一个特定的python脚本。它是一个SPE文件,使用spe2py库(https://pypi.org/project/spe2py/)打开。 我想,当我双击一个类似的文件时,启动脚本,将我单击的文件的路径传递给它。通过这种方式,我的脚本可以显示该文件的内容。我怎么能做到呢? 我用的是Linux,ubuntu18.04。在
谢谢
我使用基于Ubuntu的Linux Mint,但它使用MATE(桌面环境)和文件管理器Caja(以前是{}),所以最后一点(5)在Ubuntu或其他Linux上可能不同。在
Ubuntu
Linux Mint
MATE
Caja
Linux
你需要一些东西:
脚本必须使用sys.argv来获取选定的文件名
sys.argv
您必须在脚本的第一行添加shebang,这样系统就知道如何使用Python来运行这个脚本
shebang
#!/usr/bin/env python
python script.py
您可以将脚本放在PATH中的文件夹中,这样系统就可以在任何文件夹中运行它,而无需使用脚本的完整路径。在PATH上可以是脚本的文件夹~/bin,所以可以将脚本放在这个文件夹中。
PATH
~/bin
在文件管理器Nemo/Nautilus/Caja中,您可以右键单击SPE文件以查看菜单-应该有"Open with ... > Other program",您可以设置脚本。如果您没有将脚本放在PATH的文件夹中,则可以使用完整路径。如果使用不同的文件管理器,则必须搜索类似的选项
Nemo/Nautilus/Caja
"Open with ... > Other program"
Nemo/Nautilus/Caja还使用选定/突出显示的文件名设置变量,这样您就可以一次对所有文件运行脚本。在
CAJA_SCRIPT_NEXT_PANE_SELECTED_URIS CAJA_SCRIPT_NEXT_PANE_SELECTED_FILE_PATHS CAJA_SCRIPT_NEXT_PANE_CURRENT_URI CAJA_SCRIPT_SELECTED_URIS CAJA_SCRIPT_SELECTED_FILE_PATHS CAJA_SCRIPT_CURRENT_URI
在脚本中,它们应该是可用的
import os print( os.environ['CAJA_SCRIPT_NEXT_PANE_SELECTED_URIS'] )
或者更安全,如果变量不存在
import os print( os.environ.get('CAJA_SCRIPT_NEXT_PANE_SELECTED_URIS') )
我建议您使用bash脚本程序运行python脚本。在
您可以这样制作bash脚本:
Blockquote
#!/bin/sh python3 python_script.py
以.sh扩展名保存此文本文件
我使用基于}),所以最后一点(5)在
Ubuntu
的Linux Mint
,但它使用MATE
(桌面环境)和文件管理器Caja
(以前是{Ubuntu
或其他Linux
上可能不同。在你需要一些东西:
脚本必须使用
sys.argv
来获取选定的文件名您必须在脚本的第一行添加
shebang
,这样系统就知道如何使用Python来运行这个脚本- 您必须将其设置为可执行的,这样系统将使用
^{pr2}$shebang
来运行它(而且您不必使用python script.py
)您可以将脚本放在
PATH
中的文件夹中,这样系统就可以在任何文件夹中运行它,而无需使用脚本的完整路径。在PATH
上可以是脚本的文件夹~/bin
,所以可以将脚本放在这个文件夹中。在文件管理器
Nemo/Nautilus/Caja
中,您可以右键单击SPE文件以查看菜单-应该有"Open with ... > Other program"
,您可以设置脚本。如果您没有将脚本放在PATH
的文件夹中,则可以使用完整路径。如果使用不同的文件管理器,则必须搜索类似的选项Nemo/Nautilus/Caja
还使用选定/突出显示的文件名设置变量,这样您就可以一次对所有文件运行脚本。在在脚本中,它们应该是可用的
或者更安全,如果变量不存在
我建议您使用bash脚本程序运行python脚本。在
您可以这样制作bash脚本:
以.sh扩展名保存此文本文件
相关问题 更多 >
编程相关推荐