Jak zmienić nazwę plików znajdujących się na ścieżce sieciowej (ścieżka UNC) w wierszu polecenia systemu Windows 7?

10

W wierszu polecenia potrzebuję sposobu zmiany nazwy pliku na zdalnym serwerze. Koncepcyjnie tego właśnie szukam:

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

Czy oprócz korzystania z PSTools można to zrobić lokalnie z dysku C:? Myślę, że mogę również zmapować folder sieciowy na literę dysku i zrobić to w ten sposób, ale ten plik wsadowy, którego używam, musi być dostępny dla wszystkich i nie może wymagać od użytkownika mapowania dysku. Jeśli to jedyny sposób, to chyba będę musiał z tym pójść.

kretyna oscylacyjna
źródło

Odpowiedzi:

21

Nie używaj pełnej ścieżki dla drugiego argumentu. Tylko pierwszy argument wymaga pełnej ścieżki. System Windows zakłada, że ​​podczas zmiany nazwy plik pozostanie w tym samym folderze, co wcześniej określony. Wspomina o tym w pomocy polecenia na dole:

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.

na przykład:

ren \\ nazwa serwera \ folder \ plik.txt plik2.txt

Alternatywnie możesz zamapować literę dysku na udział UNC, a następnie wydać polecenie, takie jak:

ren Z: \ file.txt plik2.txt
John T.
źródło
To działa! Teraz mogę zmienić nazwę plików znajdujących się w folderze zdalnego serwera. I pomyśleć, że faktycznie stworzyłem plik wsadowy o nazwie, uncren.bataby skopiować plik i usunąć stary, tak jak ten inny facet mówił o lol. Dzięki.
oscilatingcretin