ls -l 没有观察环境变量 TIME_STYLE 真的存在错误吗?

ls -l 没有观察环境变量 TIME_STYLE 真的存在错误吗?

看看这个:我想让ls- l 总是显示长格式的日期。我被告知要添加一个/etc/profile.local带有行的文件export TIME_STYLE=long-iso。我照做了,如下所示#1

但是,没有环境变量,TIME_STYLE如所示#2

#3显示命令的版本ls(这一切都发生在 Xubuntu 16.04 LTS 中)。

如 的输出所示#4ls不会将日期部分格式化为long-iso

好的,如果只是因为TIME_STYLE缺少环境变量(为什么?),然后我将其设置进去#5,并且,作为它存在的证明,我在 中回显它#6

尽管如此,ls -l我们#7并不尊重这一点!

当然,如果我明确要求日期格式如long iso所示#8,日期将按照该格式格式化。但我希望ls -l始终显示日期,而long-iso不必在每次调用时都告诉它,我还想避免创建ls -l包含此参数的别名(这当然很容易做到,但这并不符合运动员的风度)。

这里有什么问题?一些基本的误解?还是真的是一个错误?我真的不敢相信在 ls -l 中

a@v:~$ cat /etc/profile.local                 # 1
export TIME_STYLE=long-iso
a@v:~$ echo "${TIME_STYLE}"                   # 2

a@v:~$ ls --version                           # 3
ls (GNU coreutils) 8.25
...
a@v:~$ ls -l /etc/profile.local               # 4
-rw-r--r-- 1 root root 27 Dez 30 19:18 /etc/profile.local
a@v:~$ TIME_STYLE=long-iso                    # 5
a@v:~$ echo "${TIME_STYLE}"                   # 6
long-iso
a@v:~$ ls -l /etc/profile.local               # 7
-rw-r--r-- 1 root root 27 Dez 30 19:18 /etc/profile.local
a@v:~$ ls -l --time-style="${TIME_STYLE}" /etc/profile.local  # 8
-rw-r--r-- 1 root root 27 2018-12-30 19:18 /etc/profile.local
a@v:~$

编辑:正如甜点教给我们的那样:使用 sudo nano 将一行附加export TIME_STYLE=long-iso到现有文件后/etc/bash.bashrc,我得到:

a@v:~$ ls -l /etc/bash.bashrc -rw-r--r-- 1 root root 2374 2019-01-02 00:23 /etc/bash.bashrc a@v:~$

谢谢甜点,感谢您的帮助,尤其是您对为什么ls -l没有按预期工作的解释。

相关内容