2

Я пытаюсь запустить следующую команду в Windows CLI:

XCOPY Z:\.vimrc %USERPROFILE%\_vimrc /H

Часть /H должна быть там, потому что Z:\.vimrc - это скрытый файл.

Когда я запускаю команду выше, я получаю следующее сообщение:

Does C:\Users\Matt\_vimrc specify a file name
or directory name on target
(F = file, D = directory)?

Эта команда в конечном итоге будет частью файла BAT, и я не хочу, чтобы это приглашение. Ответ на это всегда "F".

Если .vimrc и _vimrc были названы одинаково, я мог бы просто выполнить одну из этих команд и покончить с этим:

XCOPY Z:\.vimrc %USERPROFILE%\ /H
XCOPY Z:\.vimrc %USERPROFILE% /H /I

Но это не так, поэтому я не могу. Как мне подавить это сообщение?

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

Примечание. Если файл %USERPROFILE%\_vimrc , сообщение не отображается.

3 ответа3

2

Тьфу.

echo F | XCOPY Z:\.vimrc %USERPROFILE%\_vimrc /H
1

Hack:

type Z:\.vimrc > "%USERPROFILE%\_vimrc"
0

Я действительно не вижу проблемы с переименованием потом

xcopy Z:\.vimrc %USERPROFILE%\ /H && ren %USERPROFILE%\.vimrc _vimrc

Если существует вероятность того, что файл уже существует:

if NOT EXIST %USERPROFILE%\_vimrc (
    xcopy Z:\.vimrc %USERPROFILE%\ /H && ren %USERPROFILE%\.vimrc _vimrc
) ELSE (
    del %USERPROFILE%\_vimrc
    xcopy Z:\.vimrc %USERPROFILE%\ /H && ren %USERPROFILE%\.vimrc _vimrc
)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .