Macのターミナル(Terminal.app)では、半角スペース文字はコマンドやオプションの「区切り文字」と認識する為、ディレクトリ名やファイル名に半角スペースが入っている場合、そのまま入力してもうまく動作しません。
(Macに限ったことではありませんが。)
例として、以下のコマンドをターミナルで入力してみます。
指定ディレクトリに移動するコマンドですが、「Data SSD」に半角文字が入っている為、「そんなディレクトリやファイルは無いよ!」とメッセージが表示されます。
因みに、ボリュームもディレクトリも確かに存在します。
cd /Volumes/Data SSD/Users/tamoc //エラー表示される -bash: cd: /Volumes/Data: No such file or directory
今回はそんな時の解決方法2つ紹介します。
解決方法1:クォテーションで囲む
対象のディレクトリ名やファイル名をクォテーションで囲むことにより、ディレクトリやファイル名内のスペース文字が認識されます。
シングルクォテーション「’」、ダブルクォテーション「”」どちらでもOKです。
//ダブルクォートをパス全体で囲みます。 cd "/Volumes/Data SSD/Users/tamoc" //スペースが入っている部分だけでもOK。 cd /Volumes/"Data SSD"/Users/tamoc //シングルクォートでもOK。 cd '/Volumes/Data SSD/Users/tamoc'
解決方法2:半角スペース文字をエスケープする
cd /Volumes/Data\ SSD/Users/tamoc
ポイントは、半角スペース文字をバックスラッシュでエスケープしている所です。
バックスラッシュ「\」は、日本語キーボードの場合、 option ⌥ + ¥で入力します。
また、ターミナルには、自動的にエスケープしてくれる機能があります。
やり方は、クリップボード内にパスをコピーしてから、
ターミナルのメニューから「編集」→「テキストをエスケープしてペースト」を選択します。
以下のショートカットキーでもOKです。
control ⌃ +command ⌘ + V
パス名に多くのスペース文字や特殊文字が入っている場合には非常に便利な機能です。
Finderからパス名を取得する方法
因みに、Finderからパス名を取得する方法です。
- Finderでパス名を取得したいフォルダ内へ移動する。
- ウィンドウ下のパスバー内のフォルダを右クリックする。
- 「”○○○”のパス名をコピー」を選択する。
これでクリップボード上にパス名がコピーされます。
コメント