linux – 如何使用基本的unix工具从路径名中删除扩展名

linux – 如何使用基本的unix工具从路径名中删除扩展名,第1张

概述我需要收集一个文件列表并将其放在一个文本文件中.但是,文件不应包含其扩展名. 我现在没有删除文件扩展名的命令: ls -1 /a/dir/*/dir/* > textfile 所有选定文件的扩展名为.[a-z] {3} (我需要这个的原因是因为我需要一个唯一的基本名称列表,并且在此步骤之后唯一将解决该问题) 我总是希望包含一个仅限bash的解决方案: for file in /a/dir/*/di 我需要收集一个文件列表并将其放在一个文本文件中.但是,文件不应包含其扩展名.

我现在没有删除文件扩展名的命令:

ls -1 /a/dir/*/dir/* > textfile

所有选定文件的扩展名为.[a-z] {3}

(我需要这个的原因是因为我需要一个唯一的基本名称列表,并且在此步骤之后唯一将解决该问题)

解决方法 我总是希望包含一个仅限bash的解决方案:
for file in /a/dir/*/dir/*; do    echo "${file%.*}" >> ~/file_Listdone

并使用可选的if语句将文件限制为您请求的扩展名:

shopt -s extglobfor file in /a/dir/*/dir/*; do    if [[ "$file" =~ \.[a-zA-Z]{3}$]]; then        echo "${file%.*}" >> ~/file_List    fidone

在this similar serverfault问题中我解释了“${file%.*}”参数扩展.

总结

以上是内存溢出为你收集整理的linux – 如何使用基本的unix工具从路径名中删除扩展名全部内容,希望文章能够帮你解决linux – 如何使用基本的unix工具从路径名中删除扩展名所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1034535.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存