命令行环境(如Windows命令提示符和PowerShell)使用空格分隔命令和参数,但文件名和文件夹名也可以包含空格。要指定一个文件路径,其中有一个空格,您需要“转义”它。
“转义”字符会改变其含义。例如,转义空格将导致shell将其视为标准空格字符,而不是分隔命令行参数的特殊字符。
例如,假设您有一个要查看其内容的文本文件。您可以使用type命令来实现这一点。假设文本文件位于C:\Test\文件.txt,命令提示符中的以下命令将显示其内容:
type C:\Test\File.txt伟大的。现在,如果您在C:\Test Folder\Test中有相同的文件呢文件.txt?如果您尝试运行下面的命令,它将不起作用,因为文件路径中的空间会妨碍您。
type C:\Test Folder\Test File.txt命令行认为您试图查找一个名为C:\Test的文件,并说它“找不到指定的路径”
有三种不同的方法可以在Windows上转义文件路径:
我们将向您展示如何使用每种方法。
确保Windows正确处理文件路径的标准方法是用双引号(“)字符将其括起来。例如,使用上面的示例命令,我们只需运行以下命令:
type "C:\Test Folder\Test File.txt"如果愿意的话,实际上可以用引号将部分路径括起来。例如,假设您有一个名为文件.txt在那个文件夹里。您可以运行以下命令:
type C:\"Test Folder"\File.txt但是,在大多数情况下这并不是必需的,您可以在整个路径上使用引号。
此解决方案既可以在传统的命令提示符(CMD)环境中工作,也可以在Windows PowerShell中工作。
在命令提示符中,**符号(^)理论上允许您转义空格。只需在文件名的每个空格前添加它。(您可以在键盘上的数字行中找到此字符。要键入**符号字符,请按Shift+6。)
问题是:虽然这应该是可行的,而且有时是可行的,但并不总是可行的。命令提示符对这个字符的处理很奇怪。
例如,使用我们的示例命令,您将运行以下命令,但它不起作用:
type C:\Test^ Folder\Test^ File.txt另一方面,如果我们尝试通过在命令提示符中输入文件的路径直接打开文件,我们可以看到**字符正确地转义了空格:
C:\Test^ Folder\Test^ File.txt那什么时候起作用?嗯,根据我们的研究,它似乎适用于某些应用程序,而不是其他应用程序。根据您使用的命令,您的里程数可能会有所不同。命令提示符对这个字符的处理很奇怪。不管你使用什么命令,都可以尝试一下,如果你感兴趣的话,它可能会起作用,也可能不会起作用。
为了保持一致性,我们建议您在命令提示符中使用双引号,或者切换到PowerShell并使用下面的重音符方法。
PowerShell使用重音符(`)字符作为其转义字符。只需在文件名的每个空格前添加它。(您可以在键盘上的Tab键和Esc键上方找到此字符。)
type C:\Test` Folder\Test` File.txt每个重音符字符都告诉PowerShell转义以下字符。
请注意,这仅在PowerShell环境中有效。您必须在命令提示符中使用**字符。
如果您熟悉类似UNIX的操作系统,如Linux和macOS,您可能习惯于在空格前使用反斜杠(\)字符来转义它。Windows将其用于普通文件路径,因此不起作用--**符号(^)和重音符(`)字符是Windows版本的反斜杠,具体取决于您使用的命令行shell。
... 今天我们将介绍如何在Windows、Mac和Linux上将命令的输出发送到bashshell中的文本文件。 ...
...为输入运行它。这些特殊的应用程序被称为水滴。下面是如何创建一个: ...
...下启动PowerPoint进行故障排除,或者从特定模板开始。 如何使用命令运行powerpoint 从命令提示符打开PowerPoint有两种方法,您需要知道其中一种方法来找出powerpnt.exe“文件位于。您可以通过在文件资源管理器中挖掘来手动执行此...
...shshell的行为,您可以控制超过50个设置。我们将向您展示如何按照您喜欢的方式定制您的Linux系统。 shopt内置 shopt内置是bashshell所有版本的一部分,因此不需要安装任何东西。多年来,shopt提供的选项数量稳步增加。所以,Bash...
...下一节中介绍更多的例子。 相关报道:什么是降价?你如何使用它? 转换文件 文件转换非常简单。pandoc通常可以从文件名中找出您正在使用的文件格式。在这里,我们将从一个降价文件生成一个HTML文件。-o(output)选项告诉pan...
Linux上有多种类型的环境变量。了解如何查看它们,为本地和远程登录创建它们,并使它们在重新启动后仍然有效。 环境变量的工作原理 启动终端窗口及其内部的shell时,会引用一组变量,以确保shell配置正确。这些变量还确...
...在Linux上做了什么吗?他们给你命令行魔法!我们将教你如何施展正则表达式法术并提升你的命令行技能。 什么是正则表达式(regular expressi***)? 正则表达式(regex)是一种查找匹配字符序列的方法。它们使用字母和符号来定义...
...以创建文本文件和日志文件。按照这个简单的指南来了解如何。 回声重复你让它重复的东西 宙斯喜欢离开奥林匹斯山,与美丽的仙女交往。在一次旅行中,他告诉一个叫埃科的山里仙女,如果他的妻子赫拉跟着他,他就要拦...
...程序时创建的squashfs伪文件系统。 df -h -x squashfs 相关:如何从Linux终端查看可用磁盘空间和磁盘使用情况 8差异 diff命令比较两个文本文件并显示它们之间的差异。有许多选项可根据您的要求定制显示器。 -y(并排)选项并排显...
...使用隐藏命令手动收缩动态磁盘。 相关:初学者极客:如何创建和使用虚拟机 请记住,这只会缩小磁盘,如果它的大小增长,你已经删除了数据。所以,如果你只是创建了一个动态磁盘,这不会缩小它。但是,如果您创建了一...