复制时删除文件扩展名

复制时删除文件扩展名

我有一个非常简单的问题,但我就是想不通。关于以下命令行:

for foo in *.dist; do cp $foo `basename $foo .dist`; done

我知道它会获取当前目录中所有以 .dist 为扩展名的文件,然后复制它们,并在同一步骤中删除 .dist 扩展名(我从有关在 Ubuntu Server 下安装 OTRS 的 wiki 帖子中获取了它)。我只是想了解它为什么这样做。

非常感谢。

答案1

man basename

NAME 基名-从文件名中删除目录和后缀

摘要 basename 名称 [后缀] basename 选项

描述 打印名称,删除所有前导目录组件。如果指定,还删除尾随的后缀。

因此,命令 basename 正在执行此操作

相关内容