<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Terminal &#8211; Mach3.laBlog</title>
	<atom:link href="https://blog.mach3.jp/tag/terminal/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.mach3.jp</link>
	<description></description>
	<lastBuildDate>Wed, 13 Aug 2025 06:03:04 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>
	<item>
		<title>デザイナーの為の黒い画面入門（前）</title>
		<link>https://blog.mach3.jp/2017/12/15/kuroigamen.html</link>
		
		<dc:creator><![CDATA[mach3]]></dc:creator>
		<pubDate>Fri, 15 Dec 2017 04:00:37 +0000</pubDate>
				<category><![CDATA[Laboratory]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[Command]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Terminal]]></category>
		<category><![CDATA[Windows]]></category>
		<guid isPermaLink="false">http://blog.mach3.jp/?p=4379</guid>

					<description><![CDATA[Web制作の現場で「黒い画面」を使うことは、近年ではごく当たり前な事になってしまいました。 フロントエンドエンジニアの方はもちろん、マークアップエンジニアの方ならば抵抗は無いでしょう。 しかし、デザイナーさんには未だに「 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/ENwiBnvZJNeajEckqEMI7vL1oGLn8jCZo8b4CggIOMn-W_hMbpv8AwNcgBQtKRlXvos2pt3M6_KAjONWZ0zGBtFBV9qTdHOLRW43rJ5-AdSBoxEbfq4E57yfLZCvG93YriTEx9NipQ=w600-h315-no" alt=""/></figure>



<p></p>



<p>Web制作の現場で「黒い画面」を使うことは、近年ではごく当たり前な事になってしまいました。 フロントエンドエンジニアの方はもちろん、マークアップエンジニアの方ならば抵抗は無いでしょう。 しかし、デザイナーさんには未だに「黒い画面」は苦手意識がある方も少なくないのではないでしょうか。 その苦手意識を払拭する為に、少しばかり「黒い画面」への理解を深めてみましょう。</p>



<span id="more-4379"></span>



<ol class="wp-block-list">
<li>デザイナーが触れる「黒い画面」</li>



<li>「黒い画面」ことターミナルとは</li>



<li>「黒い画面」の基本</li>



<li>「黒い画面」の怖い話</li>



<li>Windows環境での「黒い画面」</li>
</ol>



<h2 class="wp-block-heading">デザイナーが触れる「黒い画面」</h2>



<p>そもそもデザイナーが「黒い画面」に触れる事は数年前まではあまり考えられていませんでした。 黒い画面上の作業はあくまでもバックエンドエンジニアやプログラマーの領域であって、デザイナーが触れるのはPhotoshopやIllustratorといったグラフィカルなアプリケーションまでに留まっていたと思います。</p>



<p>ところがWebの技術が度重なる変化・進化を遂げ、JavaScriptやCSSをビルドするようになったり、Node.jsが台頭してきたりで、プロジェクトの「黒い画面」への依存度が一気に上がってきました。 マークアップエンジニアは勿論のこと、肩書がデザイナーの人間も「黒い画面」を触れるようになる必要が出てきたのです。</p>



<p>例えば、こんなケースであったり</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>人手不足でデザインに加えてマークアップもやる事になった。 CSSをビルドする為に「黒い画面」が必要だ。</p>
</blockquote>



<p>また例えば、こんなケースもあるでしょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>プロジェクトにデザイナーとしてジョインしたが、 マークアップエンジニアが作った画面をレビューする為に「黒い画面」でコマンドを叩かなければならない。</p>
</blockquote>



<h2 class="wp-block-heading">「黒い画面」ことターミナルとは</h2>



<p>まず「黒い画面」とは何なのか。その正体について軽く触れてみます。</p>



<p>Macにおける黒い画面である「ターミナル」は、GUI（グラフィカルインターフェース）によらず、 CUI（キャラクタユーザーインターフェース）、つまり文字列のコマンドでコンピュータを直接操作する為の物であると理解しておけば良いでしょう。</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/t3M2x5B7re2YXricMJ3BMQHGJZrS2ytVZ52rM1iX0X5b4aaWmC1fSi7omPdMLpCbFzGBaEnCyLSjb2zFHeineH3x8Vw-liGb5enKgIdaDa1WeSh4BtohWwBAsWYo6Qd8zoLUtWAajg=w600-h400-no" alt=""/></figure>



<p></p>



<p>例えばMacでファイルを探し出すのにFinderを使用しますが、これはGUIによる機能ですね。 ターミナルでは、CUIで謎の呪文こと、コマンドを打ち込む事でそれとほぼおなじ事をすることが出来ます。 （勿論CUIなので見た目はただの文字列です） Finderをはじめとした、私達が普段パソコン上で使っているGUIアプリケーションは、ターミナルで行える処理を視覚的に見やすい形、そして操作しやすい形でラッピングされているのです。</p>



<p>ちなみに、MacOSXは元々Unix系のFreeBSD由来のOSで、 Unix系のコマンドの多くがそのまま使用できるのはその為です。 （Windowsについては後述しましょう）</p>



<h2 class="wp-block-heading">「黒い画面」の基本</h2>



<p>まずは黒い画面を立ち上げて触ってみましょう。 Mac環境ならば「アプリケーション」 &gt; 「ユーティリティ」 &gt; 「ターミナル」と辿っていけば立ち上がります。 あるいは Spotlight 検索で &#8220;term&#8221; あたりまで入力すれば出てくると思います。</p>



<p>ここまで「黒さ」を連呼していますが、Macでのデフォルトは白ベース黒文字の「白い画面」になっています。なんとなく、怖さが少し和らぎますね。</p>



<h3 class="wp-block-heading">コマンドを入力してみる</h3>



<p>黒い画面への入力については、キーボードで文字を入力するだけなので難しいことはないでしょう。 試しに一つコマンドを打ってみましょう。</p>


<pre class="wp-block-code"><span><code class="hljs">$ whoami</code></span></pre>

<p>[your user name]</p>



<p><code>whoami</code> コマンドは、現在ログインしているユーザーの名前を出力します。 貴方のユーザー名が表示されましたか？</p>



<h3 class="wp-block-heading">「何処」で「何」を対象に「何」するか</h3>



<p>コマンドを覚えていく前に、次の3つの事を意識するようにしてみましょう。</p>



<ol class="wp-block-list">
<li>現在どこのディレクトリにいるか</li>



<li>そこで何をするか</li>



<li>何を対象に行うか</li>
</ol>



<p>例えばこんなコマンドを打ったとします。</p>


<pre class="wp-block-code"><span><code class="hljs">$ mkdir myfolder
</code></span></pre>


<p>上の例では、現在いるディレクトリの中に <code>myfolder</code> という新しいディレクトリ（フォルダ）を作成しています。</p>



<p>もう少し詳しく見てみましょう。 コマンドはコンピューターへの命令であり、文法で言うところの述語です。 基本的に、コマンドは英語の文法に則っていて、述語であるコマンドの後には目的語を指定します。</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/wasceiJfvA922YoSep9ps2wNuPvzLT9jvD7F6Az4gFN-V3ThCQNONIkLd99IdcRlAt4pska0jbltPNoszBd18bf8PS61tsd_hFM1mb5I8aFmynxm7FMAo25WHkZFAbE5M7axwyDb3Q=w600-h400-no" alt=""/></figure>



<p></p>



<p>この目的語は「引数（ひきすう）」と呼ばれ、上の例では <code>myfolder</code> が引数に値します。 つまり、 <code>myfolder</code> という名前で、ディレクトリを作る命令（ <code>mkdir</code> ）を行ったわけです。</p>



<p>また、命令によっては目的語を持たない（あるいは省略できる）場合もあります。</p>


<pre class="wp-block-code"><span><code class="hljs language-php">$ <span class="hljs-comment"># ユーザー名を出力するだけなので引数が必要ありません</span>
$ whoami
$ <span class="hljs-comment"># 引数を省略すると、ユーザーのホームディレクトリに移動します</span>
$ cd
</code></span></pre>


<p>さらにまた、目的語を二つとる命令もあります。</p>


<pre class="wp-block-code"><span><code class="hljs language-php">$ <span class="hljs-comment"># 目的語1（foo.txt）を、目的語2（bar.txt）として複製する</span>
$ cp foo.txt bar.txt
</code></span></pre>


<h3 class="wp-block-heading">ファイルやディレクトリを引数にする</h3>



<p>先程言ったように、コマンドには目的語である引数を渡す事が多いのですが、 その引数となるのはファイル名やディレクトリ名がほとんどです。</p>


<pre class="wp-block-code"><span><code class="hljs">$ rm ./needless.txt
</code></span></pre>


<p>上の例では、今いるディレクトリにある &#8220;needless.txt&#8221; という名前のファイルを削除しています。 ファイル名の前についている &#8220;./&#8221; は一体なんでしょうか？ これは「今いるディレクトリにあるファイル」という事を明示的に指定しています。</p>



<p>Unixのファイルシステムでは、ファイルの場所（パス）について次のような表現を用います。</p>



<ul class="wp-block-list">
<li>&#8220;.&#8221; &#8230; 現在のディレクトリ</li>



<li>&#8220;..&#8221; &#8230; 一つ上のディレクトリ</li>



<li>&#8220;/&#8221; &#8230; ディレクトリの境目</li>



<li>一番頭が &#8220;/&#8221; &#8230; ルートディレクトリからの絶対パス</li>
</ul>



<p>つまり上の例では、「現在いるディレクトリ下にあるneedless.txt」を指定しているわけです。</p>



<p>ここで「&#8221;./&#8221;は要らないのではないか」という疑問が浮かんだのではないでしょうか。 その通り、&#8221;./&#8221; は省略でき、次のように表現しても同じ処理を行います。</p>


<pre class="wp-block-code"><span><code class="hljs">$ rm needless.txt
</code></span></pre>


<p>省略できるのならば、なぜ例示でわざわざ &#8220;./&#8221; を付けたのかというと、その方が安心出来るからです。 <strong>ファイルを指定する時は、&#8221;./&#8221; や &#8220;../&#8221; からはじまる相対パスで表現する事をお勧めしたいです。</strong></p>



<p>特に、上で例に挙げている <code>rm</code> コマンドはファイルやディレクトリを削除してしまう<strong>破壊的</strong>なコマンドです。 必ず &#8220;./&#8221; ではじめる事を意識すれば、現在いるディレクトリを誤ったり、朦朧としながら作業をしていて操作ミスをしたりして、<strong>処理してはいけないファイルを処理してしまう</strong>危険性をわずかばかりではありますが、和らげる事ができます。</p>


<pre class="wp-block-code"><span><code class="hljs language-php">$ rm /the/path/to/target <span class="hljs-comment"># NG</span>
$ rm target <span class="hljs-comment"># NG</span>
$ rm ./target <span class="hljs-comment"># Good</span>
</code></span></pre>


<h3 class="wp-block-heading">「どのように」行うか（オプション）</h3>



<p>多くのコマンドは、「オプション」を渡すことで挙動をコントロールする事ができます。 ここでは <code>ls</code> コマンドを例に上げてみます。このコマンドは、ディレクトリ内にあるファイルをリスト表示してくれます。</p>


<pre class="wp-block-code"><span><code class="hljs">$ ls
bar.txt         directory       foo.html
</code></span></pre>


<p>何もオプションを渡さない場合、ただファイルの名前のみが羅列されます。 ファイル名だけだと情報が足りないので、<code>l</code> オプションを追加してみましょう。</p>


<pre class="wp-block-code"><span><code class="hljs">$ ls -l
total 16
-rw-r--r--@ 1 mach3  staff  212 12 12 16:03 bar.txt
drwxr-xr-x@ 2 mach3  staff   68 12 12 16:02 directory
-rw-r--r--@ 1 mach3  staff  248 12 12 16:03 foo.html
</code></span></pre>


<p>色々な情報が詰まったフォーマットで出力されました。 さらにドット（&#8221;.&#8221;）からはじまる隠しファイルも表示する為に、くわえて <code>a</code> オプションを指定してみます。</p>


<pre class="wp-block-code"><span><code class="hljs">$ ls -la
total 16
drwxr-xr-x@ 6 mach3  staff  204 12 12 16:19 .
drwxr-xr-x@ 8 mach3  staff  272 12 12 16:01 ..
-rw-r--r--@ 1 mach3  staff    0 12 12 16:19 .hidden
-rw-r--r--@ 1 mach3  staff  212 12 12 16:03 bar.txt
drwxr-xr-x@ 2 mach3  staff   68 12 12 16:02 directory
-rw-r--r--@ 1 mach3  staff  248 12 12 16:03 foo.html
</code></span></pre>


<p>またさらに、<code>t</code> オプションを追加して更新時間順にソートしてみましょう。 （デフォルトでは名前順です）</p>


<pre class="wp-block-code"><span><code class="hljs">$ ls -lat
total 16
drwxr-xr-x@ 6 mach3  staff  204 12 12 16:19 .
-rw-r--r--@ 1 mach3  staff    0 12 12 16:19 .hidden
-rw-r--r--@ 1 mach3  staff  248 12 12 16:03 foo.html
-rw-r--r--@ 1 mach3  staff  212 12 12 16:03 bar.txt
drwxr-xr-x@ 2 mach3  staff   68 12 12 16:02 directory
drwxr-xr-x@ 8 mach3  staff  272 12 12 16:01 ..
</code></span></pre>


<p>オプションを指定するルールがお分かりいただけたでしょうか。 オプションは主に1文字の英数字や短い言葉で指定し、 ダッシュ（&#8221;-&#8220;）の後ろに続けて打ち込む事で複数のオプションを合わせて利用する事ができます。 （このルールに則らないコマンドも存在するのでご注意ください）</p>



<p>各々のコマンドは、それぞれのオプションを持っています。 とても全てを覚えきれる物ではないので、その説明は次回に持ち越す事にします。</p>



<h2 class="wp-block-heading">「黒い画面」の怖い話</h2>



<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/txCfbYC-cAQIYd9z7Tw8xXo-vhALKquiYtaJeHsN9l7b8OPIB3SHrrD2XuDqjJmjYgy3ZZUpUSmkyvzvpYg8HGdZ_w1Vpxbg_4L6A7mkkUuKu5UiSby0hdadnT0GUAIeIseWpNLC7A=w600-h400-no" alt=""/></figure>



<p></p>



<p>「黒い画面は怖くない」と言いたいところですが、残念な事に「黒い画面」は怖いのです。</p>



<p>GUIのアプリケーションで警告が発せられるような処理でも、「黒い画面」は警告を発してくれません。 GUIのアプリケーションなら行わないような危険な処理も、「黒い画面」は実行してしまいます。 良く知らないままにコマンドを実行して、環境を壊してしまうなんていう悲劇も往々にしてあり得る事です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>うまく動かないからネットで検索したコマンドコピペして実行したら、パソコンが起動しなくなった</p>
</blockquote>



<p>ジョークみたいな話ですが、実際に私の観測圏内で起こった出来事です。</p>



<p><strong>ネットで拾ったコマンドを調べずに実行しては絶対にいけません。</strong> コマンドがどのような処理を行う物なのか、渡している引数は何なのか、どのようなオプションで実行されているか、コピーしたコマンドはつまるところどういう命令なのか、 それらを調べて理解したうえで実行しましょう。 そして、インターネットは怖いところだという事を肝に銘じておきましょう。</p>



<h2 class="wp-block-heading">Windows環境における「黒い画面」</h2>



<p>Windowsにおける「黒い画面」は「コマンドプロンプト」と呼ばれる物ですが、これはおすすめできません。 WindowsはUnix由来でない為、Macで使えるような基本的なコマンドも使用できず、そもそもコマンド自体が非常に少なく、使い勝手がよくないのです。 「他と違う」という事は、つまり問題が起きた時に調べても解決策にたどり着きにくいという事です。</p>



<p>いくつか代替の手段があるので、そちらを使うようにした方が良いでしょう。</p>



<h3 class="wp-block-heading">1. Git Bash</h3>



<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/u9aXb_ZU7VmIGnpLgcfA-AIzV8TxNwTvuKGy6h6SXii5wSs8CXZc72179YudoHGVe7a9XufZU4lRZrYzzJClRlt6XlAKBjyOd1Mbqk9GClm2FWbKWeku4NnQqt7u-YF4qWtVwz1k_Q=w600-h400-no" alt=""/></figure>



<p></p>



<p>Windows環境で開発作業を行うのならば <a href="https://git-for-windows.github.io/">Git for windows</a> は恐らくインストールされているはずなので、 これにバンドルされている「Git Bash」を活用します。 インストールされてない場合は、インストールしましょう。Gitはもはや開発環境に無くてはならない存在です。</p>



<p>Git Bash は <strong>msys</strong> と呼ばれるエミュレータで動いており、いささかLinuxやMacとは使い勝手が違いますが、基本的なコマンドは使用する事ができます。 （msysは、昔なつかしのcygwinからのフォークです）</p>



<p>Git Bashのメリットは、Windowsにおける実行ファイル（.exe）が容易に呼び出せる点です。 ショートカット（.lnk）もちゃんと追随してくれるので、「好きな名前で好きなアプリを立ち上げる」なんていう設定も簡単にできます。（ここでは説明は割愛します）</p>


<pre class="wp-block-code"><span><code class="hljs language-php">$ <span class="hljs-comment"># 現在いるディレクトリでエクスプローラーが立ち上がります</span>
$ explorer .
</code></span></pre>


<h3 class="wp-block-heading">2. Bash on Windows</h3>



<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/ci-gV4Us80WAwwRw3PgIrG7nK0D6OV69ubJazbRmKRIYKjMCTS2x3R63tBoXL3i0OOtlPw6_0Wi1ckRQcIp4mX0PX2DNq_mTF63fRawHeS30GHJvhJQVgbip5sS1AVBv-2TrwGdfKQ=w600-h400-no" alt=""/></figure>



<p></p>



<p>Windows10ならば、Windows上でUbuntuが動作します。 Windows Subsystem for Linux（WSL）と呼ばれる仕組みで、まさにLinuxがWindows上で動作していると思って良いでしょう。</p>



<p>中身はUbuntuなので、<code>apt</code> で楽々パッケージを追加インストールできるのが大きな魅力で、 参考になる情報もネットで収集しやすいです。</p>



<ul class="wp-block-list">
<li><a href="https://qiita.com/Aruneko/items/c79810b0b015bebf30bb">Bash on Ubuntu on Windowsをインストールしてみよう！ &#8211; Qiita</a></li>
</ul>



<h2 class="wp-block-heading">前編まとめ</h2>



<ul class="wp-block-list">
<li>デザイナーも「黒い画面」が必要な時代になった</li>



<li>「黒い画面」の基本的な使い方を学ぶ</li>



<li>「黒い画面」は怖いので用法を守って正しく使う</li>



<li>インターネットの情報は鵜呑みにしてはいけない</li>



<li>Windowsでの「黒い画面」は Git Bash または Bash on Windows を活用しよう</li>
</ul>



<p>後編では最低限覚えておくと捗るコマンドと使い方を書くかもしれません。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
