私は現在zshを学習していて、今は使用したかったのですが、次のようになりstrftimeます。
zsh: command not found: strftime
ドットファイルで常にその機能を使用している人がいるので、私は何か間違ったことをしていると思います。
私は現在zshを学習していて、今は使用したかったのですが、次のようになりstrftimeます。
zsh: command not found: strftime
ドットファイルで常にその機能を使用している人がいるので、私は何か間違ったことをしていると思います。
strftimezshと呼ばれるモジュールで定義されていますdatetime。このzmodloadコマンドは、コロンで区切られたディレクトリのリストからモジュールをロードします$module_path。
私のシステムでは:
% echo $module_path
/usr/lib/zsh/4.3.10
% ls -l $module_path
drwxr-xr-x 3 root root 4096 2009-11-05 01:03 zsh
% ls -l $module_path/zsh/datetime*
-rw-r--r-- 1 root root 9828 2009-09-10 02:45 /usr/lib/zsh/4.3.10/zsh/datetime.so
% type -a strftime
strftime not found
% zmodload zsh/datetime
% strftime %Y-%m-%d 1271603087
2010-04-18
% type -a strftime
strftime is a shell builtin
% /bin/date -d @1271603087 +%Y-%m-%d
2010-04-18
strftimeは C 関数ですがdate、コマンド ラインでも同じ機能をすべて備えていると思います。
詳細については、を参照man dateしてください。
オプションを使用して、--date=STRING現在の時刻を取得する代わりに、フォーマットする日付を指定します。
Google 経由でここにたどり着いた人には、zmodload. (リソースの競合が原因で .zshrc が遅いことを検出するために使用する ため、新しいファイルシステム要求を追加したくありません。)
${(%):-"%D{STRFTIME_STRING_HERE}"}
その要旨は次のとおりです。
${VAR:-DEFAULT}、VAR.(%)前に置くVARことで、や仲間で使う代用トークンの展開が可能にPS1なります。(これは、 などへのアクセスも許可するため、非常に強力な機能です%F{green}。詳細については、「プロンプト シーケンスの拡張」を参照しman zshmiscてください。)%D{...}呼び出しますstrftime(3)。「エポックからの秒数」のタイムスタンプを取得し、それに対して算術演算を実行できる%D{%s}ため、特に便利です。%s
( %sLinux、AIX、Illumos、MINIX、OSX、およびすべての BSD ファミリ システムでサポートされていますが、POSIX の一部ではなくstrftime、Solaris、HP-UX、 UnixWare、OpenServer、または Windows ライブラリの Cygwin と MinGW が依存しています。)