Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash如何获取日期2017.2.4但不是2017.02.04_Bash - Fatal编程技术网

Bash如何获取日期2017.2.4但不是2017.02.04

Bash如何获取日期2017.2.4但不是2017.02.04,bash,Bash,如果我使用date+%Y.%m.%d,输出可能是2017.02.04。但是我想要的是2017.2.4,如何在bash中实现它?使用-(连字符):不会填充字段 date +%Y.%m.%d | sed 's/\.0/\./g' date +%Y.%-m.%-d 由于这是一个bash问题,如果您使用的是4.2版或更高版本,则可以使用内置的printf命令,而不是分叉date二进制文件: printf '%(%Y.%-m.%-d)T\n' -1 请参阅franklinsijo的答案。那更好!:-

如果我使用
date+%Y.%m.%d
,输出可能是
2017.02.04
。但是我想要的是
2017.2.4
,如何在bash中实现它?

使用
-
(连字符):不会填充字段

date +%Y.%m.%d | sed 's/\.0/\./g'
date +%Y.%-m.%-d

由于这是一个
bash
问题,如果您使用的是4.2版或更高版本,则可以使用内置的
printf
命令,而不是分叉
date
二进制文件:

printf '%(%Y.%-m.%-d)T\n' -1

请参阅franklinsijo的答案。那更好!:-)