标签: realpath

如何将 wslpath /home/user/ 转换为 windows 路径

我使用 Windows 10 的 Linux 子系统(Windows 10 版本 1803)

我可以使用命令行:

user@laptop:~$ wslpath -w /c/
C:\
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用

user@laptop:~$ wslpath -w ~
wslpath: /home/user: Result not representable
Run Code Online (Sandbox Code Playgroud)

即使我使用:

user@laptop:~$ wslpath -w /home/user
wslpath: /home/user: Result not representable
Run Code Online (Sandbox Code Playgroud)

为什么?如何将 /home/user 转换为 windows 路径?

我在 Windows 中的主文件夹路径是 C:\Users\winuser\AppData\Local\lxss\home

我希望一些命令行可以让我返回那个字符串。

bash path realpath windows-subsystem-for-linux

3
推荐指数
2
解决办法
7629
查看次数

如何获得虚拟路径的真实路径?

如果路径是../b并且当前目录是/var/www/a/c,那么 realpath 将是/var/www/a/b

但如果b不存在,则 realpath() 返回 false。

即使目录尚不存在,是否有可能获得相同的路径?

php directory file path realpath

2
推荐指数
1
解决办法
925
查看次数

在 Android 11 及更高版本中无法从下载文件夹中选择文件(pdf、doc、docx)

我正在使用文件选择器库。

权限代码:

    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.R || Environment.isExternalStorageManager()) {
                        //Toast.makeText(this, "We can access all files on external storage now", Toast.LENGTH_SHORT).show()
                    } else {
                        Intent intent = new Intent(Settings.ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION);
                        startActivityForResult(intent, FILE_REQUEST_CODE);
                    
                    }
Run Code Online (Sandbox Code Playgroud)

选择文件:

    Intent intent = new Intent(this, FilePickerActivity.class);
            
                    intent.putExtra(FilePickerActivity.CONFIGS, new Configurations.Builder()
                            .setCheckPermission(true)
                            .setSelectedMediaFiles(mediaFiles)
                            .setShowFiles(true)
                            .setShowImages(false)
                            .setShowAudios(false)
                            .setShowVideos(false)
                            .setIgnoreNoMedia(false)
                            .enableVideoCapture(false)
                            .enableImageCapture(false)
                            .setIgnoreHiddenFile(false)
                            .setMaxSelection(5)
                            .setSuffixes("pdf", "doc", "docx")
                            //.setTitle("Select a file")
                            .build());
                    startActivityForResult(intent, FILE_REQUEST_CODE);
Run Code Online (Sandbox Code Playgroud)

onActivityResult:

    if (requestCode == FILE_REQUEST_CODE && resultCode == RESULT_OK && data != null) {
            //ArrayList<MediaFile> files …
Run Code Online (Sandbox Code Playgroud)

java android realpath filepicker android-intent

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

PHP realpath无法阻止目录遍历

我收到了其他人的系统代码,该系统在浏览器中显示带有照片的文件夹.

例如,这是网站上可能的网址:

gallery.php?action=view&folder=Cars
Run Code Online (Sandbox Code Playgroud)

目前,您可以用../../../../../替换"Cars",这将很乐意显示Linux根文件夹.幸运的是,该网站目前处于离线状态.

我尝试使用realpath来解决这个问题.这是我到目前为止所拥有的:

case 'view' :
$name = realpath(dirname(__FILE__) . "/Content/Gallery/" . $_GET['folder']);

echo $name;

$data = $file->getPictures($name);
require 'Views/Gallery.view.php';
break;
Run Code Online (Sandbox Code Playgroud)

我在第三行添加了echo以查看URL是什么.在上面的url中,一切都很好,echo输出:

/var/www/Content/Gallery/Cars 
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.但是,如果我输入/../../../../../../../../而不是"Cars",$ name变为/并且页面仍显示根文件夹.英语不是我的第一语言,所以我可能误解了真实路径的工作方式或工作原理.根据我的理解,它从给定的URL中删除../的任何实例.

有人可以告诉我我做错了什么吗?

php directory-traversal realpath

0
推荐指数
1
解决办法
1577
查看次数