标签: path

如何在Python中安全地创建嵌套目录?

检查文件目录是否存在的最优雅方法是什么,如果不存在,使用Python创建目录?这是我尝试过的:

import os

file_path = "/my/directory/filename.txt"
directory = os.path.dirname(file_path)

try:
    os.stat(directory)
except:
    os.mkdir(directory)       

f = file(filename)
Run Code Online (Sandbox Code Playgroud)

不知何故,我错过了os.path.exists(感谢kanja,Blair和Douglas).这就是我现在拥有的:

def ensure_dir(file_path):
    directory = os.path.dirname(file_path)
    if not os.path.exists(directory):
        os.makedirs(directory)
Run Code Online (Sandbox Code Playgroud)

是否有"开放"的标志,这会自动发生?

python directory operating-system exception path

3909
推荐指数
28
解决办法
245万
查看次数

使用jQuery获取当前URL?

我正在使用jQuery.如何获取当前URL的路径并将其分配给变量?

示例网址:

http://localhost/menuname.de?foo=bar&number=0
Run Code Online (Sandbox Code Playgroud)

javascript url jquery path

1761
推荐指数
30
解决办法
206万
查看次数

URL.Combine的URL?

Path.Combine很方便,但在.NET框架中是否有类似的URL功能

我正在寻找这样的语法:

Url.Combine("http://MyUrl.com/", "/Images/Image.jpg")
Run Code Online (Sandbox Code Playgroud)

将返回:

"http://MyUrl.com/Images/Image.jpg"

.net c# asp.net url path

1186
推荐指数
21
解决办法
29万
查看次数

872
推荐指数
18
解决办法
98万
查看次数

在OS X上设置环境变量

在OS X中修改PATH等环境变量的正确方法是什么?

我在Google上看了一下,发现要编辑的三个不同文件:

  • 的/ etc /路径
  • 〜/ .profile文件
  • 〜/ .tcshrc文件

我甚至没有这些文件,我很确定.tcshrc是错误的,因为OS X现在使用bash.这些变量,尤其是PATH,在哪里定义?

我正在运行OS X v10.5(Leopard).

macos bash path environment-variables

837
推荐指数
21
解决办法
70万
查看次数

如何在Linux/Unix上永久设置$ PATH?

我正在尝试将路径添加到我的路径中,因此它始终位于我的Linux路径中.我试过了:

export PATH=$PATH:/path/to/dir
Run Code Online (Sandbox Code Playgroud)

这是有效的,但是每次我退出终端并启动一个新的终端实例时,这个路径都会丢失,我需要再次运行export命令.

我怎么能这样做才能永久设置?

unix linux bash zsh path

818
推荐指数
15
解决办法
150万
查看次数

使用Glob()在Python中递归查找文件?

这就是我所拥有的:

glob(os.path.join('src','*.c'))
Run Code Online (Sandbox Code Playgroud)

但我想搜索src的子文件夹.像这样的东西会起作用:

glob(os.path.join('src','*.c'))
glob(os.path.join('src','*','*.c'))
glob(os.path.join('src','*','*','*.c'))
glob(os.path.join('src','*','*','*','*.c'))
Run Code Online (Sandbox Code Playgroud)

但这显然是有限和笨重的.

python filesystems glob path fnmatch

676
推荐指数
15
解决办法
59万
查看次数

如何获取文件的完整路径?

有没有一种简单的方法可以打印完整的路径file.txt

file.txt = /nfs/an/disks/jj/home/dir/file.txt
Run Code Online (Sandbox Code Playgroud)

<command>

dir> <command> file.txt  
Run Code Online (Sandbox Code Playgroud)

应该打印

/nfs/an/disks/jj/home/dir/file.txt
Run Code Online (Sandbox Code Playgroud)

unix linux file path

669
推荐指数
9
解决办法
86万
查看次数

如何在Python中获取绝对文件路径

给定一个路径"mydir/myfile.txt",如何在Python中找到相对于当前工作目录的文件的绝对路径?例如在Windows上,我最终可能会:

"C:/example/cwd/mydir/myfile.txt"
Run Code Online (Sandbox Code Playgroud)

python path relative-path absolute-path

653
推荐指数
9
解决办法
77万
查看次数

Bash脚本获取自身完整路径的可靠方法

我有一个Bash脚本需要知道它的完整路径.我试图找到一种广泛兼容的方式来做到这一点,而不会结束相对或时髦的路径.我只需要支持Bash,而不是sh,csh等.

到目前为止我发现了什么:

  1. 地址中获取Bash脚本的源目录的接受答案是获取脚本的路径dirname $0,这很好,但可能会返回相对路径(如.),如果要更改目录中的目录,这是一个问题脚本并使路径仍指向脚本的目录.不过,dirname将成为这个难题的一部分.

  2. OS X的Bash脚本绝对路径 的接受答案(特定于OS X,但答案无论如何)都会给出一个函数,该函数将测试是否$0看起来相对,如果是,则会预先挂起$PWD.但是结果仍然可以包含相对位(虽然总体来说它是绝对的) - 例如,如果脚本t在目录中/usr/bin并且你进入/usr并且你输入bin/../bin/t它来运行它(是的,那是复杂的),你最终会得到/usr/bin/../binas脚本的目录路径.哪个有效,但......

  3. 此页面上readlink解决方案如下所示:

    # Absolute path to this script. /home/user/bin/foo.sh
    SCRIPT=$(readlink -f $0)
    # Absolute path this script is in. /home/user/bin
    SCRIPTPATH=`dirname $SCRIPT`
    
    Run Code Online (Sandbox Code Playgroud)

    但是readlink不是POSIX,显然解决方案依赖于GNU readlink,其中BSD由于某种原因无法工作(我无法访问类似BSD的系统进行检查).

所以,各种方式,但他们都有他们的警告.

什么是更好的方式?"更好"的意思是:

  • 给了我绝对的道路.
  • 即使以复杂的方式调用,也可以获得时髦的位(参见上面#2的评论).(例如,至少要对路径进行适度规范化.)
  • 仅依赖于Bash-isms或几乎肯定会出现在最流行的*nix系统(GNU/Linux,BSD和类似BSD的系统,如OS X等)上的东西.
  • 如果可能,避免调用外部程序(例如,更喜欢Bash内置程序). …

bash path

653
推荐指数
12
解决办法
42万
查看次数