我正在编写一个应用程序,需要能够解析从远程服务器拖到命令行上的路径。但是,当我将路径从远程计算机拖动到终端时,我得到如下所示的内容:
/home/user/.gvfs/sftp for Name on server-alias/the/full/path/is/here.file
。
我只想
/the/full/path/is/here.file
待解析。我想知道是否有一个设置可以调整以防止这个额外的路径前缀(最好),或者Linux中的某个地方是否有一些内置功能可以做到这一点。我当然可以使用正则表达式来解析它,但如果可能的话我想避免这种情况。
我使用的是 ubuntu 10.04 LTS。
答案1
您可能想看一下标题为:的教程:Linux 桌面脚本编写,第 2 部分:Nautilus 脚本编写,其中讨论了如何将您自己的项目添加到 Nautilus 的右键单击上下文菜单中,以及 Nautilus 在操作/拖动其中的对象时为您提供哪些变量。
例子
Nautilus 中提供的变量。
Environment variable Description
-------------------- -----------
NAUTILUS_SCRIPT_SELECTED_FILE_PATHS Newline-delimited paths for selected files (only if local)
NAUTILUS_SCRIPT_SELECTED_URIS Newline-delimited URIs for selected files
NAUTILUS_SCRIPT_CURRENT_URI The current location
NAUTILUS_SCRIPT_WINDOW_GEOMETRY The position and size of the current window
在 Python 中,只需调用一次os.environ.get
函数即可获取这些变量的值,如下所示:
selected = os.environ.get('NAUTILUS_SCRIPT_SELECTED_FILE_PATHS,'')