タグ

zshに関するkoko1000banのブックマーク (105)

  • 高密度小池 / zsh の謎の挙動に悩まされていました

    zsh の謎の挙動に悩まされていました nohup unko としてプログラムを起動した場合、端末を閉じたり exit コマンドを発行した場合にもそのまま動いていて欲しいものですが、 zsh 上ではこれも終了されてしまう。 しかし、シェルスクリプトを書いてその中で nohup していた場合は端末や zsh を殺しても大丈夫。 ちょっと調べたら答えがあった。 端末を殺した場合のフロー 端末が殺される→中で実行しているシェルに SIGHUP が送られる→シェルがよろくやる んでこれが bash の場合は SIGHUP を送らない のだけど zsh の場合は 子プロセス全部に問答無用で SIGHUP を送る ので、 nohup していても殺されてしまう。 シェルスクリプトの中で nohup していて死なないのは、 端末の死→ zsh にSIGHUP が来る → zsh

  • 第4回 使いこなしポイント 一撃編 | gihyo.jp

    通常なら他のツールと組み合わせたり、2~3ステップが必要な処理もzshの多様な展開処理を用いれば一発で結果が得られることが多い。 エイリアス エイリアスは手軽に設定できすぐに効果が得られる便利な機能である。他のシェルでも使える基的なエイリアスの他に、zshには以下のエイリアスが用意されている。 接尾辞エイリアス グローバルエイリアス 接尾辞エイリアス 接尾辞(suffix)エイリアスは、ファイルの拡張子とそれを開くアプリケーションプログラムの関連付けとも言える機能で、特定の拡張子を特定のプログラム起動に結び付ける。接尾辞エイリアスは alias -s で登録する。 alias -s pdf=xpdf とすると、拡張子が ".pdf" のファイルをコマンドラインのコマンド位置で「起動」するとxpdfを起動して開く。 % ls foo.pdf hoge.pdf % foo.pdf zsh:

    第4回 使いこなしポイント 一撃編 | gihyo.jp
  • はてなブログ | 無料ブログを作成しよう

    中年以降の人生を考えるための5冊 今までずっと、ひたすらラクなことや楽しいことだけをやって生きていきたいと思っていたのだけど、40歳を過ぎた頃から、今までのやり方ではいろいろと行き詰まってくるようになってきました。何をやってもそんなに楽しくない。これからの人生はずっと下り坂が続いてい…

    はてなブログ | 無料ブログを作成しよう
  • zshで標準出力をクリップボードにコピーするエイリアス @ 7bit

    現実逃避として格好のシェルスクリプト書き。今回はXのクリップボード操作コマンドであるxselを利用して、stdout (+stderr)をクリップボードにコピーする(更にまたstdoutに書き戻す)zshのグローバルエイリアスを書いてみました。 if exists xsel; then alias -g B=" | xsel -bi" # stdout => clip alias -g B2=" 2>&1 | xsel -bi" # stdout + stderr => clip alias -g BB=" | (cat 1>&2 | xsel -bi) 2>&1" # stdout => clip and stdout alias -g BB2=" 2>&1 | (cat 1>&2 | xsel -bi) 2>&1" # stdout, stderr => clip and stdout

  • zshでsudoや|を無視して履歴から補完 @ 7bit

    zshでhistory-beginning-search-backwardをCtrl-Pなどに割り当て、入力したところまでマッチするように履歴から補完するように設定している方は多いと思います。 しかし、プロンプト先頭からカーソル位置までが検索対象となってしまうため、先にsudoを入れたり、パイプの途中から補完するといったことはできません。 そこで、現在のプロンプト入力からいくつか指定のパターンを除外した上で補完できるようなzleのウィジェットを書いてみました。 履歴に sudo apt-get update make make install ldconfig less があったとして、普通は sudo m(補完)としても何も補完されませんが、この設定を用いるとsudo make install => sudo makeのように補完してくれます。 sudo (補完)(補完に必要な文字列を何

  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう
  • Emacs から sudo 経由でファイルを編集する方法 | Carpe Diem

    昨日の社内 LT で、とあるエンジニアから「sudo するときは vi を使いますよね?だから、最近 vi でいい気がしてきた」という痛い発言が出ました。 Emacs を愛用している人として、とても悔しいと思って試してみました。 Emacs から sudo 経由でファイルを編集するときは、tramp を使います。以下、tramp のインストールと設定手順です。 以下、作業手順 家サイトより、tramp 2.1.9 をダウンロードする 展開してから、./configure –with-contrib && make && make clean する tram-2.19 ディレクトリ全体を、ロードパスの通った場所におく Emacs を起動してから、M-x tramp-version をして tramp のバージョンを確認する ここに書いてあるとおり、C-x C-f /sudo::ファイル名

  • zshのmanページが15個に分かれてるので解説してみる - mollifier delta blog

    zshは高機能なだけあって、manページも15個に分かれている。多すぎてわけ分かんなくなってきたので、それぞれのページの内容をざっと解説してみる。 大事なページ まずは、よく読む、または読んでおいた方が良いと思うページから。 zsh zshの概要。一番最初に書いてある、他のmanページの概要説明が重要。あとはコマンドラインオプション、初期化ファイル(.zshrc とか)を読み込む処理など。 zshmisc その他の雑多なこと。なんだけど、zshの文法的な説明があったり、密かに重要。内容は大体こんな感じ。 SIMPLE COMMANDS & PIPELINES: コマンドライン処理の基 COMPLEX COMMANDS: 複合コマンド。for, while などの制御構文も含む。 REDIRECTION: リダイレクト JOBS: ジョブコントロール CONDITIONAL EXPRESS

    zshのmanページが15個に分かれてるので解説してみる - mollifier delta blog
  • 学校に居る時プロクシを設定などする設定を書いた - hitode909のダイアリー

    zshうちの学校は中から外につなぐときはプロクシを設定する必要があるので,.zshrcに設定を書いてみました.やること学内のLANのどこかにpingを飛ばして届くか調べる学校にいるとき,環境変数のhttp_proxyとftp_proxyを設定学校にいるとき,学校用の.subversion/serversを作る(proxy経由でsubversionにアクセスするため)学校にいるとき,プロンプトを+Rにする (参考:http://www.ritsumei.jp/index_j.html )いないとき,設定を消す.zshrcにこれを書く # 学校用の設定をする関数 set_school () { echo "school" # proxy export http_proxy=http://(proxyのURL):(ポート) export ftp_proxy=http://(proxyのURL):

    koko1000ban
    koko1000ban 2009/02/28
    ping飛ばして環境を切り替える
  • zsh覚え書き - はてブロ@ama_ch

    Tabでファイルグロブを展開 ama-ch% echo *~ # ~で終わるファイルを確認 fudemame.py~ maimiku_search.py~ mymixi_diary.py~ output.txt~ search_diary.py~ test.py~ twitter-notifier.py~ ama-ch% rm *~ # ここでTabを押すと・・・ ama-ch% # ↓こうなるので、実行前に対象ファイルが確認できる! ama-ch% rm fudemame.py~ maimiku_search.py~ mymixi_diary.py~ output.txt~ search_diary.py~ test.py~ twitter-notifier.py~ グロビング 参考:UNIX今日の技 - UNIX今日の技/zsh 再帰的にディレクトリを掘るワイルドカード **で、現在位

    zsh覚え書き - はてブロ@ama_ch
  • プロンプトの色をローテートする - nothing but trouble

    Introduction of the ZSH に載ってるやりかただと乱数を使ってるために同じ色になったりしてちょっと不満だったので zshrc を以下のようにしてみた。 PROMPT_COLOR=32 precmd() { PROMPT_COLOR="$[32 + ($PROMPT_COLOR - 31) % 5]";} PROMPT=$'%{^[[${PROMPT_COLOR}m%}%U%n@$HOST'"%u%{^[[m%} %(!.#.$) " RPROMPT=$'%{^[[${PROMPT_COLOR}m%}[%~]%{^[[m%}' これで、行が変わる毎にプロンプトの色が 32-37 の間でローテートしてくれていい感じになる。

    プロンプトの色をローテートする - nothing but trouble
  • めも - zshrcで設定していること

    _ [Ubuntu][Arch][zsh] zshrcで設定していること 導入以来、ウロウロと彷徨いながらなんとか設定した。 たぶん基的なことしか設定していないが、とりあえずメモっとく。 見た目 autoload -Uz colors colors 色の指定を%{$fg[red]%}みたいに人に優しい指定の仕方が出来、コピペもしやすい。リセットするときは%{$reset_color%}。 setopt prompt_subst プロンプトに$HOSTとか$UIDとかいった類のものが使用出来るようになる。いつか使うかもしれないので設定しておく。 case ${UID} in 0) PROMPT="%{$fg_bold[green]%}%m%{$fg_bold[red]%}#%{$reset_color%} " PROMPT2="%{$fg[magenta]%}%_%{$reset_col

  • シェルのプロンプトにgit「ブランチ」を表示するやつ - while (”im mirrored”);

    git function prompt-git-head-name() { local git_dir="$(git rev-parse --git-dir 2>/dev/null)" if [ -z "$git_dir" ]; then return 1 fi local head_name='' local additional_info='' if [ -d "$git_dir/rebase-apply" ]; then if [ -f "$git_dir/rebase-apply/rebasing" ]; then additional_info="REBASE" elif [ -f "$git_dir/rebase-apply/applying" ]; then additional_info="AM" else additional_info="AM/REBASE" fi he

  • GitHub - jcorbin/zsh-git: Towards better Zsh Git integration

    http://www.wunjo.org/zsh-git This is my git-enabled zsh prompt. I got fed up with looking at everyone's half-baked kludges, so I decided to try to do better. The git integration bits are mostly separated into a module called 'zgitinit', where as the prompt is a standard zsh prompt theme. To use this, you need to get the files in functions somewhere that zsh can find them, here's two way so to do t

    GitHub - jcorbin/zsh-git: Towards better Zsh Git integration
  • git ready » zsh git status

    Sure, you could have status shown in your bash prompt but that’s not your only option for shells! zsh, or Z Shell is another popular command line interface that is in use by plenty of programmers, and there’s quite a few scripts that will get your repo’s status shown easily and quickly. Joshua Corbin has thrown together a fantastic set of scripts dubbed zsh-git that provides a great mix of colors

  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう
  • screen, zsh, 処理終わったか見たい | zsh | screen - 氾濫原

    長い処理させてウィンドウ切り替えたとき、バックグラウンドのウィンドウの処理が終わっているんだかいないんだかが気になるので手を入れた。 何かいい方法があるのかもしれないけど、よくわからないのでごちゃる。 ari's diary - ステータスライン のスクリプトを使っている。 if [ "$TERM" = "screen" ]; then chpwd () { echo -n "^[_`dirs`^[\\" } preexec() { # see [zsh-workers:13180] # http://www.zsh.org/mla/workers/2000/msg03993.html emulate -L zsh local -a cmd; cmd=(${(z)2}) case $cmd[1] in fg) if (( $#cmd == 1 )); then cmd=(builtin j

  • http://www.machu.jp/posts/20050429/

  • ディノオープンラボラトリ — zshユーザーが普通にtrampを使う方法

    久々にEmacsの話題です。trampって便利ですよね。ローカルのEmacsでssh先のファイルを編集したり、sudoしてroot権限で編集できたりするのは素晴らしいと思います。trampの素晴らしさを知らない人は、下記サイトなどを参照してください。 tramp version 2.1.14 ユーザーマニュアル Emacsでリモートサーバ上のファイルをrootで編集する - 高原芳浩のKeep-Alive ところで、zshをログインシェルにしているとtrampが上手く動かない現象に出くわします。具体的には、「/sudo::/etc/hosts」などを開こうとして下記のように怒られることがあります。 tramp: Waiting 30s for remote `/bin/sh’ to come up... apply: Couldn’t `exec env ‘ENV=’ ‘PS1=$ ‘

  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう