返回顶部
首页 > 资讯 > 精选 >Shell怎么处理带空格的文件名
  • 227
分享到

Shell怎么处理带空格的文件名

2023-06-09 19:06:28 227人浏览 独家记忆
摘要

本篇内容主要讲解“shell怎么处理带空格的文件名”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Shell怎么处理带空格的文件名”吧!现在很多人命名的时候都喜欢用空格,例如“An Introdu

本篇内容主要讲解“shell怎么处理带空格的文件名”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Shell怎么处理带空格的文件名”吧!

现在很多人命名的时候都喜欢用空格,例如“An Introduction.doc”。但是这种命名方式给linux命令行工具和Shell带来了困扰,因为大多数命令中,都是默认以空格做为值与值之间的分隔符,而不是做为文件名的一部分。

看下面的脚本,我们可以了解的更清楚:

Shell怎么处理带空格的文件名

执行的结果如下:

Shell怎么处理带空格的文件名

实际上,当前目录的文件只有两个:

Shell怎么处理带空格的文件名

对于简单的文件名,如上例中,我们也可以通过 for i in *doc 这样简单的方法来获得文件列表。但是对于复杂的环境,如下图,我们如何获得这些列表呢?

Shell怎么处理带空格的文件名

有一个办法,通过 for i in "* *" 可以获得文件名的列表,但是一个很糟糕的列表,因为这个结果是一个两个文件名在一起的列表,我们完全无法拿来做后续的操作,如下图所示

Shell怎么处理带空格的文件名

通过 "*\ *" 这样的技巧可以避免上面所说的问题,但是在应用mv或其他操作时,还是会出现问题。

Shell怎么处理带空格的文件名

上面的问题,可以通过将变量放入引号中("$i")解决,通常情况下,引号中的空格可以被正确的处理。但这并不是一个恒久的解决办法,因为我们无法处理管道、子Shell等复杂的情况。

一个终极的解决办法就是设置IFS(the Internal Field Separator),不要用空格做为IFS,选择其他的符号。先来看看man page:

IFS: The Internal Field Separator that is used for Word splitting after expansion and to split lines into words with the read built-in command. The default value is “<space><tab><new-line>”.

Shell怎么处理带空格的文件名

另外一个办法就是在对文件名进行处理之前,先将空格替换为特殊的自定义符号,然后在处理结束的时候,再替换回来

safename="$(echo name | sed 's/ /_-_/g')"

original="$(echo $safename | sed s'/_-_/ /g')"

其他还有一些方法,例如利用find命令。

Shell怎么处理带空格的文件名

到此,相信大家对“Shell怎么处理带空格的文件名”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Shell怎么处理带空格的文件名

本文链接: https://lsjlt.com/news/257471.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Shell怎么处理带空格的文件名
    本篇内容主要讲解“Shell怎么处理带空格的文件名”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Shell怎么处理带空格的文件名”吧!现在很多人命名的时候都喜欢用空格,例如“An Introdu...
    99+
    2023-06-09
  • Shell处理带空格的文件名的方法
    现在很多人命名的时候都喜欢用空格,例如“An Introduction.doc”。但是这种命名方式给Linux命令行工具和Shell带来了困扰,因为大多数命令中,都是默认以空格做为值与值之间的分隔符,而不是...
    99+
    2022-06-04
    空格 文件名 方法
  • Shell中处理包含空格的文件名实例
    今天在处理文件时遇到个问题,当文件名包含空格时,for循环就出问题了。 例如,我在当前文件夹下建立3个文件名包含空格的文件: keakons-MacBook-Pro:test keakon$ touch "...
    99+
    2022-06-04
    空格 文件名 实例
  • Shell中如何处理包含空格的文件名
    这篇文章主要介绍“Shell中如何处理包含空格的文件名”,在日常操作中,相信很多人在Shell中如何处理包含空格的文件名问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Shell中如何处理包含空格的文件名”的疑...
    99+
    2023-06-09
  • shell怎么传带空格的参数
    在shell中传递带有空格的参数有以下几种方法:1. 用引号包裹参数:在参数中使用引号(单引号或双引号)将参数包裹起来。例如:```...
    99+
    2023-09-16
    shell
  • linux命令行下文件名中有空格怎么处理
    这篇文章主要介绍了linux命令行下文件名中有空格怎么处理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Q:我在树莓派命令行模式下使用mplayer播放单首音乐,因为文件名中...
    99+
    2023-06-12
  • Linux如何查找处理文件名后包含空格的文件
    这篇文章给大家分享的是有关Linux如何查找处理文件名后包含空格的文件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。当Linux下文件名中出现空格这类特殊情况话,如何查找或确认那些文件名后有空格呢? 又怎么批量替...
    99+
    2023-06-09
  • 如何处理Shell脚本中带有空格的变量
    小编给大家分享一下如何处理Shell脚本中带有空格的变量,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!在批量处理音频文件时候使用下面的脚本发现含有空格的文件名并不...
    99+
    2023-06-09
  • Linux下怎么处理包含空格和特殊字符的文件名
    这篇文章主要讲解了“Linux下怎么处理包含空格和特殊字符的文件名”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux下怎么处理包含空格和特殊字符的文件名”吧!我们经常会看到文件名和文件...
    99+
    2023-06-16
  • 处理Shell脚本中带有空格的变量(bash脚本)
    本篇主要介绍bash脚本中对于含空格文件处理方式。 在批量处理音频文件时候使用下面的脚本发现含有空格的文件名并不能被处理; #$1: 遍历的文件夹 rootDir=$1 cd $rootDir allAudioFil...
    99+
    2022-06-04
    shell 空格变量 bash脚本变量
  • Linux查找处理文件名后包含空格的文件(两种方法)
    当Linux下文件名中出现空格这类特殊情况话,如何查找或确认那些文件名后有空格呢? 又怎么批量替换处理掉这些空格呢? 方法1: 输入文件名后使用Tab键,如果使用Tab键后面出现 这样的可见字符,那么...
    99+
    2022-06-04
    两种 空格 文件名
  • Linux之删除带有空格的文件
    这篇文章主要介绍了Linux之删除带有空格的文件(不是目录),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。大家平时工作中对不带空格的文件接触较多。这样一来删除操作也是...
    99+
    2023-06-05
  • Golang 文件上传中如何处理空文件名?
    针对 go 文件上传中的空文件名,需采取以下步骤:检查 formfile 对象是否存在,若为空返回错误。创建自定义解析器,检查上传文件名称是否为空,若为空返回错误。 Golang 文件...
    99+
    2024-05-13
    文件上传 golang
  • 怎么解决VSCode 使用 Code Runner 插件无法编译运行文件名带空格的文件问题
    本篇内容介绍了“怎么解决VSCode 使用 Code Runner 插件无法编译运行文件名带空格的文件问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能...
    99+
    2023-06-20
  • lxml怎么处理XML文档的命名空间
    在lxml中处理XML文档的命名空间有两种常用的方法: 使用xpath方法处理命名空间: from lxml import et...
    99+
    2024-05-14
    lxml
  • VSCode 使用 Code Runner 插件无法编译运行文件名带空格的文件问题
    使用 Visual Studio Code 写 C++ 程序最烦心的是大概就是使用 Code Runner 插件无法编译运行文件名带空格的文件了,这个问题困扰了我好久,虽然不影响学习...
    99+
    2024-04-02
  • 怎么用Shell获取文件的文件名和扩展名
    这篇文章主要讲解了“怎么用Shell获取文件的文件名和扩展名”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Shell获取文件的文件名和扩展名”吧!basename examp...
    99+
    2023-06-09
  • C++语言中怎么使用带空格的目录名
    本篇内容主要讲解“C++语言中怎么使用带空格的目录名”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++语言中怎么使用带空格的目录名”吧!一、拷贝隐含或系统属性的文件 使用操作系统提供的拷贝命令...
    99+
    2023-06-17
  • 怎么用批处理重命名文本文件名
    这篇文章主要为大家展示了“怎么用批处理重命名文本文件名”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么用批处理重命名文本文件名”这篇文章吧。实现代码1@echo off&se...
    99+
    2023-06-09
  • Linux之删除带有空格的文件(不是目录)
    大家平时工作中对不带空格的文件接触较多。这样一来删除操作也是比较简单的。但是有时我们会接触带有空格的文件。对于这种文件我们应该如何删除呢? 首先我们演示一下find命令结合xargs命令删除不带空格的文件 [root...
    99+
    2022-06-04
    Linux 删除空格文件 Linux 删除带有空格文件
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作