Пытаюсь использовать команду перемещения (mv), но я получаю «нет такого файла или каталога»

У меня возникли проблемы с использованием команды перемещения. Я создал две директории с именами Cat и Dog. Под Cat я создал файл с именем puppies.

Когда я пытаюсь переместить puppies из Cat в Dog, я получаю No such file or directory. Однако, когда я возвращаюсь и к cd Cat и ls -a, он показывает puppies. Затем я возвращаюсь в свой домашний каталог, и в списке ls -a, а также Cat и Dog.

Так что я делаю не так?

0
задан 18 December 2017 в 01:48

2 ответа

Некоторые полезные вещи знать при выполнении вещей с файлами:

  • Linux чувствителен к регистру (так dog, Dog и DOG все различные файлы),
  • Как работа команд зависит от того, где Вы находитесь в файловой системе
  • На основе того, где Вы - Вы, может использовать относительные или абсолютные пути

Так, если Вы находитесь в родительском каталоге Cat и Dog можно использовать относительные пути, как это:

mv Cat/puppies Dog

Легкая ошибка сделать состоит в том, чтобы ввести путь, запускающийся с /

mv /Cat/puppies /Dog

Это даст a no such file or directory ошибка, потому что / корневой каталог и существует нет Cat и Dog каталоги под /.Посмотрите:

ls /

Одна причина этого беспорядка состоит в том, что система использует полезный ярлык для корневого каталога пользователя, таким образом, вместо /home/username/somefile можно ввести ~/somefile как абсолютный путь somefile в корневом каталоге Вашего пользователя, таким образом, принимая Cat и Dog наверху корневого каталога Вашего пользователя, можно переместиться puppies от Cat кому: Dog отовсюду в Вашей файловой системе с

mv ~/Cat/puppies ~/Dog

Несколько примеров с помощью относительных путей

Если Вы находитесь в каталоге Cat, можно переместиться puppies как это

mv puppies ../Dog

.. указывает родительский каталог текущего рабочего каталога

Если Вы находитесь в каталоге Dog можно переместить щенков как это

mv ../Cat/puppies .

. указывает текущий рабочий каталог

Для обнаружения, где Вы можно обычно смотреть подсказку, но только быть уверенными, можно всегда сверяться pwd который обозначает 'печать рабочий каталог'

4
ответ дан 18 December 2017 в 01:48

Команда, которую я использовал бы здесь, (предположение, что они находятся на верхнем уровне Вашего корневого каталога):

mv ~/Cat/puppies ~/Dog/puppies 

, Если бы каталог puppies содержит больше каталогов, необходимо будет добавить рекурсивный флаг -r, который заставил бы команду быть похожей:

mv -r ~/Cat/puppies ~/Dog/puppies 

Примечание команда чувствительна к регистру.

0
ответ дан 18 December 2017 в 01:48

Другие вопросы по тегам:

Похожие вопросы: