我正在开发一个项目,我需要处理大量具有相同名称但扩展名不同的文件。
请建议命令/解决方案以获取文件名。
提前致谢
答案 0 :(得分:1)
你的助手是find命令
find /<directory_name> -name <file_name.\*>
答案 1 :(得分:0)
find "$searchdir" -name "${filespec%.*}".\*
将找到名为&{34; foo&#34;的$searchdir
中的所有文件。如果$filespec
的格式为&#34; foo.bar&#34;,则附加文件扩展名。
当然,如果$filespec
的格式为&#34; foo.bar.baz&#34;,您会找到名为&#34; foo.bar&#34;的所有文件。有文件扩展名,所以要小心这些文件。
如果您只想要根文件名(例如&#34; foo.bar.baz.quux&#34; - &gt;&#34; foo&#34;),那么您应该使用%%
代替%
变量之后的filespec
。
如果您需要从filespec中删除前面的目录名,可以将其与basename
实用程序结合使用:
find "$searchdir" -name "$(basename "${filespec%.*}")".\*