用空格递归替换目录和子目录名称中的所有点

里克·T

我正在尝试使用bash替换目录名称及其子目录中所有的点,并使用空格。

示例:目录dir.1.3将变为dir 1 3

到目前为止,我的脚本是:

#!/bin/bash    
for dir in *\ -\ *; do

      [[ -d "$dir" ]] || continue   # skip if not a directory
      sub="${dir#* - }"
      if [[ ! -e "$sub" ]]; then
        mv "$dir" "$sub"
        mv echo "$(echo "Result: ${dir%.*}" | sed 's/\./ /g').${dir##*.}"

      fi
done
弗雷迪

使用find

find . -mindepth 1 -type d -name "*.*" -exec bash -c '
  for ((i=$#;i>0;i--)); do
    dir=${!i}
    newdir=$(dirname "$dir")/$(basename "$dir" | tr -s "." " ")
    if [ -e "$newdir" ]; then
      echo "skipping \"$dir\", \"$newdir\" already exists" >&2 
    else
      mv "$dir" "$newdir"
    fi
  done
' bash {} +

*.*将在当前目录中使用pattern递归查找所有目录名称,并使用跳过当前目录-mindepth 1找到的目录列表与-execbash脚本一起传递,在bash脚本中,其参数在for循环中以相反的顺序进行处理(具有更深层次的子目录排在最前面)。

新目录名称是通过dirname创建的basename后者被修改tr为用一个空格字符-s替换多个点如果要用多个空格替换多个点,则删除选项)。如果新目录名称已经存在,请打印一条错误消息或将其移动。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Scala / Java子目录名称中带有点

来自分类Dev

列出子目录中的所有文件,按子目录名称排序

来自分类Dev

在子目录中的所有.jpg,.mp3和.mts文件前加上各自的父目录名称

来自分类Dev

递归打印所有目录和子目录

来自分类Dev

尝试用源文件替换目录和子目录中的所有文件而不改变它们的名称

来自分类Dev

如何遍历目录中名称中带有点和空格的目录?

来自分类Dev

Ubuntu替换目录和所有子目录中的表达式

来自分类Dev

解压目录和子目录中的所有.gz

来自分类Dev

如何使用R中的目录和子目录名称创建表?

来自分类Dev

查找:列出所有目录,但名称和子目录中带有数字的目录除外

来自分类Dev

使用正则表达式模式替换错误的文件,目录和子目录名称

来自分类Dev

如何在不知道Perl中目录名称的情况下读取目录和子目录?

来自分类Dev

如何从所有子目录中递归删除所有具有特定名称的文件夹?

来自分类Dev

使用Pandoc bash将目录和子目录中的所有.docx(递归?)转换为.md

来自分类Dev

Shell脚本复制所有文件和子目录-带有空格的文件夹名称

来自分类Dev

如何在目录及其子目录中的所有php文件中搜索和替换文本

来自分类Dev

如何将子目录中的所有文件递归移动到单个目录?

来自分类Dev

如何将子目录中的所有文件递归移动到单个目录?

来自分类Dev

Mac:如何递归地在子目录中查找最大的文件(忽略所有目录)

来自分类Dev

递归地从文件名和目录名中删除所有前导和尾随空格

来自分类Dev

在目录中提取子目录名称的末尾

来自分类Dev

提取目录中子目录名称的结尾

来自分类Dev

替换Emacs中目录/子目录中所有文件中的文本?

来自分类Dev

递归删除除几个子目录外的所有子目录

来自分类Dev

在所有目录中查找具有相同名称的子目录

来自分类Dev

如何使用vim打开当前目录和所有子目录中的所有文件?

来自分类Dev

解析目录和所有子目录中的所有XML文件

来自分类Dev

打印所有目录和子目录功能

来自分类Dev

rsync 排除目录和所有子目录

Related 相关文章

  1. 1

    Scala / Java子目录名称中带有点

  2. 2

    列出子目录中的所有文件,按子目录名称排序

  3. 3

    在子目录中的所有.jpg,.mp3和.mts文件前加上各自的父目录名称

  4. 4

    递归打印所有目录和子目录

  5. 5

    尝试用源文件替换目录和子目录中的所有文件而不改变它们的名称

  6. 6

    如何遍历目录中名称中带有点和空格的目录?

  7. 7

    Ubuntu替换目录和所有子目录中的表达式

  8. 8

    解压目录和子目录中的所有.gz

  9. 9

    如何使用R中的目录和子目录名称创建表?

  10. 10

    查找:列出所有目录,但名称和子目录中带有数字的目录除外

  11. 11

    使用正则表达式模式替换错误的文件,目录和子目录名称

  12. 12

    如何在不知道Perl中目录名称的情况下读取目录和子目录?

  13. 13

    如何从所有子目录中递归删除所有具有特定名称的文件夹?

  14. 14

    使用Pandoc bash将目录和子目录中的所有.docx(递归?)转换为.md

  15. 15

    Shell脚本复制所有文件和子目录-带有空格的文件夹名称

  16. 16

    如何在目录及其子目录中的所有php文件中搜索和替换文本

  17. 17

    如何将子目录中的所有文件递归移动到单个目录?

  18. 18

    如何将子目录中的所有文件递归移动到单个目录?

  19. 19

    Mac:如何递归地在子目录中查找最大的文件(忽略所有目录)

  20. 20

    递归地从文件名和目录名中删除所有前导和尾随空格

  21. 21

    在目录中提取子目录名称的末尾

  22. 22

    提取目录中子目录名称的结尾

  23. 23

    替换Emacs中目录/子目录中所有文件中的文本?

  24. 24

    递归删除除几个子目录外的所有子目录

  25. 25

    在所有目录中查找具有相同名称的子目录

  26. 26

    如何使用vim打开当前目录和所有子目录中的所有文件?

  27. 27

    解析目录和所有子目录中的所有XML文件

  28. 28

    打印所有目录和子目录功能

  29. 29

    rsync 排除目录和所有子目录

热门标签

归档