<?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>エスケープシーケンス | D-Box</title>
	<atom:link href="https://do-zan.com/tag/escape-sequence/feed/" rel="self" type="application/rss+xml" />
	<link>https://do-zan.com</link>
	<description>自分自身が学び、経験になった知識を残していくブログです。主にMac・iPhone・Microsoft系の内容が多いです。 出来るだけわかりやすい記事をモットーにしています。</description>
	<lastBuildDate>Sun, 13 May 2018 05:40:56 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.1</generator>
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/><atom:link rel="hub" href="https://websubhub.com/hub"/>	<item>
		<title>Macターミナルのプロンプト変更方法</title>
		<link>https://do-zan.com/mac-terminal-change-prompting/</link>
					<comments>https://do-zan.com/mac-terminal-change-prompting/#respond</comments>
		
		<dc:creator><![CDATA[D-Box]]></dc:creator>
		<pubDate>Thu, 26 May 2016 00:59:20 +0000</pubDate>
				<category><![CDATA[Mac]]></category>
		<category><![CDATA[ターミナル]]></category>
		<category><![CDATA[エスケープシーケンス]]></category>
		<category><![CDATA[プロンプト]]></category>
		<guid isPermaLink="false">http://do-zan.com/?p=1075</guid>

					<description><![CDATA[<p>ターミナルにログインすると下のように「D-Box-no-iMac:~ D-Box$」というようにプロンプトが表示され、指示を待つ状態になります。 デフォルトだと、ホスト名：現在の作業ディレクトリ：ユーザー名が表示されます…</p>
The post <a href="https://do-zan.com/mac-terminal-change-prompting/">Macターミナルのプロンプト変更方法</a> first appeared on <a href="https://do-zan.com">D-Box</a>.]]></description>
										<content:encoded><![CDATA[<p>ターミナルにログインすると下のように「D-Box-no-iMac:~ D-Box$」というようにプロンプトが表示され、指示を待つ状態になります。</p>
<p><a href="https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897.png" data-rel="lightbox-image-0" data-rl_title="Macターミナルプロンプト表示" data-rl_caption=""><img fetchpriority="high" decoding="async" class="aligncenter wp-image-1090 size--size12" title="Macターミナルプロンプト表示" src="https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-600x373.png" alt="Macターミナルプロンプト表示" width="600" height="373" srcset="https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-600x373.png 600w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-768x477.png 768w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-120x75.png 120w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-200x124.png 200w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-300x186.png 300w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-400x248.png 400w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-150x93.png 150w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-644x400.png 644w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-265x165.png 265w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-435x270.png 435w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-233x144.png 233w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-274x170.png 274w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-260x162.png 260w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897-850x528.png 850w, https://do-zan.com/wp-content/uploads/2016/05/3bd282f0074772b64c3c148ce333e897.png 1130w" sizes="(max-width: 600px) 100vw, 600px" /></a></p>
<p>デフォルトだと、ホスト名：現在の作業ディレクトリ：ユーザー名が表示されます。<br />
ローカルでターミナルを使用する際は、毎回ユーザー名を確認する必要はないですね。<br />
今回はより見やすいようにプロンプトの表示を変更する方法を説明します。</p>
<h2>プロンプト設定確認</h2>
<p>ターミナルログイン時に表示され、一番多く目にするコマンド待ちの状態のプロンプトは「PS1」と呼ばれています。<br />
この設定を確認するコマンドは「echo」または「set」コマンドで行えます。<br />
デフォルトでは以下のように表示されます。</p>
<pre class="line-numbers"><code class="language-bash">echo $PS1
\h:\W \u\$</code></pre>
<p>「set」コマンドで確認するとこのように設定が確認できます。（一部省略）</p>
<pre class="line-numbers" data-line="4"><code class="language-bash">set
・・・
PROMPT_COMMAND=update_terminal_cwd
PS1='\h:\W \u\$ '
PS2='&gt; '
PS4='+ '
・・・</code></pre>
<p>PS1以外に他の数字が割り当てられたPSがあるのが確認できます。<br />
それぞれのPSの役割はこのようになっています。</p>
<div id="height50">
<table>
<thead>
<tr>
<th>PS種類</th>
<th>役割</th>
</tr>
</thead>
<tbody>
<tr>
<td>PS1</td>
<td>ターミナルログイン時のコマンド待ちの状態のプロンプト</td>
</tr>
<tr>
<td>PS2</td>
<td>入力を要求するコマンドや、コマンド入力時に複数行になる場合に表示されるプロンプト</td>
</tr>
<tr>
<td>PS3</td>
<td>selectコマンドで選択を求める場合のプロンプト<br /> デフォルトでは未設定ですが「#?」と表示</td>
</tr>
<tr>
<td>PS4</td>
<td>シェルスクリプトで「-x」オプションを付けたスクリプトを実行した時に表示</td>
</tr>
</tbody>
</table>
</div>
<p>基本的にはPS1以外は変更しなくても良いかと思います。</p>

<h2>エスケープシーケンス</h2>
<p>プロンプトの設定を確認し、表示された記号「\h:\W \u\$」の説明をします。<br /> このような記号はエスケープシーケンスと呼ばれます。<br /> 記号のそれぞれの役割は以下のようになります。</p>
<div id="height50">
<table>
<thead>
<tr>
<th>文字列</th>
<th>意味</th>
</tr>
</thead>
<tbody>
<tr>
<td>\a</td>
<td>ASCIIのベル文字(07)(ビープ音を鳴らす)</td>
</tr>
<tr>
<td>\d</td>
<td>「曜日 月 日」で日付表示 例"水 5 25"</td>
</tr>
<tr>
<td>\e</td>
<td>ASCIIのエスケープ文字(033)</td>
</tr>
<tr>
<td>\h</td>
<td>最初のピリオド記号"."までのホスト名</td>
</tr>
<tr>
<td>\H</td>
<td>完全なホスト名</td>
</tr>
<tr>
<td>\l</td>
<td>TTY名</td>
</tr>
<tr>
<td>\n</td>
<td>改行</td>
</tr>
<tr>
<td>\r</td>
<td>復帰</td>
</tr>
<tr>
<td>\s</td>
<td>シェルの名前</td>
</tr>
<tr>
<td>\t</td>
<td>24時間での現在時刻を表示 例"23:02:15"</td>
</tr>
<tr>
<td>\T</td>
<td>12時間での現在時刻を表示 例"11:02:15"</td>
</tr>
<tr>
<td>\@</td>
<td>"am/pm"での現在時刻を表示 例"11:02 PM"</td>
</tr>
<tr>
<td>\A</td>
<td>24時間での現在時刻を秒単位抜きで表示 例"23:02"</td>
</tr>
<tr>
<td>\u</td>
<td>ユーザー名</td>
</tr>
<tr>
<td>\v</td>
<td>bashのバージョン</td>
</tr>
<tr>
<td>\V</td>
<td>bashのリリース番号、バージョンとパッチレベル</td>
</tr>
<tr>
<td>\w</td>
<td>パスも含めた現在のディレクトリ名</td>
</tr>
<tr>
<td>\W</td>
<td>パスを含めない現在のディレクトリ名</td>
</tr>
<tr>
<td>\!</td>
<td>コマンド履歴の番号</td>
</tr>
<tr>
<td>\#</td>
<td>コマンド番号(ログイン後の回数)</td>
</tr>
<tr>
<td>\$</td>
<td>UIDが0(スーパーユーザー)なら"#"表示、以外は"$"表示</td>
</tr>
<tr>
<td>\nnn</td>
<td>8進数nnnに対応する文字</td>
</tr>
<tr>
<td>\\</td>
<td>バックスラッシュ</td>
</tr>
<tr>
<td>\[</td>
<td>表示されない文字列(エスケープシーケンス/端末制御シーケンス)の開始</td>
</tr>
<tr>
<td>\]</td>
<td>表示されない文字列の終了</td>
</tr>
</tbody>
</table>
</div>
<p>このようにたくさんの文字列があります。<br />
英語ですが<code class="language-bash">man</code>コマンドを使って<code class="language-bash">man bash</code>で詳細確認ができます。<br />
上記のエスケープシーケンス以外にも好きな文字を表示できるので間に◉などの記号を表示させてわかりやすくすることも可能です。</p>

<h3>色の変更</h3>
<p>色のエスケープシーケンスで色の変更が行えます。<br />
色を分けることでよりプロンプトの位置やわかりやすさが上がるかと思います。<br />
色のエスケープシーケンスは\[\033[色文字列m\]と\[033[0m\]で囲みます。<br />
色の定義は以下のようになります。</p>
<div id="height50">
<table>
<thead>
<tr>
<th>色</th>
<th>文字</th>
<th>背景</th>
</tr>
</thead>
<tbody>
<tr>
<td>黒(Black)</td>
<td>30</td>
<td>40</td>
</tr>
<tr>
<td>赤(Red)</td>
<td>31</td>
<td>41</td>
</tr>
<tr>
<td>緑(Green)</td>
<td>32</td>
<td>42</td>
</tr>
<tr>
<td>黄(Yellow)</td>
<td>33</td>
<td>43</td>
</tr>
<tr>
<td>青(Blue)</td>
<td>34</td>
<td>44</td>
</tr>
<tr>
<td>紫(Purple)</td>
<td>35</td>
<td>45</td>
</tr>
<tr>
<td>水(Cyan)</td>
<td>36</td>
<td>46</td>
</tr>
<tr>
<td>白(White)</td>
<td>37</td>
<td>47</td>
</tr>
</tbody>
</table>
</div>

<h3>文字スタイル</h3>
<p>上の色コードに文字スタイルコードを加えると文字の装飾が行えます。<br /> 文字スタイルコードは以下のようになります。</p>
<div id="height50">
<table>
<thead>
<tr>
<th>文字スタイル</th>
<th>コード</th>
</tr>
</thead>
<tbody>
<tr>
<td>太字</td>
<td>1</td>
</tr>
<tr>
<td>細字</td>
<td>2</td>
</tr>
<tr>
<td>下線</td>
<td>4</td>
</tr>
<tr>
<td>点滅</td>
<td>5</td>
</tr>
<tr>
<td>文字色と背景色逆転</td>
<td>7</td>
</tr>
<tr>
<td>文字非表示</td>
<td>8</td>
</tr>
<tr>
<td>全設定クリア</td>
<td>0</td>
</tr>
</tbody>
</table>
</div>

<h2>まとめ</h2>
<p>これらのエスケープシーケンスを使ってプロンプトの変更を行います。<br />
例として、白色の背景に水色(下線)でコマンド履歴番号、緑色の背景に赤色(下線なし)でパスも含めたディレクトリ名、青色の背景に黄色(下線)で$マークを表示するようにするには下のようになります。</p>
<pre><code class="language-bash">export PS1="\[\033[1;4;47;36m\]\! \[\033[0;1;42;31m\]\w \[\033[4;1;44;33m\]\$ \[\033[0m\]"</code></pre>
<p>するとこのように表示されます。</p>
<p><img decoding="async" class="aligncenter wp-image-1091 size-full" title="Macターミナルプロンプト表示変更後" src="https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa.png" alt="Macターミナルプロンプト表示変更後" width="400" height="65" srcset="https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa.png 400w, https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa-120x20.png 120w, https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa-200x33.png 200w, https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa-300x49.png 300w, https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa-150x24.png 150w, https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa-265x43.png 265w, https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa-233x38.png 233w, https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa-370x60.png 370w, https://do-zan.com/wp-content/uploads/2016/05/547e7249de7fb153942aa9de2dea8dfa-260x42.png 260w" sizes="(max-width: 400px) 100vw, 400px" /></p>
<p>しかしこのままでは毎回ログインする度に設定が戻ってしまいます。<br />
エイリアスの設定をしておくと次回ログイン時にも変更が反映されます。<br />
設定については下記の記事で説明していますのでよければ御覧ください。</p>
<div class="sc_getpost clearfix"><a class="clearfix" href="https://do-zan.com/mac-terminal-alias/"><div><div class="sc_getpost_thumb"><img decoding="async" width="500" height="500" src="https://do-zan.com/wp-content/uploads/2016/03/alias.png" class="attachment-medium size-medium wp-post-image" alt="aliasアイキャッチ" srcset="https://do-zan.com/wp-content/uploads/2016/03/alias.png 500w, https://do-zan.com/wp-content/uploads/2016/03/alias-150x150.png 150w, https://do-zan.com/wp-content/uploads/2016/03/alias-120x120.png 120w, https://do-zan.com/wp-content/uploads/2016/03/alias-200x200.png 200w, https://do-zan.com/wp-content/uploads/2016/03/alias-300x300.png 300w, https://do-zan.com/wp-content/uploads/2016/03/alias-400x400.png 400w, https://do-zan.com/wp-content/uploads/2016/03/alias-197x197.png 197w, https://do-zan.com/wp-content/uploads/2016/03/alias-270x270.png 270w, https://do-zan.com/wp-content/uploads/2016/03/alias-144x144.png 144w, https://do-zan.com/wp-content/uploads/2016/03/alias-170x170.png 170w" sizes="(max-width: 500px) 100vw, 500px" /></div><div class="title"><span class="badge " style="background:#fda19c;color:#fff;">関連記事</span>Macターミナルでエイリアスを設定する方法</div><div class="more">続きを読む...</div><div class="substr">ターミナルを使っている時、よく使うコマンドに対していつも同じオプションを入力するのが手間と感じている方も多いのではないでしょうか？ 今回は、よく使用するコマンドのオプションを毎回入力しなくてもいいようにエイリアスの設定方法を説明します。 ターミナルの作業になるのでよくわからない場合は下の記事が参考と...</div></div></a></div>
<p>以上がプロンプトの変更方法になります。</p>The post <a href="https://do-zan.com/mac-terminal-change-prompting/">Macターミナルのプロンプト変更方法</a> first appeared on <a href="https://do-zan.com">D-Box</a>.]]></content:encoded>
					
					<wfw:commentRss>https://do-zan.com/mac-terminal-change-prompting/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
