设置 ls -l 时间格式

ary*_*ing 6 ls date time

我希望所有ls显示日期的命令(例如ls -l)以我选择的格式打印日期列。目前,我每次都使用--time-style. 有没有办法永久设置它,例如long-iso(而不是ls -l --time-style="long-iso"在每次调用时发出)?

谢谢

pep*_*uan 12

这个问题与AskUbuntu 上提出的问题类似,所以我将重复我在那里的答案

export TIME_STYLE=<desired_time_style>
Run Code Online (Sandbox Code Playgroud)

因此,如果您希望所有调用 都ls产生输出--time-style=long-iso,您可以:

export TIME_STYLE=long-iso
Run Code Online (Sandbox Code Playgroud)

此方法适用于 Ubuntu 和 Cygwin,并且可能适用于ls来自GNU coreutils 的所有内容(Mac OS X 需要使用 安装 gnu coreutils brew)。


Ste*_*itt 6

如果您定义了一个别名,例如

alias ls='ls --time-style=long-iso'
Run Code Online (Sandbox Code Playgroud)

那么ls最终显示日期的调用将使用它。


Lin*_*eak 5

我可以建议一些基本的别名吗:

# - escape potentially existing alias
# - use colors when appropriate
# - group directories first
alias ls='\ls --color=auto --group-directories-first'

# - long list `ls`
# - human readable sizes
# - ommit hidden items
# - show sizes in kibibytes
# - set date format to a template of yyyy-mmm-dd, e.g. 2022-Mar-06
alias ll="ls -lhk --time-style='+%Y-%b-%d'"
Run Code Online (Sandbox Code Playgroud)

对于 Bash,只需将这些行放入.bash_aliases应由您的 提供的文件中.bashrc,以防万一它没有:

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi
Run Code Online (Sandbox Code Playgroud)

有关 GNU 格式化的更多信息coreutils