プログラミング Tips

ITエンジニアの雑記ブログ。
IT関連ニュースの考察や、プログラミングに関するTipsの備忘録として…
育児や日常の雑記帳としても、記事を投稿していきます。

プログラミングと日常生活に関する情報を発信しています。

カテゴリ:コマンド > ターミナル操作

コマンド操作系の一覧


前回に続いて、ターミナル操作コマンドを説明する。

Windows, MacのCUIコマンドを比較しながら習得を目指す。

今回は、Macだけが対応しているコマンドに特化する。
  1. コマンドに別名をつける
  2. 引数を変えながら複数回実行
  3. コマンド格納先を調べる
  4. 音声の出力
  5. 花文字の表示
  6. カレンダーの表示
  7. スケジュールの表示
  8. 電卓の実行
  9. 画像データの加工
  10. コマンド検索
  11. コマンド実行時間の計測


コマンドに別名をつける

Windows :非該当
Mac :"alias [別名] ='コマンド' "

"alias"コマンドを用いて、別名(=エイリアス)を付与できる。

オプションや引数を含めて別名を付与できるため、

オリジナルコマンドが生成できる。

補足:別名の削除

"unalias [別名]"を実行する


引数を変えながら、コマンドを複数回実行

Windows :非該当
Mac :"apply [-引数の数] [コマンド] 引数セット1 引数セット2..."

一つのコマンドに対して、複数の引数セットを繰り返し適応できる。

引数の数が一つの場合、指定を省略可能。


コマンド格納先を調べる

Windows :非該当
Mac :"type [コマンド名]"

Macのコマンドは、組み込みのものと実行ファイルで提供されているものがある。

それぞれのコマンドの保存場所を調べるコマンドが"type"である。

組み込みコマンドの場合、「[コマンド名] is a shell builtin」と表示される。

類似コマンドに"which"コマンドがあるが、この場合、組み込みコマンドに対して

何も表示されない。


音声の出力

Windows :非該当
Mac :"say [文字列]"

指定した文字列を読み上げる。

基本的に英語だが、Mac OS X 10.7以降では日本語も対応。

英語モードでもローマ字表記すれば日本語で読み上げが可能。

尚、声の選択肢は"システム環境設定 > テキストの読み上げ"の

[システムの声]を見るとわかる。


花文字の表示

Windows :非該当
Mac :"banner [文字列]"

「#」を並べた拡大表示(=花文字)を表示。

指定可能文字は、大文字・小文字のアルファベット、一部の記号が使用可能。

但し、「<」「>」「[」「]」「¥」「^」「_」「{」「}」「|」「~」は使用不可。


カレンダーの表示

Windows :非該当
Mac :"cal [[月] 年]"

年月を指定するとその月のカレンダーが表示される。

オプションや引数を付与せずに実行すると、今月のカレンダーが表示される。


スケジュールの表示

Windows :非該当
Mac :"calendar"

事前に"~/.calendar"ディレクトリに"calendar"ファイルの準備が必要。

スケジュールは、「日 月 内容」の順に記述し、「日」「月」の間は半角スペース、

「月」「内容」の間は[tab]を入れる。

尚、あらかじめ用意されているカレンダーファイルを"#include [ファイル名]"で

インポートして表示することも可能。

  • 有名人の誕生日 :calendar.birthday
  • コンピュータ関連の記念日 :calendar.computer
  • 歴史上の出来事 :calendar.history
  • USの休日 :calendar.usholiday
これらファイルは、[/usr/share/calendar]ディレクトリに格納されている。


電卓の実行

Windows :非該当
Mac :"bc [ファイル名]"

対話形式で計算を行い、"quit"で終了。

数式を指定すると計算結果が表示される。入力順に計算を行う電卓とは異なり、

通常の数式と同じように「*」や「/」が「+」や「-」より優先され、「( )」を

つけると優先順位が上がる。

オプションなしで起動すると計算結果の小数点以下は切り捨て。

小数点の計算を行いたい場合は、"-l"オプションをつける。

またファイルを指定することで、そのファイルに書かれた式を実行する。

"bc"コマンドは、"echo"で出力した式を計算するフィルタとしても使える。



画像データの加工

Windows :非該当
Mac :"sips [返還前ファイル名] --out [返還後ファイル名]"

様々な機能を持った画像加工コマンド。

各オプションによって、画像形式の変換、上下左右の反転、

回転、リサイズを行う。各オプションは以下に列記。
  • "-s format" :画像形式 指定した画像形式に変換
  • "-f horizontal" :左右に反転
  • "-f vertical" :上下に反転
  • "-r [角度]" :指定した角度分、時計回りに回転
  • "-z x y" :縦xピクセル、横yピクセルにリサイズ


コマンド検索

Windows :非該当
Mac :"apropos [キーワード]"

[キーワード]に関連したコマンドを検索する。実際には"whatis"DB内を検索する。

"whatis"DBは、オンラインマニュアルからコマンドなどの概要部分を

ピックアップしたもの。


コマンドの実行時間を計測

Windows :非該当
Mac :"time [コマンド]"

表示結果の上から順に、
  • real :実際にかかった時間
  • user :コマンドのプログラムが消費した時間
  • sys :システムが消費した時間
ちなみに以前のWindowsには、"timeit"コマンドが用意されていたが、

XP, Server 2003にインストールした場合のみ使用できるコマンドである。

現在、PowerShellの"Measure-Command"で実行時間が計測できる。


コマンド操作系の一覧


これまでのディレクトリ・ファイル操作に続いて、

Windows, MacのCUIコマンドを比較しながら習得を目指す。

今回は、下記のターミナル操作コマンドを説明する。
  1. ターミナルの終了
  2. 画面表示のクリア
  3. 1画面ずつの表示
  4. ファイルの印刷
  5. クリップボードへのコピー
  6. コマンド履歴の表示
  7. 複数コマンドの実行
  8. ファイルを開く


ターミナルの終了

Windows :"exit"
Mac :"exit"

ターミナル終了コマンドは、Windows, Macいずれも"exit"コマンド。

しかし意味合いが異なる。

Windowsの場合、コマンドプロンプトのプログラムが終了、

且つウィンドウが閉じる。

一方Macの場合、実際にログアウトを行う。


画面表示のクリア

Windows :"cls"
Mac :"clear"

様々な表示画面がごちゃごちゃになった場合、

画面表示を一旦クリアできる。


1画面ずつ表示

Windows :"more [ファイル名]"
Mac :"less [ファイル名]"

長いテキストファイルなどを、"type"コマンド(Windows), "cat"コマンド(Mac)で

表示すると、表示が流れてしまい、確認しづらい。

そのような時に"more", "less"コマンドで1画面ずつ止めながら表示することができる。

「スペース」キーを押すと次の画面が表示され、「q」キーで終了する。

ちなみにMacの"less"コマンドは、"more"コマンドの改良型であるため、

「b」キーで前画面に戻ることもできる。


"more"や"less"コマンドは他のコマンドの結果を1画面ずつ表示する

フィルタとしても使用することがきる。

画面出力を行うコマンドの後に"|"を付け、その後に"more"/"less"を実行する。


ファイルの印刷

Windows :"lpr -S [プリントサーバー名 or IPアドレス] -P raw [ファイル名]"
Mac :"lpr [ファイル名]"

Windows7以降の場合、"lpr"コマンドを明示的にインストール(*)する必要がある。

(*[コントロールパネル > プログラムと機能 > Windowsの機能の有効化または無効化 > 印刷とドキュメントサービス]の"LPR ポート モニター"にチェックを入れる)

Windowsの場合は、ネットワークプリンタの使用が前提。

Macの場合は、CUPS(Common Unix Printing System)を使用する。


クリップボードへコピー

Windows :"[コマンド] | clip" or "clip < [ファイル名]"
Mac :"[コマンド] | pbcopy" or "pbcopy < [ファイル名]"

コマンドの出力やテキストファイルの内容をクリップボードにコピーする。

Windowsはクリップボードの内容をコマンドプロンプト内へ

ペーストするコマンドはない。

一方、Macの場合はペースト用のコマンド"pbpaste"がある。

補足:"pbpaste"コマンド

"pbpaste | [コマンド]" or "pbpaste > [ファイル名]"

Windows7以降の場合、"lpr"コマンドを明示的にインストール(*)する必要がある。

(*[コントロールパネル > プログラムと機能 > Windowsの機能の有効化または無効化 > 印刷とドキュメントサービス]の"LPR ポート モニター"にチェックを入れる)

Windowsの場合は、ネットワークプリンタの使用が前提。

Macの場合は、CUPS(Common Unix Printing System)を使用する。


コマンド履歴の表示

Windows :F7キー
Mac :"history [表示数]"

Windowsの場合、F7キーを押すと履歴一覧が表示される。

Macの場合、”history”コマンドを用いる。表示数をオプションで指定しないと

すべて表示されるので、適当な数をしていることが推奨される。

尚、Windows, Macいずれもターミナル上で、↑や↓の矢印キーで

履歴を一つずつ表示することも可能である。



複数コマンドの実行

Windows :"コマンド & コマンド  & コマンド..." or "( ... )" 
Mac :"history [表示数]"

複数コマンドを実行するには、Windowsの場合"&"、

Macの場合";"でコマンドをつないでいく。

Windowsの場合、実行コマンドを対話的に指定することもできる。

コマンドプロンプトで"("を入力すると、「More?」と表示されるため、

コマンドを順次入力していく。完了したら、")"を入力すると、

実行される。


ファイルを開く

Windows :"[ファイル名]" 
Mac :"open [ファイル名]"

Windowsの場合、ファイル名を指定すると、関連付けられたアプリで開く。

Macの場合、"open"コマンドを使用する。


↑このページのトップヘ

-->