如何从字符串中删除所有文件扩展名?

用户名

我的文件名带有不以结尾的MP4扩展名_special.MP4

mylist=$(ls | grep -v "_special.MP4")

然后,我想.MP4从此后续列表中删除扩展名。

echo $mylist | sed -e 's/\.MP4$//'

只删除最后一次.MP4出现的情况,如何才能全部获得?

xordspar0

假设我有以下以.MP4结尾的文件:

.
├── 1.MP4
├── 2.MP4
└── 3_special.MP4

如果我理解正确,则需要非特殊文件的名称,减去.MP4扩展名。

首先,我将使用find代替,ls因为它更易于控制并且更易于解析输出。无论哪种方式,您最终都将得到一个由换行符分隔的列表文件:

$ find . -name '*.MP4' -not -name '*_special.MP4'
./1.MP4
./2.MP4

您的sed命令将按原样工作,因为$模式中的绑定到每行的末尾:

$ find . -name '*.MP4' -not -name '*_special.MP4' | sed -e 's/\.MP4$//'
./1
./2

basename命令实际上将为您完成大部分操作。您甚至都不需要sed的主要用途basename是从路径的开头删除目录,但它也支持删除后缀。

概要

基本名称字符串[后缀]

basename 仅在“字符串”位置接受一个单词,因此您需要使用xargs对每个文件运行一次。

$ find . -name '*.MP4' -not -name '*_special.MP4' | xargs -I -name- basename -name- .MP4
1
2

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何删除文件名中没有给定字符串的某些扩展名文件?

来自分类Dev

删除列表中字符串的所有扩展名

来自分类Dev

文件名中的字符串-如何删除扩展名?

来自分类Dev

如何在Rails 4中从字符串中删除文件扩展名?

来自分类Dev

如何找到具有特定文本字符串和扩展名的文件夹中的所有文件?

来自分类Dev

如何查找给定扩展名的所有文件(不包括多个文件名字符串)

来自分类Dev

更改所有包含特定字符串的文件名的扩展名

来自分类Dev

从文件名中删除某些字符串模式,而不影响扩展名

来自分类Dev

从文件扩展名(.png)之外的所有文件中删除_之后出现的字符

来自分类Dev

Bash:复制根/当前文件夹中具有相同扩展名的所有文件,但文件名包含某些字符串的文件除外

来自分类Dev

Awk / Sed:如何在具有特定文件扩展名的文件中递归查找/替换字符串?

来自分类Dev

如何从字符串路径获取文件扩展名

来自分类Dev

如何删除特定文件夹中具有特定扩展名的所有文件?

来自分类Dev

删除.HTACCESS文件中的所有扩展名

来自分类Dev

如何在Windows 8中删除具有特定扩展名的所有文件?

来自分类Dev

Findstr :在没有扩展名的文件中搜索字符串

来自分类Dev

如何排除文件名字符串中的扩展名

来自分类Dev

如何递归删除当前目录中特定扩展名的所有文件?

来自分类Dev

如何删除目录中除某些扩展名外的所有文件?

来自分类Dev

如何从完整文件路径中删除除文件名(无扩展名)以外的所有文件?

来自分类Dev

txt 文件或没有扩展名的文件中的 grep,需要文件中存在多个字符串

来自分类Dev

如何删除大树中特定命名文件夹中具有特定扩展名的所有文件?

来自分类Dev

正则表达式在文件扩展名后删除字符串

来自分类Dev

如何删除文件夹中所有具有特定扩展名的文件?

来自分类Dev

删除目录中带有pdf扩展名的文件以外的所有文件

来自分类Dev

删除目录中带有pdf扩展名的文件以外的所有文件

来自分类Dev

htaccess对扩展名以外的所有内容(不是查询字符串)进行重写

来自分类Dev

在Bash中搜索包含特定字符串的特定扩展名文件名

来自分类Dev

检查非字符串的文件扩展名

Related 相关文章

  1. 1

    如何删除文件名中没有给定字符串的某些扩展名文件?

  2. 2

    删除列表中字符串的所有扩展名

  3. 3

    文件名中的字符串-如何删除扩展名?

  4. 4

    如何在Rails 4中从字符串中删除文件扩展名?

  5. 5

    如何找到具有特定文本字符串和扩展名的文件夹中的所有文件?

  6. 6

    如何查找给定扩展名的所有文件(不包括多个文件名字符串)

  7. 7

    更改所有包含特定字符串的文件名的扩展名

  8. 8

    从文件名中删除某些字符串模式,而不影响扩展名

  9. 9

    从文件扩展名(.png)之外的所有文件中删除_之后出现的字符

  10. 10

    Bash:复制根/当前文件夹中具有相同扩展名的所有文件,但文件名包含某些字符串的文件除外

  11. 11

    Awk / Sed:如何在具有特定文件扩展名的文件中递归查找/替换字符串?

  12. 12

    如何从字符串路径获取文件扩展名

  13. 13

    如何删除特定文件夹中具有特定扩展名的所有文件?

  14. 14

    删除.HTACCESS文件中的所有扩展名

  15. 15

    如何在Windows 8中删除具有特定扩展名的所有文件?

  16. 16

    Findstr :在没有扩展名的文件中搜索字符串

  17. 17

    如何排除文件名字符串中的扩展名

  18. 18

    如何递归删除当前目录中特定扩展名的所有文件?

  19. 19

    如何删除目录中除某些扩展名外的所有文件?

  20. 20

    如何从完整文件路径中删除除文件名(无扩展名)以外的所有文件?

  21. 21

    txt 文件或没有扩展名的文件中的 grep,需要文件中存在多个字符串

  22. 22

    如何删除大树中特定命名文件夹中具有特定扩展名的所有文件?

  23. 23

    正则表达式在文件扩展名后删除字符串

  24. 24

    如何删除文件夹中所有具有特定扩展名的文件?

  25. 25

    删除目录中带有pdf扩展名的文件以外的所有文件

  26. 26

    删除目录中带有pdf扩展名的文件以外的所有文件

  27. 27

    htaccess对扩展名以外的所有内容(不是查询字符串)进行重写

  28. 28

    在Bash中搜索包含特定字符串的特定扩展名文件名

  29. 29

    检查非字符串的文件扩展名

热门标签

归档