タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

cacheとzshに関するn2sのブックマーク (2)

  • shellでTTL付きのキャッシュをしたい - Qiita

    こんな感じ sleep 3 ; echoの結果を最大5秒間キャッシュしている様子。 キャッシュの実装 実装はこのあたりに置いてある。 TTL付きのキャッシュを実装するにあたり、シェルで実現するならファイルに保存しておいて、作成日時はそのファイルのメタ情報を利用すれば楽。 また、やろうと思えば更新日時と作成日時がどちらも取れるので、細かいTTLの実装も可能。 stat -c %Yコマンドで指定したファイルの最終更新日時のepoch秒を取得できる。 それと現在時刻を比べて指定した時間より経過していたら...という処理を書くことでTTLを実装する。 statを使ってファイルの有効期限判定するには以下のようにする。 $ touch -d '1day ago' hoge.txt $ [ $(( $(date +%s) - $(stat -c %Y hoge.txt) )) -gt $((60 * 6

    shellでTTL付きのキャッシュをしたい - Qiita
  • zshのキャッシュ機能を利用して高速に補完する - Qiita

    Zsh では、たいていのものは補完できるのだが、場合によって補完が行われるまでに時間が掛かるという問題に遭遇する。たとえば補完候補リストを生成するのに、ネットワークを通じてリモートのリソースにアクセスする場合など、コストのかかる処理が必要なときだ。 補完の重要な目的のひとつはコマンドライン編集を加速させることだが、補完自体に時間が掛かって編集が待たされてしまっては末転倒である。そこで Zsh には、コストのかかる補完データをキャッシングして、その後の補完を高速に行うための機能が用意されている。今回は、私が補完スクリプトを実装する際に、キャッシュ機能を利用する必要が生じた実際例に基づいて、その使い方と得られた知見を説明したい。 実際に使った例 キャッシュ機能を利用する必要が生じたのは、[jhbuild] link-jhbuild コマンド用の[補完スクリプト] link-jhbuild-c

    zshのキャッシュ機能を利用して高速に補完する - Qiita
    n2s
    n2s 2014/12/22
  • 1