移動コマンドの使用に問題があります。 Catという2つのディレクトリを作成しました およびDog 。 Catの下 puppiesというファイルを作成しました 。
子犬を動かそうとすると Catから Dogへ そのようなファイルやディレクトリはありません 。ただし、戻って cd Catを実行すると およびls-a 、子犬が表示されます 。次に、ホームディレクトリに戻り、 ls -a 、および Cat およびDog リストされています。
それで、私は何を間違っているのですか?
承認された回答:
ファイルを操作するときに知っておくと便利なこと:
- Linuxは大文字と小文字を区別します (つまり、
dog、DogおよびDOGすべて異なるファイルです) - コマンドがどのように機能するかは、どこにいるかによって異なります ファイルシステム内
- 現在の場所に基づいて、相対を使用できます または絶対 パス名
したがって、 Catの親ディレクトリにいる場合 およびDog 次のように相対パス名を使用できます:
mv Cat/puppies Dog
簡単な間違いは、 /で始まるパス名を入力することです。
mv /Cat/puppies /Dog
これにより、そのようなファイルやディレクトリはありません エラー、 / ルートディレクトリであり、 Catはありません およびDog /の下のディレクトリ 。ご覧ください:
ls /
この混乱の理由の1つは、システムがユーザーのホームディレクトリに役立つショートカットを使用しているため、 / home / username / somefileの代わりに 〜/ somefileと入力できます somefileの絶対パス名として ユーザーのホームディレクトリにあるので、 Cat およびDog ユーザーのホームディレクトリの一番上にある場合は、子犬を移動できます Catから Dogへ ファイルシステムのどこからでも
mv ~/Cat/puppies ~/Dog
相対パス名を使用したいくつかの例
Catディレクトリにいる場合 、子犬を移動できます このように
mv puppies ../Dog
.. 現在の作業ディレクトリの親ディレクトリを指定します
Dogディレクトリにいる場合 このように子犬を動かすことができます
mv ../Cat/puppies .
。コード> 現在の作業ディレクトリを指定します
あなたがどこにいるかを知るために、あなたは通常あなたのプロンプトを見ることができます、しかし念のために、あなたはいつでも pwdでチェックすることができます これは「印刷作業ディレクトリ」の略です