Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 1/54
その 1 rev. 3
武山 文信
日本 openSUSE ユーザ会
CC BY-SA 4.0
p. 18 の引用した画像を除く
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 2/54
今日の内容
● openSUSE について簡単に紹介
● コマンドラインツールテクニック 1〜12
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 3/54
みなさん
って何かご存知ですか?
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 4/54
正しいのはどれ?
● 1. サーバールームでモフモフできるカメレオン型ガジェット
● 2. Ruby で簡単に Web アプリを作れるフレームワーク...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 5/54
正解
● 3. 昨年20周年だったドイツ生まれの
Linux ディストリビューション
– S.u.S.E Linux 4.2 で独自のディストリビュ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 6/54
デスクトップはこんな感じ
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 7/54
YaST でかんたん設定
SSH からもアクセスできる TUI 版→
●
ソフトウェアのインストール
ハードディスクとファイルシステムの設定
●
ネ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 8/54
インドネシア ジョグジャカルタ特別州の小中学校のPCに
openSUSE を採用
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 9/54
2つの openSUSE
Tumbleweed
常に最新 安定
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 10/54
openSUSE Tumbleweed
● ローリング・リリース
– 週に3回程度新しいバージョンがリリース
● 常に最新バージョンのカーネルやア...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 11/54
openSUSE Leap
● SUSE Linux Enterprise ベースの安定志向
ディストリビューション
– 年に1回のマイナーアップ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 12/54
現在のバージョン openSUSE Leap 42.2
● SUSE Linux Enterprise 12 SP2 がベース
– Kernel ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 13/54
最近のトピック
● openSUSE Leap 42.3 は早め(7月)にリリース予定
– SUSE Linux Enterprise SP3 ベ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 14/54
今さら聞けない
コマンドラインツールテクニック
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 15/54
昨今のイケイケな ICT 業界
圧倒的な圧倒的な MacMac 率!率!
私も学生のとき使っていました私も学生のとき使っていました
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 16/54
だって
● bash, zsh, …
● grep, find, diff, patch, sed, ...
● Python, Ruby, .....
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 17/54
Windows あるある
● MinGW (GCC) + MSYS をインストールして
● Python をインストールして
● Ruby をイン...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 18/54
Microsoft も動いた!
http://japanese.engadget.com/2016/03/30/windows-10-bash-u...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 19/54
システムに 5 つくらい Bash が
入っていたりしますよね?
.bashrc が全然同期されていなかったり…
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 20/54
Linux ならコマンドツールがすぐに使えます!
Cygwin とか Homebrew とか Mac Ports とかは不要!
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 21/54
今日ちょっと伝えたいこと
Linux デスクトップを開発環境に使うと便利!
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 22/54
コマンドラインツールテクニック
● もっと効率よく作業できるのに
– コマンドラインツールを使いこなせていない人を見ていて
● 新しいツール・変わ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 23/54
今日のコマンドラインツールテクニック
1. よいターミナルアプリケーションを使う
2. 圧縮された tar を展開する
3. カーソルの移動はショ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 24/54
1. よいターミナルアプリケーションを使う
コマンドプロンプトはダメ
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 25/54
1. よいターミナルアプリケーションを使う
● コマンドを入力するアプリケーション
– Konsole, GNOME Terminal, ...
...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 26/54
2. 圧縮された tar を展開する
意外と知られていない、最近のオプション
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 27/54
2. 圧縮された tar を展開する
$ tar xvf hoge.tar.xz
$ tar xvf fuga.tar.gz
● 昔は圧縮アルゴリ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 28/54
3. カーソルの移動と削除はショートカットを!
矢印キーを連打していませんか?
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 29/54
3. カーソルの移動と削除はショートカットを
● カーソル移動系: ホームポジションから指が動かない!
– Ctrl + P ↑ previous...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 30/54
4. 入力補完と履歴を使う
毎回コマンドを最初から最後まで入力していませんか?
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 31/54
4. 入力補完と履歴を使う 1/3
● 入力補完
– ファイル名やコマンド名を途中まで入力して Tab キーで
続き補完してくれる
$ lv pe...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 32/54
4. 入力補完と履歴を使う 2/3
● 直近のコマンドを繰り返し入力
– 1つ前のコマンドなら ↑ か Ctrl + P
– 2つ前のコマンドなら...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 33/54
4. 入力補完と履歴を使う 3/3
● 履歴から検索
– Ctrl + R を押すと検索をする欄が出てくる
– 過去に打ったコマンドの一部を入力
...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 34/54
5. 関連付けられたアプリケーションで開く
GUI アプリを使いたい
やっぱり GUI でも操作したい
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 35/54
5. 関連付けられたアプリケーションで開く
● カレントディレクトリをファイルブラウザで開きたい
– 選択してファイルを動かしたいとき…など
● ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 36/54
6. 色付きコマンドの活用
コマンドの出力結果を見やすく
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 37/54
6. 色付きコマンドの活用 1/3
● $ ls --color
– フォルダ名やシンボリックリンクに色がつき、区別しやすい
– -F オプション...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 38/54
6. 色付きコマンドの活用 2/3
● $ grep --color
– マッチした部分に色がつく
$ grep --color intel /v...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 39/54
6. 色付きコマンドの活用 3/3
● $ colordiff
– 削除された部分が「赤」、追加された部分が「青」になる
– -u: + 記号と ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 40/54
7. Human readable
ちょうどよい単位系で大きさを表示
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 41/54
7. Human readable
● ちょうどよい単位 (KB, MB, ...) で容量を表示してくれる
human readable (-h...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 42/54
おまけ
● 毎回 -F とか -h とか --color とかめんどくさい
● ls と打ったときに ls -Fh --color と入力したこと...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 43/54
8. ホームディレクトリに戻る
さっと戻るには?
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 44/54
8. ホームディレクトリに戻る
● パラメータを指定しない
● 他の方法(長い)
$ cd
$ cd ~
$ cd $HOME
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 45/54
9. 直前にいたディレクトリに戻る
間違えて cd してしまったときは?
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 46/54
9. 直前にいたディレクトリに戻る
$ cd -
~/Documents/Projects/myapp$ pwd
/home/geeko/Docu...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 47/54
10. {,} でファイル名の繰り返し入力を防ぐ
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 48/54
10. {,}でファイル名の繰り返し入力を防ぐ
● ファイル名の最後に「.back」をつけてリネーム、コピーしたい
● 「XXX{左側,右側}YY...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 49/54
11. tree 系コマンドの活用
親子関係を手っ取り早く見る
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 50/54
● ディレクトリ構造: tree
11. tree 系コマンドの活用
● プロセスの親子関係: pstree
$ tree /etc/X11
/e...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 51/54
12. 環境変数を設定して実行する
~/.bashrc で設定しなくてもよい
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 52/54
12. 環境変数を設定して実行する
● どんなときでも ~/.bashrc などに書きがち
– 解説記事などにそう書いてあるから
– 今後、ずっと...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 53/54
次回予告
● PATH ってなんでしたっけ?
● 大量の画像をまとめて変換
● パイプとリダイレクト
● 出力を切り取る
● chmod +
● ...
2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 54/54
Geeko Magazine Sp 2016 冬
● コミックマーケットC91で頒布
● 内容
– 今さら聞けない
コマンドラインツールテクニック...
Upcoming SlideShare
Loading in …5
×

今さら聞けない! Linux コマンドラインツールテクニック その1 rev. 3

2,109 views

Published on

※本セミナーは OSC 2016 Tokyo/Fall と 2017 Osaka と同内容です

Linux ベースの OS 上には、様々なコマンドラインツールがそろっています。
bash や zsh をはじめとする強力なシェルインタプリタはもちろん、
今となっては開発者には必須の Git や、Python、Ruby といったスクリプト
言語が標準搭載されています。

今や Windows 上で bash が動くようになることが騒がれるような時代です。

一方でこれまでずっと GUI 環境で生きてきた人の中には、基本的なコマンド
を知っていても、なかなか手早くシェルを操作できない(コマンドを打てない)
という方もいるのではないでしょうか?

本セミナーでは、誰が教えてくれるわけでもない、コマンドラインツールの
テクニックを紹介します。

コマンドライン初心者を脱して中級者を目指しませんか?

内容の例:
- 手早くシェルを操作するテクニック
- 端末アプリケーションとLinux デスクトップとの合わせ技
- 昔はなかった便利なコマンド

※最新の openSUSE Leap 42.2 についても紹介します。

Published in: Technology
  • Be the first to comment

今さら聞けない! Linux コマンドラインツールテクニック その1 rev. 3

  1. 1. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 1/54 その 1 rev. 3 武山 文信 日本 openSUSE ユーザ会 CC BY-SA 4.0 p. 18 の引用した画像を除く
  2. 2. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 2/54 今日の内容 ● openSUSE について簡単に紹介 ● コマンドラインツールテクニック 1〜12
  3. 3. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 3/54 みなさん って何かご存知ですか?
  4. 4. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 4/54 正しいのはどれ? ● 1. サーバールームでモフモフできるカメレオン型ガジェット ● 2. Ruby で簡単に Web アプリを作れるフレームワーク ● 3. 昨年20周年だったドイツ生まれの Linux ディストリビューション
  5. 5. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 5/54 正解 ● 3. 昨年20周年だったドイツ生まれの Linux ディストリビューション – S.u.S.E Linux 4.2 で独自のディストリビューションになってから ● Q: RedHat 系ですか? Debian 系ですか? A: どちらでもありません! ● Q: OpenSUSE ですか?openSUSE ですか? A: o は小文字です。IPhone ではなく、iPhone なのと同じです
  6. 6. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 6/54 デスクトップはこんな感じ
  7. 7. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 7/54 YaST でかんたん設定 SSH からもアクセスできる TUI 版→ ● ソフトウェアのインストール ハードディスクとファイルシステムの設定 ● ネットワークの設定 ● Samba サーバーの設定 ● ユーザの追加… 詳しくは OSC Kansai/Kyoto 2015の資料を参照: http://www.slideshare.net/ftake/ok-yastlinux
  8. 8. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 8/54 インドネシア ジョグジャカルタ特別州の小中学校のPCに openSUSE を採用
  9. 9. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 9/54 2つの openSUSE Tumbleweed 常に最新 安定
  10. 10. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 10/54 openSUSE Tumbleweed ● ローリング・リリース – 週に3回程度新しいバージョンがリリース ● 常に最新バージョンのカーネルやアプリケーション、 ライブラリを使いたい人向け – アプリケーション開発時に、新しいコンパイラやライブラリでも 動くかをいち早く確認できる
  11. 11. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 11/54 openSUSE Leap ● SUSE Linux Enterprise ベースの安定志向 ディストリビューション – 年に1回のマイナーアップデート(サービスパック) – 3年に1度程度のメジャーアップデート ● エンタープライズ版に openSUSE 独自のパッケージを追加 – デスクトップ環境: Plasma 5, GNOME 3, XFCE, MATE, LXQt, etc. – 合計: 約 9000 パッケージ ● 有償サポートが不要なサービス運用や、 常用のデスクトップ環境に最適 CentOS + Fedora のような感じ
  12. 12. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 12/54 現在のバージョン openSUSE Leap 42.2 ● SUSE Linux Enterprise 12 SP2 がベース – Kernel 4.4 ● サポートするデスクトップ環境 – KDE Plasma 5.8 LTS – GNOME 3.20 – Cinnamon 3.07 (42.2で追加) – XFCE, LXQt など ● 42.1 からの半年間のアップデート期間 – マイナーアップデートのため、短め ● ARM 版 – Raspberry Pi 3 などをサポート
  13. 13. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 13/54 最近のトピック ● openSUSE Leap 42.3 は早め(7月)にリリース予定 – SUSE Linux Enterprise SP3 ベース ● 開発環境としての openSUSE – コンパイラや開発ツールを充実させる – Go, Rust, Haskell, … ● openSUSE.Asia Summit 2017 の日本開催に向けて – openSUSE を中心としたアジア地域の OSS コミュニティが 一堂に会するイベント
  14. 14. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 14/54 今さら聞けない コマンドラインツールテクニック
  15. 15. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 15/54 昨今のイケイケな ICT 業界 圧倒的な圧倒的な MacMac 率!率! 私も学生のとき使っていました私も学生のとき使っていました
  16. 16. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 16/54 だって ● bash, zsh, … ● grep, find, diff, patch, sed, ... ● Python, Ruby, ... ● Git, Subversion, … 今では必須のコマンドラインツールたち!
  17. 17. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 17/54 Windows あるある ● MinGW (GCC) + MSYS をインストールして ● Python をインストールして ● Ruby をインストールして ● Git for Windows (+ Git Bash) をインストールして ● Tortoise SVN をインストールして ● やっぱり Cygwin もインストールして ● MSYS2 もインストールして ● Haskell Stack もインストールして ● … Bash Bash Bash Bash Bash
  18. 18. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 18/54 Microsoft も動いた! http://japanese.engadget.com/2016/03/30/windows-10-bash-ubuntu-linux/ openSUSE も動く!
  19. 19. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 19/54 システムに 5 つくらい Bash が 入っていたりしますよね? .bashrc が全然同期されていなかったり…
  20. 20. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 20/54 Linux ならコマンドツールがすぐに使えます! Cygwin とか Homebrew とか Mac Ports とかは不要!
  21. 21. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 21/54 今日ちょっと伝えたいこと Linux デスクトップを開発環境に使うと便利!
  22. 22. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 22/54 コマンドラインツールテクニック ● もっと効率よく作業できるのに – コマンドラインツールを使いこなせていない人を見ていて ● 新しいツール・変わってしまったツール ● もっと良い方法がある!という場合は教えてください – 資料の作成過程でいろいろと教えてもらいました 40分のセミナーで収めるには…
  23. 23. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 23/54 今日のコマンドラインツールテクニック 1. よいターミナルアプリケーションを使う 2. 圧縮された tar を展開する 3. カーソルの移動はショートカットを 4. 入力補完と履歴を使う 5. 関連付けられたアプリケーションで開く 6. 色付きコマンド 7. Human readable! 8. ホームディレクトリに戻る 9. 前にいたディレクトリに戻る 10.{,} でファイル名の繰り返し入力を防ぐ 11.tree 系コマンド 12.環境変数を指定して実行
  24. 24. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 24/54 1. よいターミナルアプリケーションを使う コマンドプロンプトはダメ
  25. 25. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 25/54 1. よいターミナルアプリケーションを使う ● コマンドを入力するアプリケーション – Konsole, GNOME Terminal, ... ● ショートカットによるコピー&ペースト – Ctrl+Shift+C – Ctrl+Shift+V ● 画面のタブ分割 Windows の人は mintty や、 よい SSH クライアントを使ってください ウェブページのサンプルも 簡単コピペ!
  26. 26. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 26/54 2. 圧縮された tar を展開する 意外と知られていない、最近のオプション
  27. 27. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 27/54 2. 圧縮された tar を展開する $ tar xvf hoge.tar.xz $ tar xvf fuga.tar.gz ● 昔は圧縮アルゴリズムを指定する z や j が必要だった – では xz のときは? ● 今の GNU tar は、圧縮アルゴリズムの指定不要! – x: extract – v: verbose (展開中にメッセージがたくさん出る) – f: この後ろにファイル名 イマドキ xz! と言っても10年くらい前から
  28. 28. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 28/54 3. カーソルの移動と削除はショートカットを! 矢印キーを連打していませんか?
  29. 29. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 29/54 3. カーソルの移動と削除はショートカットを ● カーソル移動系: ホームポジションから指が動かない! – Ctrl + P ↑ previous – Ctrl + N ↓ next – Ctrl + F → forward – Ctrl + B ← backward – Ctrl + A Home (行の先頭へ移動) – Ctrl + E End (行の最後へ移動) ● 削除系 – Ctrl + H Backspace – Ctrl + D Delete – Ctrl + K カーソルから右側を切り取り – Ctrl + U カーソルから左側を切り取り ※設定で Caps Lock キーを Ctrl にすると使いやすい パスワードを打ち間違えた ときに便利
  30. 30. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 30/54 4. 入力補完と履歴を使う 毎回コマンドを最初から最後まで入力していませんか?
  31. 31. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 31/54 4. 入力補完と履歴を使う 1/3 ● 入力補完 – ファイル名やコマンド名を途中まで入力して Tab キーで 続き補完してくれる $ lv pen $ lv pen-pineapple-apple-pen.txt Tab キー 日本語のテキストファイルを見るコマンド
  32. 32. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 32/54 4. 入力補完と履歴を使う 2/3 ● 直近のコマンドを繰り返し入力 – 1つ前のコマンドなら ↑ か Ctrl + P – 2つ前のコマンドならもう1回 ↑か Ctrl + P ● コマンドの一部修正はカーソル移動ショートカットと合わせ技 $ chmod 700 directory1 testd2 folder3 $ $ chmod 700 directory1 testd2 folder3 $ chmod 700 directory1 testd2 folder3 $ chmod -R 700 directory1 testd2 folder3 -R 忘れた Ctrl + P Ctrl + A
  33. 33. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 33/54 4. 入力補完と履歴を使う 3/3 ● 履歴から検索 – Ctrl + R を押すと検索をする欄が出てくる – 過去に打ったコマンドの一部を入力 ● さらに Ctrl + R でマッチするものでさらに1つ古いものを表示 – Ctrl + S で行き過ぎたときに戻る ● 事前に stty コマンドでXON を無効にする必要あり $ bundle exec rake db:seed bck-i-search: seed_ $ bck-i-search: _ $ stty -ixon
  34. 34. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 34/54 5. 関連付けられたアプリケーションで開く GUI アプリを使いたい やっぱり GUI でも操作したい
  35. 35. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 35/54 5. 関連付けられたアプリケーションで開く ● カレントディレクトリをファイルブラウザで開きたい – 選択してファイルを動かしたいとき…など ● 関連付けられたアプリケーション でファイルを開く $ xdg-open . $ xdg-open geeko.jpg フォルダ名
  36. 36. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 36/54 6. 色付きコマンドの活用 コマンドの出力結果を見やすく
  37. 37. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 37/54 6. 色付きコマンドの活用 1/3 ● $ ls --color – フォルダ名やシンボリックリンクに色がつき、区別しやすい – -F オプションもおすすめ ● ディレクトリ名の後に / ● シンボリックリンク名の後に @ $ ls -f --color /etc ConsoleKit/ gssapi_mech.conf pki/ DIR_COLORS gtk-2.0/ plymouth/ HOSTNAME@ gtk-3.0/ polkit-1/ HOSTNAME.rpmsave host.conf polkit-default-privs.local …
  38. 38. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 38/54 6. 色付きコマンドの活用 2/3 ● $ grep --color – マッチした部分に色がつく $ grep --color intel /var/log/Xorg.0.log [ 48102.004] (II) LoadModule: "intel" [ 48102.004] (II) Loading /usr/lib64/xorg/modules/drivers/intel_drv.so [ 48102.014] (II) Module intel: vendor="X.Org Foundation"
  39. 39. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 39/54 6. 色付きコマンドの活用 3/3 ● $ colordiff – 削除された部分が「赤」、追加された部分が「青」になる – -u: + 記号と – 記号で追加と削除を表現する universal フォーマット --- scribus-1.4.4.mod/scribus/pageitem_textframe.cpp 2014-12-06 02:13:59.599941139 +0900 +++ scribus-1.4.4.mod/scribus/pageitem_textframe.cpp.mod 2014-12-08 22:56:23.540099486 +0900 @@ -846,7 +847,7 @@ } static int checkCJKBreakAfter(QChar ch) { - unsigned int code[] = {0x201C, 0xFF08, 0xFF3B, 0xFF5B, 0xFF5F, 0xFF62, 0xFF0D, 0}; + unsigned int code[] = {0x201C, 0x300C, 0xFF08, 0xFF3B, 0xFF5B, 0xFF5F, 0xFF62, 0xFF0D, 0}; for (int i = 0; code[i]; ++i) if (code[i] == ch.unicode()) Return 0; $ colordiff -u 変更前のファイル 変更後のファイル
  40. 40. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 40/54 7. Human readable ちょうどよい単位系で大きさを表示
  41. 41. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 41/54 7. Human readable ● ちょうどよい単位 (KB, MB, ...) で容量を表示してくれる human readable (-h) オプションを持つコマンドがある – ls, df, du など $ ls -lh 合計 602M -rw-r--r-- 1 geeko users 602M 10月 26 23:54 jumanpp-1.01.tar.xz -rw-r--r-- 1 geeko users 2.1K 10月 24 23:09 vlc.ymp $ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 … 中略 … tmpfs 933M 0 933M 0% /sys/fs/cgroup /dev/sda2 61G 8.4G 52G 15% /
  42. 42. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 42/54 おまけ ● 毎回 -F とか -h とか --color とかめんどくさい ● ls と打ったときに ls -Fh --color と入力したことにする – .bashrc に次の内容を記述 alias ls='ls -Fh --color'
  43. 43. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 43/54 8. ホームディレクトリに戻る さっと戻るには?
  44. 44. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 44/54 8. ホームディレクトリに戻る ● パラメータを指定しない ● 他の方法(長い) $ cd $ cd ~ $ cd $HOME
  45. 45. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 45/54 9. 直前にいたディレクトリに戻る 間違えて cd してしまったときは?
  46. 46. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 46/54 9. 直前にいたディレクトリに戻る $ cd - ~/Documents/Projects/myapp$ pwd /home/geeko/Documents/Projects/myapp/ ~/Documents/Projects/myapp$ cd ~/$ cd - ~/Documents/Projects/myapp$ 間違えてホームに戻ってしまった でも大丈夫
  47. 47. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 47/54 10. {,} でファイル名の繰り返し入力を防ぐ
  48. 48. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 48/54 10. {,}でファイル名の繰り返し入力を防ぐ ● ファイル名の最後に「.back」をつけてリネーム、コピーしたい ● 「XXX{左側,右側}YYY」は「XXX左側YYY XXX右側YYY」に 置換される $ cp pen-pineapple-apple-pen.txt pen-pineapple-apple-pen.txt.back $ cp pen-pineapple-apple-pen.txt{,.back} $ cp pen-pineapple-apple-pen.txt pen-pineapple-apple-pen.txt.back Before After $ cp pen-pineapple-apple-pen{,-back}.txt $ cp pen-pineapple-apple-pen.txt{.back,} 拡張子の前 .backから戻す
  49. 49. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 49/54 11. tree 系コマンドの活用 親子関係を手っ取り早く見る
  50. 50. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 50/54 ● ディレクトリ構造: tree 11. tree 系コマンドの活用 ● プロセスの親子関係: pstree $ tree /etc/X11 /etc/X11 ├── Xmodmap ├── Xmodmap.remote ├── Xresources ├── xdm │   ├── GiveDevices │   ├── Keyboard.map │   ├── README.SUSE │   ├── README.security │   ├── RunChooser │   ├── SUSEconfig.xdm $ pstree systemd─┬─ModemManager─┬─{gdbus} │ └─{gmain} ├─NetworkManager─┬─dhclient │ ├─{gdbus} │ └─{gmain} ├─agetty ├─at-spi-bus-laun─┬─dbus-daemon │ ├─{dconf worker} │ ├─{gdbus} │ └─{gmain} ├─at-spi2-registr─┬─{gdbus} │ └─{gmain} ├─auditd───{auditd} ├─avahi-daemon ├─bluetoothd ├─cron ├─cupsd ps axf でも同じようなことが可能
  51. 51. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 51/54 12. 環境変数を設定して実行する ~/.bashrc で設定しなくてもよい
  52. 52. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 52/54 12. 環境変数を設定して実行する ● どんなときでも ~/.bashrc などに書きがち – 解説記事などにそう書いてあるから – 今後、ずっと設定したままにするなら OK ● 一時的に環境変数を設定して実行することも可能 – 変数名=値 コマンド 引数 $ HTTP_PROXY=http://proxy.example.com:8080 wget http://…/….tar.xz $ LC_MESSAGES=C gcc xxx.c
  53. 53. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 53/54 次回予告 ● PATH ってなんでしたっけ? ● 大量の画像をまとめて変換 ● パイプとリダイレクト ● 出力を切り取る ● chmod + ● fb, bg, Ctrl + Z ● SSH のデフォルトオプション ● コマンド置換
  54. 54. 2017/03/10Linux コマンドラインツールテクニック その1 rev. 3 54/54 Geeko Magazine Sp 2016 冬 ● コミックマーケットC91で頒布 ● 内容 – 今さら聞けない コマンドラインツールテクニック – Ambiguous Character Width問題 – openSUSE Leap 42.2 と SoftEther VPN で作る VPN 環境 – SiLK を使った巨大パケット解析 ● ブースで販売中 New!

×