Есть ли команда MS-DOS, которая позволяет мне удалить все файлы, кроме одного?
Рассмотрим в качестве примера следующие файлы:
a.001
a.002
a.003
a.exe
a.c
Есть ли команда для удаления всех файлов, кроме a.c
?
Вы можете использовать for
и if
команды для достижения этой цели :
for %i in (*) do if not "%~i" == a.c del "%~i"
Он просматривает текущий каталог и сравнивает каждое имя файла с ac. Если оно не совпадает, файл удаляется.
for
регулярно, вы придумаете для него всевозможные сумасшедшие сценарии. :)del "%i"
IF
заявлении не учитывался регистр, измените его наIF /I
.Вы можете установить файл только для чтения, прежде чем удалить все
источник
Нет, нет Я бы сделал каталог, скопировал в него важный файл, сотри . и переместите файл обратно. Затем удалите временный файл.
источник
источник
%f
могут быть пробелы в имени файла.источник
%app_path%
и%file%
являются корнем дерева для обхода и файлом, чтобы избежать удаления, соответственно. Что такое^
и почему мы передаем четыре токена на файлDel
команде?Для скорости я использую delen :
TCC / LE также имеет более мощную
del
команду:источник
del /[!a.c] *
yeldsInvalid switch - "[!a.c]".