我正在做一个项目,我需要处理许多具有相同名称但不同扩展名的文件。
请建议一个命令/解决方案来获取文件名。
Thanks in advance
这里的帮助是查找命令
find /<directory_name> -name <file_name.*>
find "$searchdir" -name "${filespec%.*}".*
将查找$searchdir
中所有名为"foo"的文件,如果$filespec
的形式为"foo.bar",则文件扩展名为"foo"。
当然,如果$filespec
的形式为"foo.bar.",您将找到所有名为"foo"的文件。Bar "带有文件扩展名,所以要小心这样的文件。
如果您只想要根文件名(例如:"foo.bar.baz。
在filespec
变量之后应该使用%%
而不是%
。如果需要从filespec中删除前面的目录名,可以将其与basename
实用程序结合使用:
find "$searchdir" -name "$(basename "${filespec%.*}")".*