2013-09-20 3 views
0

Рассмотрим следующий файл:Как переименовать файлы, содержащие пробелы с битом?

DOC 00001.txt 

Мне нужно переименовать его в

DOC 00001_XXX_YYY - DOC 00001 

Я пытался это с помощью .bat файл с помощью следующей команды:

rename "DOC 00001.txt" "DOC 00001_XXX_YYY - DOC 00001" 

Но это не работает. Так что я пытался к нему (только для отладки сакэ) с заменой пространства в файле с подчеркиванием:

rename "DOC_00001.txt" "DOC 00001_XXX_YYY - DOC 00001" 

Это до сих пор не работает. Что такое работа:

rename "DOC_00001.txt" "DOC_00001_XXX_YYY_-_DOC_00001" 

Таким образом, проблема заключается в пробелах. Но я не могу найти команду rename, которая будет работать с пробелами. Кто-нибудь может мне помочь?

+0

Что не работает, есть ли у вас ошибка? Если так, то, что это ? – Marc

+0

Команды ren во всех трех нижних кодовых блоках будут работать нормально, в Windows. – foxidrive

ответ

1

То, что вы должны работать:

C:\Users\marc>echo > "DOC 00001.txt" 

C:\Users\marc>ren "DOC 00001.txt" "DOC 00001_XXX_YYY - DOC 00001" 

C:\Users\mbb190>dir DOC* 
Volume in drive C is Windows7_OS 
Volume Serial Number is 0E31-0E35 

Directory of C:\Users\marc 

20/09/2013 08:28 AM    13 DOC 00001_XXX_YYY - DOC 00001 

Если это не переименовывать, а затем проверить, если у вас есть имя файла конфликта, или в противном случае отсутствуют разрешения каким-то образом.

+0

Почему вы предполагаете, что файл не существует? Почему вы переписываете существующий файл? –

+0

@ls_dev Команда создает файл (с сообщением об ошибке внутри него), а затем переименовывает файл. Никакого переписывания не происходит. – foxidrive

+0

@LS_dev: Надеюсь, вы понимаете, что пример выше - с моей машины, где я показывал, что команда rename СЛЕДУЕТ работать? –

Смежные вопросы