Your SlideShare is downloading. ×
誰得コマンド&オプション35連発
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

誰得コマンド&オプション35連発

9,979
views

Published on

DevLOVE ターミナル勉強会の発表資料です。

DevLOVE ターミナル勉強会の発表資料です。

Published in: Self Improvement

0 Comments
28 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
9,979
On Slideshare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
42
Comments
0
Likes
28
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. DevLOVEターミナル勉強会 26 Mar. 2012 さとうようぞう Twitter: @yoozoosato
  • 2. 謝辞会場をご提供いただきました、日本オラクル様。どうもありがとうございます。お集まり頂きましたみなさま、ありがとうございます。企画・運営に関わっていただいたDevLOVEの皆様。いつも感謝しています。
  • 3. #hashtag•  今日の勉強会のハッシュタグ #devlove0326 #devlove
  • 4. 自己紹介
  • 5. devlove% echo $NAMEdevlove% SATO Yozodevlove% echo $TWITTER_IDdevlove% @yoozoosatodevlove% echo $MAILdevlove% yoozoosato@gmail.com0 zsh !2012/03/26
  • 6. devlove% echo $JOBdevlove% 某ISP0 zsh !2012/03/26
  • 7. devlove% disclaimerこのプレゼンテーションでは皆さんにターミナルにもっと馴染んでもらうため、コマンドやそのオプションをたくさん紹介します。ターミナルを hack するような話はあまりありません。!また、さとうようぞうが所属ないし関係する組織の公式な意見・見解を反映したものではありません。0 zsh !2012/03/26
  • 8. Agenda
  • 9. 誰得コマンド & オプション 35連発
  • 10. •  今から 1個/1min 未満で紹介•  一応 ~/.zhistory を漁って、使わな そうなものを中心に•  明日の仕事で役に立たない•  (70人居て30個紹介できれば、1個 くらいは・・・)•  それじゃあんまりなんで、役立ち そうなのも適当に混ぜた•  基本、全部 man に書いてある•  MacOS X Snow Leopard で動作確認
  • 11. 01: nlNAME nl -- line numbering filter•  行番号を表示してくれるだけです•  less –N でいいんじゃね?•  エディタで行番号分かるし
  • 12. 02: less -NNAME less - opposite of more•  -N オプションを付けると行番号を表示し てくれます
  • 13. 03: less; FNAME less - opposite of more•  less 実行中に F (Shift + f) を押 すと、 tail –f しているのと同じこと になります•  検索結果をハイライトしたまま動かせるの が便利
  • 14. 04: less; vNAME less - opposite of more•  less 実行中に v を押すと、環境変数 $EDITOR に設定されているエディタでド キュメントを開ける
  • 15. 05: dfNAME df -- display free disk space•  ディスクの残り容量を見るときに使う
  • 16. 06: df -hNAME df -- display free disk space•  デフォルト表示はちょっと見難い。•  -h (human readable)をつけるとメガ バイトやギガバイト単位で表示してくれる ので見やすい
  • 17. 07: df -lNAME df -- display free disk space•  ローカルにマウントされているディスクの みを表示•  S3とかを /mnt に置いている場合、そう いうのを除外してくれる
  • 18. 08: ps -wNAME ps -- process status•  ps aux → ps auxw とかすると、横幅 が132文字になる(長くなる)•  ps auxww とかすると、もっと長くなる
  • 19. 09: wget --random-waitNAME wget - The non-interactivenetwork downloader.•  -r オプションで全部取得する時など•  --waitで指定した秒数に 1 ~ 1.5 くら いの乱数を掛けてくれる•  待ち時間にばらつきを持たせられる
  • 20. 10: wget –-spiderNAME wget - The non-interactivenetwork downloader.•  ファイルを保存しない•  -S オプションと組み合わせることで、 ヘッダだけ確認したい時に使える
  • 21. 11: tcpflowNAME tcpflow - TCP flow recorder•  パケットモニタリングツール•  tcpdump よりこっちの方が便利•  Wireshark 使っちゃうので利用頻度低
  • 22. 12: cd -NAME cd - change the working directory•  cd – はこれをやるのと同じ –  cd "$OLDPWD" && pwd•  個人的にディレクトリ移動は(タブによる 補完を駆使して)一発でやるのが好き•  .zshrc で setopt auto_pushd しと けばもっと幸せになれる
  • 23. 13: ls -lhNAME ls - list directory contents•  キロバイト、メガバイト、ギガバイト 単 位で表示してくれる
  • 24. 14: ls -lTNAME ls - list directory contents•  詳細なタイムスタンプを表示•  秒、年などが出る
  • 25. 15: ls -ltNAME ls - list directory contents•  更新時間が新しいファイル順にソートして 表示
  • 26. 16: headNAME head -- diplay first lines of afile•  そのまま使う事はほとんどないはず•  他のコマンドから | で渡してもらうと便 利•  例: ls –lt | head –n 10
  • 27. 17: open -RNAME open -- open files anddirectories•  開かないで、Finder に表示するだけ•  ディレクトリを指定した場合は、内包する ディレクトリを Finder で表示
  • 28. 18: open -gNAME open -- open files anddirectories•  起動したアプリケーションをフォアグラウ ンドにしない•  作業をそのままシェルで続行できる
  • 29. 19: sed -iNAME sed -- stream editor•  ファイルの内容を直接いじれる•  バックアップをとっておけるので、拡張子 を指定すればいい
  • 30. 20: cp -pNAME cp -- copy files•  コピー時にファイルの属性を保持する•  証拠保全などの目的でファイルのコピーを 取る場合は cp で取るよりも cp -p で 取ったほうがいい
  • 31. 21: file -INAME file -- determine file type•  MIMEタイプを教えてくれる•  こんなオプションもある –  --mime-type –  --mime-encoding
  • 32. 22: tar -pNAME tar -- manipulate tape archives•  preserve file permissions•  展開時に元のパーミッションを保持する
  • 33. 23: tar -jNAME tar -- manipulate tape archives•  圧縮に bzip2 を使う
  • 34. 24: fc•  直前のコマンドを、環境変数 EDITOR で 指定したエディタで編集 & 実行できる•  ./configure –-with-emacs=.. --lisp-dir=.. みたいに複数行のを打ちなおすとき便利
  • 35. 25: zcatNAME gzip, gunzip, zcat - compress orexpand files•  gzip 圧縮されたファイルの中身を表示•  いちいち展開しなくても大丈夫
  • 36. 26: zgrepNAME zgrep - search possiblycompressed files for a regularexpression•  gzip 圧縮されたファイルを対象に grep 実行•  圧縮されたアクセスログとかを展開せずに grep できる
  • 37. 27: bzcatNAME bzcat - decompresses files tostdout•  bz2 圧縮されたファイルの中身を表示
  • 38. 28: bzgrepNAME bzgrep, bzfgrep, bzegrep - searchpossibly bzip2 compressed files for aregular expression•  bzip2 圧縮されたファイルを対象に grep 実行•  圧縮されたアクセスログとかを展開せずに grep できる
  • 39. 29: wcNAME wc -- word, line, character, andbyte count•  ファイルに含まれる単語数をカウント•  -l は標準出力に出たモノを数えるのに便 利 –  ps auxw | grep ‘hoge’ | wc -l
  • 40. 30: cal -yNAME cal, ncal -- displays a calendarand the date of easter•  指定した年のカレンダーを表示
  • 41. 31: chownNAME chown -- change file owner andgroup•  名前とグループは : 区切りで一括指定で きるよ•  . 区切りでも行けるよ
  • 42. 32: su -NAME su -- substitute user identity•  - を付けないと、自分の環境変数を引き ずる
  • 43. 33: gtagsNAME gtags - create tag files forglobal.•  ソースコードにタグをつけてくれる•  この「タグ」を使って emacs でコード ジャンプなどが可能に•  参照元検索、定義にジャンプなど
  • 44. 34: screen; :kanjiNAME screen - screen manager withVT100/ANSI terminal emulation•  当該スクリーンで表示する文字コードを変 更できる•  標準出力に EUC-JP なものが返ってきた 時など
  • 45. 35: nmapNAME nmap - Network exploration tooland security / port scanner•  ポートスキャナ
  • 46. 第3回もやります。多分。•  LLでWEB系をやっていると、ターミナル は避けて通れない•  LL系WEB開発 三種の神器 1.  Editor •  vim / emacs / Textmate / 秀丸 etc. 2.  Browser 1.  Chrome / Firefox / Safari / w3m etc. 3.  Terminal •  Terminal.app / iTerm / TeraTerm / DOS窓
  • 47. ネタは随時募集しています•  twitter で @yoozoosato 宛 につぶやいてみる•  twitter でハッシュタグ #devlove を付けて「こんな のやりたい/聞きたい」とリク エスト
  • 48. Thank you!