以日期名称创建 mkdir 吗?

以日期名称创建 mkdir 吗?

在 Linux shell 中,我能否创建一个目录,但其名称将是另一个程序返回的字符串?如果可以,该怎么做?

具体来说,我被要求在我的 Home 中创建一个新目录,其名称将是我计算机时钟上的分钟。假设/home/john/01/01我的时钟上的分钟。

我正在考虑类似管道之类的东西date +"%M" | mkdir,但我不知道如何将返回的数字放入程序中mkdir

最后我又想到了一个主意,类似这样,mkdir (date +"%M")但这也是一个错误。有什么可以帮忙的吗?

答案1

你正在寻找的概念是命令替换,使用语法$(command)

mkdir /home/john/$(date +%M)

您可能还会看到较旧的“反引号”语法,`command`

答案2

mkdir $(date +%Y%m%d)或者我个人使用mkdir $(date +%Y%m%d_%H%M%S)hh:mm:ss。date --help如果您需要更多信息,它将为您提供不同的格式。

答案3

您可以使用以下命令轻松完成此操作:

$ min=$(date +"+%M"); mkdir $min

答案4

您可以通过输入以下命令来执行此操作:

mkdir ~/$(date | awk -F':' '{print $2}')

该命令在home文件夹中创建一个目录并以当前分钟作为名称。

相关内容