Publicité
Publicité

Contenu connexe

Publicité

Dernier(20)

Publicité

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

  1. DevLOVE ターミナル勉強会 26 Mar. 2012 さとうようぞう Twitter: @yoozoosato
  2. 謝辞 会場をご提供いただきました、日本オラクル様。 どうもありがとうございます。 お集まり頂きましたみなさま、ありがとうございます。 企画・運営に関わっていただいたDevLOVEの皆様。 いつも感謝しています。
  3. #hashtag •  今日の勉強会のハッシュタグ #devlove0326 #devlove
  4. 自己紹介
  5. devlove% echo $NAME devlove% SATO Yozo devlove% echo $TWITTER_ID devlove% @yoozoosato devlove% echo $MAIL devlove% yoozoosato@gmail.com 0 zsh ! 2012/03/26
  6. devlove% echo $JOB devlove% 某ISP 0 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: nl NAME nl -- line numbering filter •  行番号を表示してくれるだけです •  less –N でいいんじゃね? •  エディタで行番号分かるし
  12. 02: less -N NAME less - opposite of more •  -N オプションを付けると行番号を表示し てくれます
  13. 03: less; F NAME less - opposite of more •  less 実行中に F (Shift + f) を押 すと、 tail –f しているのと同じこと になります •  検索結果をハイライトしたまま動かせるの が便利
  14. 04: less; v NAME less - opposite of more •  less 実行中に v を押すと、環境変数 $EDITOR に設定されているエディタでド キュメントを開ける
  15. 05: df NAME df -- display free disk space •  ディスクの残り容量を見るときに使う
  16. 06: df -h NAME df -- display free disk space •  デフォルト表示はちょっと見難い。 •  -h (human readable)をつけるとメガ バイトやギガバイト単位で表示してくれる ので見やすい
  17. 07: df -l NAME df -- display free disk space •  ローカルにマウントされているディスクの みを表示 •  S3とかを /mnt に置いている場合、そう いうのを除外してくれる
  18. 08: ps -w NAME ps -- process status •  ps aux → ps auxw とかすると、横幅 が132文字になる(長くなる) •  ps auxww とかすると、もっと長くなる
  19. 09: wget --random-wait NAME wget - The non-interactive network downloader. •  -r オプションで全部取得する時など •  --waitで指定した秒数に 1 ~ 1.5 くら いの乱数を掛けてくれる •  待ち時間にばらつきを持たせられる
  20. 10: wget –-spider NAME wget - The non-interactive network downloader. •  ファイルを保存しない •  -S オプションと組み合わせることで、 ヘッダだけ確認したい時に使える
  21. 11: tcpflow NAME 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 -lh NAME ls - list directory contents •  キロバイト、メガバイト、ギガバイト 単 位で表示してくれる
  24. 14: ls -lT NAME ls - list directory contents •  詳細なタイムスタンプを表示 •  秒、年などが出る
  25. 15: ls -lt NAME ls - list directory contents •  更新時間が新しいファイル順にソートして 表示
  26. 16: head NAME head -- diplay first lines of a file •  そのまま使う事はほとんどないはず •  他のコマンドから | で渡してもらうと便 利 •  例: ls –lt | head –n 10
  27. 17: open -R NAME open -- open files and directories •  開かないで、Finder に表示するだけ •  ディレクトリを指定した場合は、内包する ディレクトリを Finder で表示
  28. 18: open -g NAME open -- open files and directories •  起動したアプリケーションをフォアグラウ ンドにしない •  作業をそのままシェルで続行できる
  29. 19: sed -i NAME sed -- stream editor •  ファイルの内容を直接いじれる •  バックアップをとっておけるので、拡張子 を指定すればいい
  30. 20: cp -p NAME cp -- copy files •  コピー時にファイルの属性を保持する •  証拠保全などの目的でファイルのコピーを 取る場合は cp で取るよりも cp -p で 取ったほうがいい
  31. 21: file -I NAME file -- determine file type •  MIMEタイプを教えてくれる •  こんなオプションもある –  --mime-type –  --mime-encoding
  32. 22: tar -p NAME tar -- manipulate tape archives •  preserve file permissions •  展開時に元のパーミッションを保持する
  33. 23: tar -j NAME tar -- manipulate tape archives •  圧縮に bzip2 を使う
  34. 24: fc •  直前のコマンドを、環境変数 EDITOR で 指定したエディタで編集 & 実行できる •  ./configure –-with-emacs=.. --lisp-dir=.. みたいに複数行のを打ちなおすとき便利
  35. 25: zcat NAME gzip, gunzip, zcat - compress or expand files •  gzip 圧縮されたファイルの中身を表示 •  いちいち展開しなくても大丈夫
  36. 26: zgrep NAME zgrep - search possibly compressed files for a regular expression •  gzip 圧縮されたファイルを対象に grep 実行 •  圧縮されたアクセスログとかを展開せずに grep できる
  37. 27: bzcat NAME bzcat - decompresses files to stdout •  bz2 圧縮されたファイルの中身を表示
  38. 28: bzgrep NAME bzgrep, bzfgrep, bzegrep - search possibly bzip2 compressed files for a regular expression •  bzip2 圧縮されたファイルを対象に grep 実行 •  圧縮されたアクセスログとかを展開せずに grep できる
  39. 29: wc NAME wc -- word, line, character, and byte count •  ファイルに含まれる単語数をカウント •  -l は標準出力に出たモノを数えるのに便 利 –  ps auxw | grep ‘hoge’ | wc -l
  40. 30: cal -y NAME cal, ncal -- displays a calendar and the date of easter •  指定した年のカレンダーを表示
  41. 31: chown NAME chown -- change file owner and group •  名前とグループは : 区切りで一括指定で きるよ •  . 区切りでも行けるよ
  42. 32: su - NAME su -- substitute user identity •  - を付けないと、自分の環境変数を引き ずる
  43. 33: gtags NAME gtags - create tag files for global. •  ソースコードにタグをつけてくれる •  この「タグ」を使って emacs でコード ジャンプなどが可能に •  参照元検索、定義にジャンプなど
  44. 34: screen; :kanji NAME screen - screen manager with VT100/ANSI terminal emulation •  当該スクリーンで表示する文字コードを変 更できる •  標準出力に EUC-JP なものが返ってきた 時など
  45. 35: nmap NAME nmap - Network exploration tool and 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!
Publicité