【发布时间】:2018-08-22 21:55:30
【问题描述】:
我有一个看起来像这样的文件
.../proj_1/file1.txt 8 2018-03-14 07:46:01
.../proj_1/file3.txt 3 2018-03-14 07:47:01
.../proj_1/file2.txt 10 2018-03-14 07:45:01
.../file1.txt 2 2018-03-14 07:50:01
我想提取 3. 和 4. 列中的日期和时间并将其保存到变量中。 (dir_path是目录名,source_file是我上面描述的文件)
variable=$(grep "$dir_path/.*" source_file | grep -v "$dir_path/.*/" | awk '/[0-9]/{print ($3 $4)}')
我想要的输出是
2018-03-14 07:46:00
2018-03-14 07:47:00
2018-03-14 07:45:01
但是使用这段代码,输出看起来像这样
2018-03-1407:46:00
2018-03-1407:47:00
2018-03-1407:45:01
如何在日期和时间之间添加空格?甚至可能吗?如果我在 awk 表达式中添加一个空格,则时间和日期将保存在单独的元素中,这不是我想要的。
感谢您的帮助!
【问题讨论】:
-
在
$3和$4之间加逗号,即:awk '/[0-9]/{print ($3, $4)}'