2016-08-03 11 views
1

Я новичок в программировании, поэтому, пожалуйста, придерживайтесь меня. Я завершаю Zed Shaw's Learn Python Hard Way и, к сожалению, застрял в концепции в командной строке командной строки приложения в Windows PowerShell.powershell-mv проблемы с файлом при перемещении файла обратно по пути

Моя проблема связана с командой move (mv), специально перемещая файл дальше по пути (надеюсь, что это имеет смысл). Вот что я сделал:

Я создал каталог под названием temp, и внутри этого каталога был создан файл .txt с именем awesome.txt и другой dirctory, называемый newplace. Затем я пишу команду «mv awesome.txt newplace», а файл awesome.txt перемещается в каталог newplace. Большой! Проблема в том, что я хочу переместить файл awesome.txt назад в исходное место в каталоге temp. Когда я меняю рабочий каталог на каталог newplace «cd newplace», а затем набираю «mv awesome.txt temp», файл awesome.txt не возвращается в папку temp, а вместо этого преобразует из файла .txt в «файл "и остается в каталоге newplace. Любая помощь или объяснение были бы очень признательны!

ответ

2

папки, как это вложены друг в друга:

c:\temp 
c:\temp\newplace\ 

Когда вы cd вокруг, вы идете в папку (, например cd temp:

c:\temp\ (o_o)  
c:\temp\newplace\ 

И вы можете видеть вещи только в то вы можете переместиться в newplace, потому что это имя имеет смысл, где вы находитесь. Но когда вы находитесь в newplace

c:\temp\ 
c:\temp\newplace\ (o_o) 

Вы не можете перейти на temp, потому что вы не знаете, где он находится. У вас нет индекса каждого имени каталога на всем компьютере, на который вы можете использовать ярлык, у вас есть только два варианта: что-то в том же месте, что и вы, или что-то с абсолютным путем - полное имя, где оно находится. c:\temp\.

mv awesome.txt temp Так пытается поставить его в temp, где вы находитесь ->c:\temp\newplace\temp\ -> что не существует, поэтому предполагается, что вы переместить его на новое имя в том же месте.

Для правильного указания вам понадобится mv awesome.txt c:\temp\.

За исключением скрытого ярлыка, где бы вы ни находились, есть автомагический путь, называемый .., что означает the folder one <-- thatway from where I am.

Таким образом, вы могли бы mv awesome.txt ..\ оттолкнуть его на один уровень на пути, не зная точно, где это. Вероятно, это то, чего ожидает Зед Шоу.

+0

Это прекрасное объяснение, и ваш ответ работал отлично. Спасибо огромное! –