标签: pathname

正向和反斜杠之间的区别

在导航文件系统中使用正斜杠和反斜杠有何不同.此外之间有什么区别./../

filesystems pathname

7
推荐指数
2
解决办法
2万
查看次数

Common Lisp:相对路径到绝对路径

可能这是一个非常愚蠢的问题,但是在尝试了所有内置的pathname -family 函数和cl-fad/pathname-utils包之后,我仍然无法弄清楚如何将相对路径转换为绝对路径(相对于 $PWD):

; let PWD be "/very/long/way"
(abspath "../road/home"); -> "/very/long/road/home"
Run Code Online (Sandbox Code Playgroud)

假设函数的abspath工作方式与 Python 中一样os.path.abspath()

common-lisp pathname

7
推荐指数
2
解决办法
2746
查看次数

.NET对文件路径的奇怪行为

我通过谷歌教授找不到任何关于此的信息,所以我在这里.获取给定的路径名​​称并将其粘贴到Windows资源管理器中.我发现我的代码中的bug生成了带有额外''的路径后,我偶然发现了这个.在目录\分隔符之前的路径名中...

@"C:\\pathto.\file.ext"
Run Code Online (Sandbox Code Playgroud)

在代码中,.NET将在调用时接受路径File.Create并生成文件,但是在此路径中:

@"C:\\pathto\file.ext"
Run Code Online (Sandbox Code Playgroud)

复制C:\\pathto.\file.ext到Windows资源管理器的地址栏并观看"." 消失并带你去C:\\pathto\file.ext

这是.NET和Windows的正常行为它不会导致问题,因为'.' 在传递给文件操作时,.NET和Windows都将删除它.真正的问题是数据库中的所有文件都有一个带有'.\'的文件名,但是存在于没有'.\' File.Exists()的路径中......并且也可以工作,尽管路径不是'真实的'物理地点...

这里发生了什么?

.net c# windows file-io pathname

6
推荐指数
1
解决办法
205
查看次数

Linux CLI-如何从JSON jq + grep获取子字符串?

我需要从JSON中提取一个子字符串。在下面的JSON文档中,我需要值的末尾。jq '.[].networkProfile.networkInterfaces[].id' 换句话说,我只A10NICvw4konls2vfbw-data需要传递给另一个命令即可。我似乎无法弄清楚如何使用grep拉子字符串。我似乎有正则表达式的例子,但没有成功。

[
  {
    "id": "/subscriptions/blah/resourceGroups/IPv6v2/providers/Microsoft.Compute/virtualMachines/A10VNAvw4konls2vfbw",
    "instanceView": null,
    "licenseType": null,
    "location": "centralus",
    "name": "A10VNAvw4konls2vfbw",
    "networkProfile": {
      "networkInterfaces": [
        {
          "id": "/subscriptions/blah/resourceGroups/IPv6v2/providers/Microsoft.Network/networkInterfaces/A10NICvw4konls2vfbw-data",
          "resourceGroup": "IPv6v2"
        }
      ]
    }
  }
]
Run Code Online (Sandbox Code Playgroud)

bash grep json pathname jq

6
推荐指数
2
解决办法
5788
查看次数

如何从给定的 inode 获取路径名或 dentry 或结构文件?

我需要知道如何获取路径名或dentrystruct file给定的索引节点。

我曾经使用从路径名file_open获取struct file但总是给出内核恐慌。我需要一种方法来将我的 inode 列表中的 inode 与路径名中的 inode 进行比较,或者比较磁盘中的所有 inode 以找到相应的路径名,然后与我的 inode 列表进行比较。

kernel inode linux-kernel pathname

5
推荐指数
1
解决办法
3812
查看次数

将绝对路径与 Pathname 类连接

我正在开发一个项目,其中有一个动态确定的安装点,并提供了一组绝对路径来在目标卷上进行工作。由于这些文件尚不存在,因此我使用 Pathname 类来处理文件名操作。然而,当涉及到连接具有相同根的路径时,Pathname 似乎做了一些聪明的事情。我观察到以下行为:

p1 = Pathname.new('/foo/bar')                         # #<Pathname:/foo/bar>
p2 = Pathname.new('/baz/quux')                        # #<Pathname:/baz/quux>
p3 = p1 + p2                                          # #<Pathname:/baz/quux>
p4 = p1.join p2.relative_path_from(Pathname.new('/')) # #<Pathname:/foo/bar/baz/quux>
p5 = Pathname.new(p1.to_s.concat p2)                  # #<Pathname:/foo/bar/baz/quux>
Run Code Online (Sandbox Code Playgroud)

因此,使用 p4 和 p5,我能够获得我想要的行为,但结构有点做作。有没有更干净的方法来做到这一点?

ruby pathname

5
推荐指数
2
解决办法
674
查看次数

如何从绝对路径名创建文件对象?

我认为我的问题需要对背景进行一些解释。我的任务是创建一个基本服务器,它将在我的系统上发送客户请求的 HTML 文件。我被告知只需输入localhost:8080/index.html我的 Firefox 浏览器作为测试客户端来测试我的服务器。输入该行输入正常工作并打印出index.html. 为了安全起见,我应该进行测试以确保请求的文件在我当前的直接工作范围内,如果不是,我应该拒绝该请求。我已经设置了这样一个捕获,我想检查它。我想index.html再次使用我的文件,但是通过整个路径名又名 C:\Users\Gabrielle\Documents\NetBeansProjects\CS2 Assignment 5\src\index.html所以我在浏览器中输入

localhost:8080/C:\Users\Gabrielle\Documents\NetBeansProjects\CS2 Assignment 5\src\index.html

我得到一个错误,说文件不存在。然后我检查了它试图制作文件的内容以及它试图制作文件的内容,我得到了

C:%5CUsers%5C%5CGabreille%5C%5CDocuments%5C%5CNetBeansProjects%5C%5CCS2%20Assignment%205%5Cindex.html

这显然不是文件的名称。我只是错误地发送了文件名吗?如果有任何区别,我正在从 Windows 命令提示符运行该程序。下面是我的多线程客户端的代码和我的可运行对象的代码。如果您有任何问题或想要清楚一些,我将密切关注此线程。

import java.io.*;
import java.net.*;

public class WebServer {

    public static void main(String[] args)
    {
        try{
            ServerSocket ss = new ServerSocket(8080);
            while(true){
                Thread conn = new Thread(new ClientConnection(ss.accept()));
                conn.start();
            }
        }
        catch(IOException e)
        {
            e.printStackTrace();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

下面是实际内容

import java.io.*;
import java.net.*;

public class ClientConnection  implements Runnable{

private Socket socket;
File requestedFileName;
String entireInput ="";
String …
Run Code Online (Sandbox Code Playgroud)

java file pathname

5
推荐指数
1
解决办法
3万
查看次数

仅知道文件夹路径时,使用javascript/jquery从URL获取当前文件名

我试图从网址获取当前文件名:

$currentFile = window.location.pathname.split("/").pop();
Run Code Online (Sandbox Code Playgroud)

如果完整路径是这样的话,这可以正常工作:

http://www.yoursite.com/folder/index.php
Run Code Online (Sandbox Code Playgroud)

它将返回index.php,index.cfm,index.html等.

但当网址是http://www.yoursite.com/folder/

我无法检索当前文件名,这可能通过js或jquery吗?

javascript jquery filepath pathname

5
推荐指数
1
解决办法
5197
查看次数

Common Lisp 中的路径名、带有通配符的文件名

字符*?用作路径名中的通配符。如何引用具有?实际字符之一的文件名?例如: [18]> (wild-pathname-p #p"foo") NIL [19]> (wild-pathname-p #p"foo?") T 那么引用文件名“foo?” 不能这样做。我试图用?反斜杠转义,但这没有用。\u3f我尝试使用or转为 unicode \u003f,但这不起作用。

如何引用名称中包含通配符的文件:如何探测、打开它等?

filenames clisp wildcard common-lisp pathname

5
推荐指数
1
解决办法
873
查看次数

将带有波形符的文件名展开为其完整路径 (Common Lisp)

我有一个带有波浪号的目录名称(作为字符串):~/projects

\n\n

我想获取它的完整路径:/home/user/projects。我怎么做 ?

\n\n

目标是将其传递给uiop:run-program,这似乎没有做正确的事情\xc2\xa9。

\n\n
\n\n

有了这个答案:如何将 (make-pathname :directory '(:absolute :home "directoryiwant") 翻译成绝对路径

\n\n
(merge-pathnames \n          (make-pathname\n           :directory \'(:relative "~/projects"))\n          (user-homedir-pathname))\n#P"/home/me/~/projects/"\n
Run Code Online (Sandbox Code Playgroud)\n\n

=> 错误

\n\n

谢谢。

\n\n
\n\n

编辑我将分享更多背景信息。

\n\n

我想通过运行一个程序uiop:launch-program。我有一个用户定义的目录列表,例如~/projects. 使用它来创建./~/projects目录而不是/home/user/projects.

\n\n

truename如果目录不存在则不起作用。

\n\n

在 SBCL 上,(namestring "~/doesntexist")还返回其波形符。

\n\n

merge-pathnames没用,仍然是波浪号问题。

\n\n

使用ensure-directories-exist此结果创建了一个名为 的目录~

\n\n

给出答案后,我别无选择,只能调整逻辑来扩展我们实际想要存在的目录的目录名称。

\n\n
;; Create a directory\n;; Ensure its name …
Run Code Online (Sandbox Code Playgroud)

common-lisp pathname home-directory

5
推荐指数
2
解决办法
883
查看次数