我不认为这会像结果那样棘手,但我在这里。我正在尝试用 Python 编写一个 Nautilus 脚本,只需选择并右键单击它们即可将一个或多个图像上传到 Imgur。它适用于单个图像和多个图像 - 只要它们不包含任何空格。事实上,您可以上传包含空格的单个图像,而不是多个图像。
问题是 NAUTILUS_SCRIPT_SELECTED_FILE_PATHS 将所有选定的文件和目录作为空格分隔的字符串返回。例如,它可能看起来像这样:
print os.environment['NAUTILUS_SCRIPT_SELECTED_FILE_PATHS']
/home/nevon/Desktop/test image.png /home/nevon/Desktop/test.jpg
我需要的是一种方法——在 bash 或 Python 中——转义路径中的空格——而不是分隔不同项目的空格。要么是这样,要么是在每个项目周围加上引号的方法。
最终的解决方案是,如果我可以在 bash 中执行此操作,然后将这些项目作为单独的参数发送到我的 python 脚本。就像是:
python uploader.py /home/nevon/Desktop/test\ image.png /home/nevon/Desktop/test.jpg
我试过 RTFM'ing,但似乎没有很多好的解决方案。至少我没有找到。有任何想法吗?