GNU/Linux >> Linux の 問題 >  >> Linux

Linuxでスペースを使用してファイル名に取り組む方法

Linuxのファイルには通常、名前が含まれていないことに気付くでしょう。教師または同僚は、ファイル名とディレクトリ名のスペースの代わりにアンダースコアを使用します。

Linux端末ではファイル名にスペースを使用できないわけではありません。それはそれが追加の痛みを生み出すというだけであり、それがあなたが可能な限りそれを避けるべきである理由です。

なんで?例を挙げてそれを示しましょう。 Linuxコマンドの一般的な構文を知っています:

command [options] argument1 argument2

ここでは、引数はスペースで区切られています。スペースを含むファイル名を直接使用しようとすると、1つの引数ではなく、個別の引数として扱われます。

上のスクリーンショットで、cat agatha booksを使おうとすると コマンド、それはそのagatha booksを理解していません は単一の引数です。 agathaを扱います およびbooks 別のファイル名として。

では、ファイル名のスペースをどのように処理しますか? 2つの方法があります:

ファイル名全体を引用符で囲みます:

"file name withn spaces"

バックスラッシュキーを使用してすべてのスペースをエスケープします:

file\ name\ with\ spaces

詳細をお見せします。

タブ補完は、多くの場合、スペースでも機能します。ファイル名のTabキーを押すと、端末にバックスラッシュでスペースを省略したファイル名が表示される場合があります。 ファイル名にスペースを含むファイルを読み取ります

スペースを含むファイル名を使用するには、次のように引用符で囲みます。

cat "file name with spaces"

バックスラッシュを使用してすべてのスペースをエスケープすることもできますが、以前の方法よりも作業が多く、混乱を招きます。

cat file\ name\ with\ spaces

基本的に、\を配置します ファイル名のすべてのスペースの前。

二重引用符の代わりに一重引用符を使用することもできます。

cat 'file name with spaces'
一重引用符は特殊文字を無視します。二重引用符は、$、逆引用符、およびbaclslashesを除くすべてを無視します。詳細については、他のチュートリアルをご覧ください。 ファイル名にスペースを含むファイルを作成します

ここでファイル名を作成するには、ターミナルにスペースを入力する必要があります。もう一度円記号または引用符を使用してください。

前のセクションと同様に、引用符を使用してファイル名にスペースを含む新しいファイルを作成できます。

touch "file name with spaces"

またはバックスラッシュも:

touch file\ name\ with\ spaces
フォルダ名のスペースを処理する

ファイルを作成するのと同じ方法で、名前にスペースを含むディレクトリを作成できます。

mkdir "new dir"

これで、このディレクトリに切り替えたい場合は、スペースを含むパスがあります。

しかし、それはもうあなたにとって問題ではないはずです。スペースのあるディレクトリにCDを挿入するには、引用符または円記号をもう一度使用します。

cd "new dir"
cd new\ dir

基本的に、名前のスペースを処理する必要がある場合は常に、引用符または円記号を使用します。

ファイルをコピーする必要があるとしますmy file このnew dirから 。できることは次のとおりです。

cp new\ dir/my\ file

今、少し混乱し始めていますよね?バックスラッシュとフォワードスラッシュがあります。それらのスラッシュが多すぎると、新しいユーザーや熟練したユーザーを威嚇する可能性があります。

ファイル名に円記号が含まれていると、さらに厄介になります。次に、二重のバックスプラッシュが表示されます。

これが、ファイル名にスペースやその他の特殊文字を使用しないようにする必要がある理由です。ファイル名の単語を区切るには、アンダースコアを使用します。

touch a_very_long_file_name_with_too_many_words

これにより、ファイル名が読みやすくなり、ファイル名内のこれらのスペースを処理するために余分な労力を費やす必要がなくなります。


Linux
  1. Linuxでスペースと特殊文字を含むファイル名を操作する方法

  2. Linuxでファイルの名前を変更するにはどうすればよいですか?

  3. Linuxで特定のサイズのファイルを作成するには?

  1. LinuxでCでファイルを書く方法は?

  2. Linuxでjar内のファイルをコマンドラインに置き換える方法は?

  3. Linux でこの名前のファイルを削除する方法:-]???????q

  1. LinuxでSSHを使用してパーソナルファイルサーバーを作成する方法

  2. Linux +スペースのあるファイルを無視(フィルター)する方法は?

  3. Linux でファイル圧縮を使用して ZFS ファイルシステムを作成する方法