用于将windows路径更改为unix路径的Python脚本

2024-05-23 16:37:32 发布

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

我想要一个脚本,可以粘贴一个windows路径作为参数,然后脚本将路径转换为unix路径,并使用nautilus打开路径。

我希望能够使用以下脚本:

mypythonscript.py \\thewindowspath\subpath\

脚本当前如下所示:

import sys, os

path = "nautilus smb:"+sys.argv[1]

path = path.replace("\\","/")

os.system(path)

我几乎要工作了:) 问题是我必须在论点周围加上。。。像这样:

mypythonscript.py '\\thewindowspath\subpath\'

任何知道我如何编写允许该参数的脚本的人都没有'。。。i、 例如:

mypythonscript.py \\thewindowspath\subpath\

编辑:我想我必须补充一点,问题是没有参数中的“,”将被视为转义字符。解决方案不一定是python脚本,但我希望(在Linux中)能够将windows路径作为参数粘贴到脚本中。


Tags: pathpyimport路径脚本参数os粘贴
3条回答

除非你使用的是Windows的早期版本:“/blah/whatever/”只适用于你的操作系统

为了避免在shell中处理转义,可以直接使用剪贴板:

import os
try:
    from Tkinter import Tk
except ImportError:
    from tkinter import Tk # py3k

# get path from clipboard
path = Tk().selection_get(selection='CLIPBOARD')

# convert path and open it
cmd = 'nautilus'
os.execlp(cmd, cmd, 'smb:' + path.replace('\\', '/'))

ntpathurlparseos.path模块可能有助于更可靠地处理路径。

实际上,我不久前有过类似的事情,我制作了一个bash脚本来自动下载我复制到剪贴板中的链接,在这里,它被编辑为使用您的程序(如果您还没有安装xclip):

#!/bin/bash

old=""
new=""

old="$(xclip -out -selection c)"

while true 
do

   new="$(xclip -out -selection c)"

   if [ "$new" != "$old" ]
   then
      old="$new"

      echo Found: $new
      mypythonscript.py $new

   fi
   sleep 1
done

exit 0

现在,每当您将新内容复制到剪贴板中时,您的Python脚本将使用剪贴板中任何内容的参数来执行。

相关问题 更多 >