LoginSignup
7

More than 5 years have passed since last update.

lsが勝手にファイル名をクオートしてウザいのでaliasを見なおした

Last updated at Posted at 2016-06-10

最近 coreutils をバージョンアップしたら gnubin/ls が勝手にファイル名をクオートして出力するようになって、インデント崩れて見づらいのでファイル名はそのまま出力されるよう lsalias を20年ぶりくらいに変更することにした。

勝手クオートの抑制は -N オプションを付ければ OK だが、ついでにこれも長年気になっていた --time-style オプションも常用することにしよう。
ただし、bashrc とかは github で管理してて色んな環境で使いまわしてて環境によってエラーが出るのは困るので、ついでにスペックをチェックしつつ最適な alias が設定されるようにしておこう。

で出来たのがこれ

~/.bashrc
# 環境に合わせて出来るだけ好みのls出力にする
if ls -d -N >/dev/null 2>&1; then
  # 最近の gnubin/ls が勝手にファイル名をクオート出力してくるのを抑止
  alias ls='ls --color --time-style +%Y-%m-%d\ %H:%M:%S.%3N -N'
elif ls -d --time-style +%Y-%m-%d\ %H:%M:%S.%3N >/dev/null 2>&1; then
  # デフォの時間表示は見難いのでISOぽくする(full-iso,long-iso,isoは帯に短し襷に長しなのでカスタム)
  alias ls='ls --color --time-style +%Y-%m-%d\ %H:%M:%S.%3N'
elif ls -d --color >/dev/null 2>&1; then
  # せめて色だけでも…
  alias ls='ls --color'
fi

BEFORE/AFTER

BEFORE (ls --colorのみ)
スクリーンショット 2016-06-10 10.36.57.png

AFTER (ls --color --time-style +%Y-%m-%d\ %H:%M:%S.%3N -N)
スクリーンショット 2016-06-10 10.37.12.png

うむ、いい感じ😄

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7