Как переименовать файлы, расположенные по сетевому пути (UNC-путь) в командной строке Windows 7?


10

В командной строке мне нужно переименовать файл на удаленном сервере. Концептуально это то, что я ищу:

ren \\servername\folder\file.txt \\servername\folder\file2.txt

Помимо использования PSTools, есть ли способ сделать это локально с диска C:? Я думаю, что я также могу сопоставить сетевую папку с буквой диска и сделать это таким образом, но этот пакетный файл, который я использую, должен быть доступен всем и не может требовать от пользователя привязки диска. Если это единственный путь, то, я думаю, мне придется пойти с этим.

Ответы:


21

Не используйте полный путь для второго аргумента. Только первый аргумент требует полного пути. Windows предполагает, что, поскольку вы переименовываете, файл останется в той же папке, как указано ранее. Это упоминается в справке команды внизу:

C:\Users\John>ren /?
Renames a file or files.

RENAME [drive:][path]filename1 filename2.
REN [drive:][path]filename1 filename2.

Note that you cannot specify a new drive or path for your destination file.

например:

ren \\ имя_сервера \ папка \ file.txt file2.txt

В качестве альтернативы вы можете сопоставить букву диска с общим ресурсом UNC, а затем выполнить команду, например:

ren Z: \ file.txt file2.txt

Оно работает! Теперь я могу переименовывать файлы, расположенные в папке на удаленном сервере. И подумать, что я на самом деле создал пакетный файл, который называется uncren.batскопировать файл и удалить старый, как тот другой парень говорил о лол. Благодарю.
колеблющийся
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.