SlideShare a Scribd company logo
1 of 56
Download to read offline
今から始めるzsh2015/05/04
三宅 英明(mollifier)
自己紹介
名前: 三宅 英明
Twitter: @mollifier
はてなID: mollifier
神戸のプログラマ
好きなもの
zsh
vim
vimperator
ブログとか
はてなブログ
http://mollifier.hatenablog.com/
Twitter
http://twitter.com/mollifier
Qiita
http://qiita.com/mollifier
今から始める
zsh
今から始めるzsh
でもその前に、みなさんシェルを使
っていますか?
シェルって何
シェルとは、OSを操作するやつです
シェルって何
大雑把に言うと、黒い画面です
シェルの種類
sh
bash
csh
tcsh
zsh
シェルの種類
ksh
fish
mash
yash
などなど
シェルの種類
いっぱいあります
シェルの種類
何を使っても同じなのか?
シェルの種類
強力なシェル、自分にあったシェル
を選ぶことが大事
なぜシェルは大事か
シェルとは、OSを操作するやつです
UNIX系OSでは、ほとんどの操作を
シェルから行います
シェルの種類
何でもシェルを使います
極端に言えば、シェルの操作だけ覚
えておけばOK
シェルの種類
シェルの種類によって機能が違う。
便利なシェルはめちゃ便利
シェルの種類
逆に言うと、しょぼいシェルを使って
いたら、いつまでたっても便利にな
らない
シェルの種類
だから強力なシェルを使って、便利
なようにカスタマイズすることが大
事
シェルの種類
シェルは大事
シェルの勉強は、やってやりすぎるこ
とはない
シェルの種類
しょぼい -> ふつう
sh
csh
シェルの種類
ふつう -> すごい
bash
tcsh
ksh
シェルの種類
なんかしらんやつ
fish
mash
yash
シェルの種類
そして、我らがzsh
シェルの種類
zsh
もう、すごいとかそういうレベルじゃ
ない
シェルの種類
zsh
すごいとか便利とか、そういう分類
をすること自体がzshに失礼
シェルの種類
じゃあ何なのか?
シェルの種類
zshはもうシェルじゃないんですよ。
宇宙なんですよ
今から始めるzsh
使ったことない人は今から始めてみ
ましょう
すでに使っている人は基本の復習
zshとは
zshとは究極のシェル
zshとは
zshはなんでもできる!
zshとは
「zshでできないことがあったら、そ
れはバグだ」
zshとは
みんなzshを使いたくなりましたね
zshのインストール
UbuntuやDebian GNU/Linuxなど
の場合
% sudo apt-get install zsh
zshのインストール
CentOSやRed Hat Enterprise
Linuxなどの場合
% sudo yum install zsh
zshのインストール
Macの場合
最初から入っています
zshのインストール
Macで最新版を使いたい場合
% brew install zsh
# または
% sudo port install zsh
ログインシェルをzshに変更
# zshのパスを確認
% which zsh
/bin/zsh
# /etc/shellsの内容を確認
% cat /etc/shells
/bin/bash
/bin/tcsh
/bin/zsh
# /etc/shellsにzshのパスを追加。すでにある場合は不要
% sudo sh -c "echo '/bin/zsh' >> /etc/shells"
ログインシェルをzshに変更
% chsh -s '/bin/zsh'
ログインシェルをzshに変更
これでOK。
次にログインしたときからzshが動いて
いる。
初回起動
初回起動時になんか聞かれる
初回起動
実はほとんど役に立たない
はっきり言って、おおきなお世話
初回起動
自分でカスタマイズしたい人は0を
選ぶのが良い
0を押すと空の~/.zshrcが作成され
る(次回以降聞かれなくなる)
zshの設定
今日はzsh勉強会なので、1からカ
スタマイズしてみましょう
zshの設定
設定ファイルの種類
名前 役割
~/.zshenv zshが起動したと
きに必ず読み込
まれる
~/.zshrc 対話的に起動し
たときに読み込
まれる
zshの設定
他にもあるけど、基本この2種類だ
けでOK。
もっというと、基本的には~/.zshrc
に書いておけばOK。
.zshrcの例
# 環境変数
export LANG=ja_JP.UTF-8
# 補完機能を有効にする
autoload -Uz compinit
compinit
# cd したら自動的にpushdする
setopt auto_pushd
# 重複したディレクトリを追加しない
setopt pushd_ignore_dups
.zshrcの例
# グローバルエイリアス
alias -g L='| less'
alias -g G='| grep'
# ヒストリの設定
HISTFILE=~/.zsh_history
HISTSIZE=1000000
SAVEHIST=1000000
.zshrcの例
# emacs 風キーバインドにする
bindkey -e
# 日本語ファイル名を表示可能にする
setopt print_eight_bit
# beep を無効にする
setopt no_beep
.zshrcの例
# フローコントロールを無効にする
setopt no_flow_control
# Ctrl+Dでzshを終了しない
setopt ignore_eof
# '#' 以降をコメントとして扱う
setopt interactive_comments
zshrcの例
この.zshrcは次のURLに書いてある
https://gist.github.com/
mollifier/4964803
とりあえずこんな感じのをコピペし
て、source ~/.zshrcする
zshrcの例
そのあと、そっとやさしくTabを押す
と
うわー、補完、
補完。補完で
きるよ。
楽しい
今から始めるzsh
とりあえずこんな感じで、使いはじめる
のは簡単です
今から始めるzsh
具体的になにがどう便利なのかは、次
の発表で
今から始めるzsh
ありがとうございました

More Related Content

What's hot

RubyGemsで公開されているライブラリをモンキーパッチした話
RubyGemsで公開されているライブラリをモンキーパッチした話RubyGemsで公開されているライブラリをモンキーパッチした話
RubyGemsで公開されているライブラリをモンキーパッチした話SHOYAYAMAMOTO
 
はじめませんか? Bash on Windows
はじめませんか? Bash on Windowsはじめませんか? Bash on Windows
はじめませんか? Bash on WindowsHideaki Aoyagi
 
Python東海の紹介.py
Python東海の紹介.pyPython東海の紹介.py
Python東海の紹介.py2bo 2bo
 
あひる焼きの歴史 ver0.1
あひる焼きの歴史 ver0.1あひる焼きの歴史 ver0.1
あひる焼きの歴史 ver0.12bo 2bo
 
Pyenvで幸せになろう.py
Pyenvで幸せになろう.pyPyenvで幸せになろう.py
Pyenvで幸せになろう.py2bo 2bo
 
Pythonでzabbix apiを使ってみる
Pythonでzabbix apiを使ってみるPythonでzabbix apiを使ってみる
Pythonでzabbix apiを使ってみる2bo 2bo
 
Eject探検隊@北陸1
Eject探検隊@北陸1Eject探検隊@北陸1
Eject探検隊@北陸1ahiru3
 
20160314 すしルート#3 資料
20160314 すしルート#3 資料20160314 すしルート#3 資料
20160314 すしルート#3 資料Nishida Kansuke
 
第23回東京ブロガーミートアップ「動画について」
第23回東京ブロガーミートアップ「動画について」第23回東京ブロガーミートアップ「動画について」
第23回東京ブロガーミートアップ「動画について」Tanaka Yuji
 
Rtmsc2015 group2
Rtmsc2015 group2Rtmsc2015 group2
Rtmsc2015 group2openrtm
 
【すしルート#2】すし×つながる
【すしルート#2】すし×つながる【すしルート#2】すし×つながる
【すしルート#2】すし×つながるSeigo Tanaka
 
20150715 kintone Café 大阪 Vol.3 カスタマイズハンズオン
20150715 kintone Café 大阪 Vol.3 カスタマイズハンズオン20150715 kintone Café 大阪 Vol.3 カスタマイズハンズオン
20150715 kintone Café 大阪 Vol.3 カスタマイズハンズオンMidori Ikegami
 
ejectLT @ NT金沢
ejectLT @ NT金沢ejectLT @ NT金沢
ejectLT @ NT金沢ahiru3
 
クモ型ロボットにおける逆運動学計算
クモ型ロボットにおける逆運動学計算クモ型ロボットにおける逆運動学計算
クモ型ロボットにおける逆運動学計算Teng Tokoro
 
サーバ擬人化ユーザ会Lt資料 qpstudy lite
サーバ擬人化ユーザ会Lt資料 qpstudy liteサーバ擬人化ユーザ会Lt資料 qpstudy lite
サーバ擬人化ユーザ会Lt資料 qpstudy liteSeiichiro Ishida
 
Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)
Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)
Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)ahiru3
 
第13回医療オープンソースソフトウェア協議会セミナー基調講演
第13回医療オープンソースソフトウェア協議会セミナー基調講演第13回医療オープンソースソフトウェア協議会セミナー基調講演
第13回医療オープンソースソフトウェア協議会セミナー基調講演Shinji Kobayashi
 
pieniというFWを作ってみる。
pieniというFWを作ってみる。pieniというFWを作ってみる。
pieniというFWを作ってみる。Kenta Saito
 

What's hot (20)

RubyGemsで公開されているライブラリをモンキーパッチした話
RubyGemsで公開されているライブラリをモンキーパッチした話RubyGemsで公開されているライブラリをモンキーパッチした話
RubyGemsで公開されているライブラリをモンキーパッチした話
 
つ部といえば
つ部といえばつ部といえば
つ部といえば
 
はじめませんか? Bash on Windows
はじめませんか? Bash on Windowsはじめませんか? Bash on Windows
はじめませんか? Bash on Windows
 
Python東海の紹介.py
Python東海の紹介.pyPython東海の紹介.py
Python東海の紹介.py
 
あひる焼きの歴史 ver0.1
あひる焼きの歴史 ver0.1あひる焼きの歴史 ver0.1
あひる焼きの歴史 ver0.1
 
Pyenvで幸せになろう.py
Pyenvで幸せになろう.pyPyenvで幸せになろう.py
Pyenvで幸せになろう.py
 
Pythonでzabbix apiを使ってみる
Pythonでzabbix apiを使ってみるPythonでzabbix apiを使ってみる
Pythonでzabbix apiを使ってみる
 
Eject探検隊@北陸1
Eject探検隊@北陸1Eject探検隊@北陸1
Eject探検隊@北陸1
 
20160314 すしルート#3 資料
20160314 すしルート#3 資料20160314 すしルート#3 資料
20160314 すしルート#3 資料
 
第23回東京ブロガーミートアップ「動画について」
第23回東京ブロガーミートアップ「動画について」第23回東京ブロガーミートアップ「動画について」
第23回東京ブロガーミートアップ「動画について」
 
Rtmsc2015 group2
Rtmsc2015 group2Rtmsc2015 group2
Rtmsc2015 group2
 
【すしルート#2】すし×つながる
【すしルート#2】すし×つながる【すしルート#2】すし×つながる
【すしルート#2】すし×つながる
 
20150715 kintone Café 大阪 Vol.3 カスタマイズハンズオン
20150715 kintone Café 大阪 Vol.3 カスタマイズハンズオン20150715 kintone Café 大阪 Vol.3 カスタマイズハンズオン
20150715 kintone Café 大阪 Vol.3 カスタマイズハンズオン
 
ejectLT @ NT金沢
ejectLT @ NT金沢ejectLT @ NT金沢
ejectLT @ NT金沢
 
クモ型ロボットにおける逆運動学計算
クモ型ロボットにおける逆運動学計算クモ型ロボットにおける逆運動学計算
クモ型ロボットにおける逆運動学計算
 
サーバ擬人化ユーザ会Lt資料 qpstudy lite
サーバ擬人化ユーザ会Lt資料 qpstudy liteサーバ擬人化ユーザ会Lt資料 qpstudy lite
サーバ擬人化ユーザ会Lt資料 qpstudy lite
 
Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)
Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)
Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)
 
第13回医療オープンソースソフトウェア協議会セミナー基調講演
第13回医療オープンソースソフトウェア協議会セミナー基調講演第13回医療オープンソースソフトウェア協議会セミナー基調講演
第13回医療オープンソースソフトウェア協議会セミナー基調講演
 
rucs_vim LT
rucs_vim LTrucs_vim LT
rucs_vim LT
 
pieniというFWを作ってみる。
pieniというFWを作ってみる。pieniというFWを作ってみる。
pieniというFWを作ってみる。
 

Recently uploaded

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 

Recently uploaded (10)

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 

今から始めるzsh