タグ

zshに関するmas-higaのブックマーク (10)

  • macOS の zsh ではこれだけはやっておこう

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

    macOS の zsh ではこれだけはやっておこう
    mas-higa
    mas-higa 2023/04/27
    おじさんは Intel Mac で bash を使い MacPorts をインストールしています
  • ひさしぶりにzshに戻りました - ちなみに

    仕事用のマシンをM1 MacBook Proに交換してもらったので、開発環境を整え直しました。 2年ほど fish を使ってきたのだけれど、普段は良いのだけれど、ちょっと自動化したくなったときに、やはりPOSIX準拠じゃないシェルはなかなか難しかった。macOSの標準も zsh になったことだし、久しぶりに戻ってみることにした。 導入 現代なので XDG Base Directory Specification に乗っかっておくことにする。 Arch Linux の Wiki がよくまとまっていて助かるのでこれを参考にして進めた。 zshの場合は ZDOTDIR を指定するといいのだけれど、これをどこで指定するのかという問題がある。zshの起動時に最初に読み込まれるユーザー設定は ~/.zshenv なのだけれど、ここに ZDOTDIR を書くということは .zshenv だけホームディレ

    ひさしぶりにzshに戻りました - ちなみに
    mas-higa
    mas-higa 2022/03/22
  • シェルのhistoryをクラウドに保存する取り組み - hitode909の日記

    ある日zshの履歴が消えた悲しみからいくつか課題感を持っていた。 巨大な1ファイルにどんどん書いていくので、壊れたときの影響が大きい 追記方式なので、複数の端末で共有するためGitやDropboxなどに入れるとコンフリクトしやすい 履歴から取り出すときにどのディレクトリで実行したコマンドなのかわからない シェル履歴をファイルに書いて終わりという暮らしは数十年変わっていない。 履歴はクラウドサーバーに保存して、補完したいときにAPI経由で問い合わせるというアーキテクチャが良いと思ったので、作ってみた。 github.com コマンドの実行時 zshのフックを使って、コマンドの実行時に、実行したコマンドと$pwdをAPIにPOSTする Cloud Functionsが立っていて、送られたコマンドをCloud Datastoreに保存する Cloud FunctionsはGoogle製のAWS

    シェルのhistoryをクラウドに保存する取り組み - hitode909の日記
    mas-higa
    mas-higa 2018/11/19
    "手元のファイルを大切にする時代は終わったと信じて、未来に進んでいきたい。"
  • 宇宙zsh #2を開催した - mollifier delta blog

    2015/05/04に「宇宙zsh #2」というzshの勉強会を開催した(告知ページ)。今回は東京で開催ということで、一泊二日のちょっとした旅行も兼ねて開催した(僕は普段神戸に住んでる)。 内容 前半はzshについて基的な設定から勉強しようということで、最初のインストールとよく使われる設定について解説した。 タイトル 発表者 はじめに @mollifier 今から始めるzsh @mollifier 格的に始めるzsh @mollifier zshでコマンドライン履歴を活用する @mollifier 後半はもう少し進んだ使い方について解説した。 タイトル 発表者 vcs_infoを使おう @mollifier Antigenを使おう @mollifier pecoを使おう @mollifier anyframeを使おう @mollifier あとは、@hoto17296さんと僕とでLTを

    mas-higa
    mas-higa 2015/05/11
    なんだこの id:mollifier 無双
  • 宇宙zsh #2 (2015/05/04 13:00〜)

    お知らせ 運営会社の年末年始休業につき、2023年12月28日(木)13時以降のconnpass機能のお問い合わせにつきましては2024年1月9日(火)より順次ご案内させていただきます。あらかじめご了承ください。 機能改善 イベント資料の投稿において、SlideShareやSpeakerDeckと同様に、Docswellの資料を埋め込みスライド表示できるように対応いたしました。資料の投稿機能は、資料URLを指定するだけで、URLから取得した情報を、適した形でconnpass上で表示・共有できる機能です

    宇宙zsh #2 (2015/05/04 13:00〜)
  • zshが無いと死ぬ人がbashでなんとかする - ろば電子が詰まつてゐる

    ※この記事は、zsh Advent Calendar 2014 - Qiitaの19日目です。 zsh無しにbashで生きる zsh大好きな皆さんは、bashを心の中のどこかでバカにしているのではないでしょうか。しかし最近のbashは、いろいろとzshを意識している(?)雰囲気があり、zsh特有だと思っていた機能が実はbashでも使えたりします。 そのため、 zshを使えないと全身から血を吹き出して死ぬ ログインシェルとしてzshが起動されないと発狂して死ぬ 「最近はSolarisにだってzshが入っている」と一日100回は唱えないと死ぬ zsh神社が欲しい、参拝したい という人でも、bashがあれば多少の延命ができるかもしれません。稿では、zshが無いというサバイバル環境下において、bashでなんとかすることをテーマにいくつかサンプルを挙げてみます。 なおここでは、bashのプロンプト

    zshが無いと死ぬ人がbashでなんとかする - ろば電子が詰まつてゐる
    mas-higa
    mas-higa 2014/12/19
    yum でなんとかできる状況なら zsh 入れろ
  • zshのPATHの自動重複削除や余計なPATHの削除 - @znz blog

    シェルの中から exec zsh をしたり、 GNU screen や tmux を経由して間接的にシェルの中でシェルを開いたりするときに 何も考えずに PATH を追加していくと どんどん長くなっていってしまうと思います。 bash などでも使えるように汎用的にしようとすると自前で頑張らないといけないのですが、 zsh では zsh 自体の機能で簡単に重複を防げます。 また、パスに望ましくないものが入っていた時に削除する方法も紹介します。 この投稿は zsh Advent Calendar 2013 の12日目の記事です。 重複削除 重複を削除するには

    mas-higa
    mas-higa 2014/12/12
    "何も考えずに PATH を追加していくと どんどん長くなっていってしまうと思います" .profile と .*rc の使い分けで、どうにかならんの? (bash では、リモートログインとか含めて考えると無理ゲーって聞いたことある)
  • ssh でカレントディレクトリの ssh_config を使用する (補完つき) - Qiita

    Chef リポジトリなどで、プロジェクトごとの ssh_config を作成している。 ssh 実行時に ssh -F ssh_config hostname とすれば使えるんだけど、毎回タイプするのは面倒なので、カレントディレクトリに ssh_config があれば自動で使うラッパーを書いた。 #!/usr/bin/env ruby require "shellwords" if !ARGV.include?("-F") && File.exists?("ssh_config") # ANSI Color Code START_YELLOW = "\e[33m" END_COLOR = "\e[0m" puts START_YELLOW + "Using: #{File.expand_path("ssh_config")}" + END_COLOR exec "ssh -F ssh_co

    ssh でカレントディレクトリの ssh_config を使用する (補完つき) - Qiita
    mas-higa
    mas-higa 2014/11/13
    zsh の方が短かいし ruby 起動しなくて済むけど、呪文すぎる ><
  • スクリプト終了イベントの捕捉と zsh の非互換性 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

    スクリプト終了イベントの捕捉と zsh の非互換性 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog 拡張 POSIX シェルスクリプト Advent Calendar 2013、5日目の記事です。 書いているうちにネタが変わってしまいました。 trap というシェル組込みコマンドをご存じですか? シグナルを受信したときに実行する処理 (シグナルハンドラー) を設定するものです。 例えば SIGINT シグナル※を受信するとデフォルトではスクリプトが終了しますが、 trap で捕まえてやると終了せずに継続することも可能です。 (※割り込み (INTerrupt)。 端末から実行したシェルスクリプトなら Ctrl+c で送信可) $ sh -c 'trap "echo Boo!" INT; while :; do read i && e

  • zsh でシェルスクリプトを書くときの留意点 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

    拡張 POSIX シェルスクリプト Advent Calendar 2013、3日目の記事です。 初日に「bash を避けて ksh や zsh で書くとスクリプトが速くなるよ!」 と紹介しましたが、実は zsh でふつうの sh なシェルスクリプトを書くと、色々ハマれます。 何が問題でどうすればいいのでしょうか。 いきなりですが、最初にどうすればいいかを紹介します。 スクリプトの先頭を以下のように書くだけです。 zsh は sh, ksh, csh (誰が使うの?) のエミュレーション機能を持っていて、 それを切り替えるのが組込みコマンド emulate です。 -R オプションを指定すると、各種シェルオプション (zshoptions(1) を参照) を指定したシェルエミュレーションに合ったデフォルト値にリセットします。 こうすることで概ね POSIX sh 互換の動きとなり、概ね P

    mas-higa
    mas-higa 2013/12/03
    その昔 tcsh というのがあってな…
  • 1