如何在 Linux 中使用空格处理文件名?

news/2024/10/30 13:35:20/

您会注意到一件事,Linux 中的文件通常不包含名称,您的老师或同事在文件和目录名称中使用下划线而不是空格。

并不是说您不能在 Linux 终端中的文件名中使用空格,只是它会产生额外的痛苦,这就是为什么你应该尽可能避免它。

为什么?让我用例子来说明这一点,Linux 命令的通用语法:

command [options] argument1 argument2

在这里,参数用空格分隔。如果您尝试直接使用带空格的文件名,它将被视为单独的参数,而不仅仅是一个参数。

在上面的屏幕截图中,当我尝试使用cat agatha books命令时,它不明白那agatha books是一个参数,它将agatha和books视为不同的文件名。

那么如何处理文件名中的空格呢?

有两种方法:

将整个文件名用引号括起来:

"file name withn spaces"

使用反斜杠键转义每个空格:

file\ name\ with\ spaces

制表符完成通常也适用于空格,如果您按制表键输入文件名,您的终端可能会显示带有反斜杠转义的空格的文件名。

读取文件名中带有空格的文件

要使用包含空格的文件名,可以将其用引号括起来,如下所示:

cat "file name with spaces"

你也可以用反斜杠转义每个空格,但它比以前的方法工作更多,也更混乱:

cat file\ name\ with\ spaces

基本上,您\在文件名中的每个空格之前都放置一个。

您也可以使用单引号代替双引号。

cat 'file name with spaces'

单引号忽略任何特殊字符。双引号忽略除 $、反引号和反斜杠之外的所有内容。更多关于它的一些其他教程。

在文件名中创建一个带有空格的文件

现在,您需要在终端中输入空格以在此处创建文件名,再次使用反斜杠或引号。

与上一节类似,您可以使用引号在文件名中创建带有空格的新文件:

touch "file name with spaces"

或者反斜杠:

touch file\ name\ with\ spaces

处理文件夹名称中的空格

您可以像创建文件一样创建名称中带有空格的目录。

mkdir "new dir"

现在,如果你想切换到这个目录,你会有一个带空格的路径。

但这对你来说应该不再是问题了,要 cd 进入带有空格的目录,请再次使用引号或反斜杠。

cd "new dir"
cd new\ dir

基本上,每当您必须处理名称中的空格时,您都会使用引号或反斜杠键。

my file假设您必须从中复制一个文件new dir,以下是您可以执行的操作:

cp new\ dir/my\ file

现在它开始变得有点混乱,对吧?有反斜杠和正斜杠,如果这些斜线太多,它可能会吓倒新用户甚至是经验丰富的用户。

当文件名中有反斜杠时,它会变得更加混乱。然后你会看到双反溅。

这就是为什么您应该尽量避免在文件名中使用空格或其他特殊字符的原因。要分隔文件名中的单词,请使用下划线。

touch a_very_long_file_name_with_too_many_words

这使文件名更易于阅读,您不必花费额外的精力来处理文件名中的这些空格。


http://www.ppmy.cn/news/377871.html

相关文章

去除mysql指定字段的空格(名字中间的空格)

需求 去除掉 两个字的名字中间的空格 由来 由运营给的 execl 直接将数据导入到 数据库中了, 在 execl 中的两个字的名字 他们给的格式就是带有 空格的, 比如 张 三 现象 现在展示的时候名字中间就会有, 产品经理要求去掉 名字中间的空格 方案 使用 mysql 函数 replace() …

python输出去空格_python不空格

广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 退格(backspace) e 转义 000 空 n 换行 v 纵向制表符 t 横向制表符 r 回车 f 换页oyy 八进制数yy代表的字符,例如:o12代表换行 xyy 十进制数yy代表的字符,例…

mysql 字段名字有空格_mysql 字段名字包含空格引发的问题

表的数据如下所示: dada c1 c2 c3 c4c5 1 2310 \N 21 55 2 32\N \N 23 44 3 54\N \N 34 33 4 565\N \N 45 22 5 21\N \N 56 11 6 21\N \N 45 33 创建表格的语句是: CREATE TABLE `testtable` ( ` dada` int(10) NOT NULL, `c1` int(10) DEFAULT NULL, `c2` set(10) DEFAULT N…

计算机符号的名字,空格符号怎么打 游戏名字空格怎么打

有很多朋友不知道空格符号怎么打,下面小编就整理了一下打出空格的一些方法介绍给大家,希望对你有所帮助! 【】【】【】【】【】【 】 以上空格也可直接复制使用。 电脑上输入空格的方法: 方法一:将输入法切换到全角状态…

空格符号复制html,空格网名符号复制

空格网名符号复制以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 空格网名符号复制 搜狗输入法,v+1 在按下d 就是空格 :这里空格【】 这里还有一个空格: []弄了,在游戏里就是空白名 空格符号复制 法一:…

C++ 新特性 | C++ 11 | auto 关键字

一、auto 关键字 1.1、静态类型,动态类型和类型推导 在编程语言分类中,C/CC常常被认为是静态类型的语言。而有的编程语言则号称是“动态类型”的,比如python。通常情况下,“静”和“动”的区别是非常直观的。看看下面这段简单的p…

Win10电脑安装打印机驱动运转打印机的方法

打印机是我们平时接触的非常多的一个设备了,我们也常常用电脑来连接打印机,用来打印我们需要的资料。有的网友给电脑连上打印机不知道为什么用不了,其实可能是因为驱动没有装好,这里就和大家分享一下安装打印机驱动的方法吧。 更…

惠普局域网共享打印机设置_惠普打印机局域网共享

2017-01-18 10:42:19 打印机是很多办公室人员都会用到的打印设备,而惠普hp1020打印机就是比较受欢迎的一款打印机,然而有很多windows7系统用户并不知道要怎么安装惠普hp1020打印机,其实方法很... 2017-01-04 11:19:48 有win7旗舰版32位系统用…