Mr *_*r T 13 command-line date mkdir
在 Linux shell 中,我可以创建一个目录但名称是从另一个程序返回的字符串吗?如果我能,怎么做?
特别是我被要求在我的家中创建一个新目录,其名称将是我计算机时钟上的分钟。让我们假设/home/john/01/,01是我时钟上的分钟数。
我在想像管道date +"%M" | mkdir这样的事情,但我不知道如何将返回的数字放入mkdir程序中。
最后我想到了另一个想法,像这样,mkdir (date +"%M")但这也是一个错误。请问有什么帮助吗?
ste*_*ver 22
您正在寻找的概念是命令替换,它使用语法$(command)
mkdir /home/john/$(date +%M)
Run Code Online (Sandbox Code Playgroud)
您可能还会看到较旧的“反引号”语法, `command`
Phi*_*oud 16
mkdir $(date +%Y%m%d)或者我个人使用mkdir $(date +%Y%m%d_%H%M%S)hh:mm:ss。date --help如果您需要更多内容,将为您提供不同的格式。
小智 9
您可以使用以下命令轻松完成:
$ min=$(date +"+%M"); mkdir $min
Run Code Online (Sandbox Code Playgroud)
您可以通过键入以下命令来做到这一点:
mkdir ~/$(date | awk -F':' '{print $2}')
Run Code Online (Sandbox Code Playgroud)
该命令在home文件夹中创建一个目录并将当前分钟作为名称。