の timer_stop この関数にはタイマーを人間が判読できる形式に変換する機能もありますが、これはおそらく必要以上に面倒です。ただし、私は開発者ではないため、Past Lee が例を数時間検索した結果、これに落ち着きました。
私のような人のために魚でそれをやる
これは、Linux ホストの 1 つに ssh 接続したときの bash 用ですが、MacOS 上で Fish を実行しています。そこで同じ結果を得るために別のfish関数を用意し、測定値を人間が読める形式に変換する粗雑なハックを使用しました。このコードを作成したのは私です。申し訳ありません。 StackOverflow ソースからタイル化されたフローを参照してください。
function fish_prompt --description 'Write out the prompt'
# Save the last status
set -l last_status $status
# Calculate the command duration if available
set -l cmd_duration ""
if set -q CMD_DURATION
# Convert milliseconds to microseconds for more precise comparison
set -l duration_us (math "$CMD_DURATION * 1000")
# Calculate different time units
set -l us (math "$duration_us % 1000")
set -l ms (math "floor($duration_us / 1000) % 1000")
set -l s (math "floor($duration_us / 1000000) % 60")
set -l m (math "floor($duration_us / 60000000) % 60")
set -l h (math "floor($duration_us / 3600000000)")
# Format duration string
if test $h -gt 0
set cmd_duration (string join '' "(" $h "h" $m "m)")
else if test $m -gt 0
set cmd_duration (string join '' "(" $m "m" $s "s)")
else if test $s -ge 10
set -l fraction (math "floor($ms / 100)")
set cmd_duration (string join '' "(" $s "." $fraction "s)")
else if test $s -gt 0
set cmd_duration (string join '' "(" $s "." (printf "%03d" $ms) "s)")
else if test $ms -ge 100
set cmd_duration (string join '' "(" $ms "ms)")
else if test $ms -gt 0
set -l fraction (math "floor($us / 100)")
set cmd_duration (string join '' "(" $ms "." $fraction "ms)")
else
set cmd_duration (string join '' "(" $us "us)")
end
end
# Define unicode symbols for status
set -l checkmark "✓"
set -l cross "✗"
# Colors
set -l normal (set_color normal)
set -l dark_gray (set_color 555555)
set -l blue (set_color -o blue)
set -l red (set_color red)
set -l green (set_color green)
set -l purple (set_color -o purple)
# First line
echo # New line
echo -n -s $dark_gray "["(date +%T)"] $last_status " # Time in brackets and exit status
# Status indicator with exit status
if test $last_status -eq 0
echo -n -s $green $checkmark
else
echo -n -s $red $cross
end
# Actually echo the duration
echo -n -s $dark_gray " $cmd_duration"
# Do the rest of the prompt
echo
set -l host_color $purple
echo -n -s $host_color $USER "@" (prompt_hostname) $normal ":" $blue (prompt_pwd) $normal " \$ "
end
ペイントの斑点
ANSI BBS グラフィックに没頭して形成期を過ごしたおかげで、おそらく私は平均的な愚かなシステム管理者よりも、端末内の色付きのテキストが好きになったでしょう。構文の強調表示や色は一般的に理解を妨げ、流し読みを促すと感じている人もいると思いますが、何と言えるでしょうか?私は彼らを愛していますし、信頼しています。とりとめのない話が多すぎるかもしれないが、それはそれでいい。私のカラフルなケーシングツールを私の冷たくて死んだ手から奪ってください。
このために、私は GRC (Generic Colorizer の略) と呼ばれる小さなプログラムを利用して、他のツールにハイライトと色付けを追加します。これは広く利用可能であり、追加の構成を必要とせずに動作します。

多少の色なら問題なし!
リー・ハッチンソン
多少の色なら問題なし!
リー・ハッチンソン

多少の色なら問題なし!
リー・ハッチンソン
ちょっとしたあだ名があります(私はそれを保持しています) .bash_aliases 善良な市民のように)、いくつかの一般的なコマンドのデフォルトをカラー出力にします。
alias ls="ls --color=auto"
alias ll="ls -AlFh --group-directories-first"
alias df="grc df -h"
alias du='grc du -h'
alias free="grc free -h"
alias ping='grc ping'
alias traceroute="grc traceroute"
alias ip='grc ip'
私も自分の数字を人間が判読できるようにすることの大ファンです。 -h したがって、スイッチを自由に適用できます。
(次のようなコマンドを参照することに注意してください。 ip GRC は、その出力を他のものに渡すと、時々奇妙な動作をすることがあります。慎重に運転してください。か否か!それはあなたのコンピュータだ、ダメだ!)
端末自体
熱心な読者は、スクリーンショットから、はるかに優れたオプションがあるにもかかわらず、私がターミナル プログラムに MacOS の Terminal.app を使用していることに気づくでしょう。私の言い訳は、私は Terminal.app に満足していて、そこから引き離されるものは何もなかったということだと思います。私は、Ghostty、Alacritty、素晴らしい tmux Windows 統合を備えた強力な iTerm2、さらには Warp のようなターミナル エクスペリエンスの新しい解釈など、よくある候補を試してみました。