У меня есть файлы, которые попадают в две дополнительных категории (.out и .error). Существует ли единственная команда, которая может удалить их внезапно?
Я попробовал rm -f *.out || *.error
но это не работало.Спасибо
(я видел связанное сообщение также, но не уверен, как иметь дело с несколькими расширениями все еще),
Править: не рекурсивный случай
||
здесь не требуется 1 sup>, rm
будет действовать на все операнды, поэтому:
rm *.error *.out
Или, используя расширение скобок bash (полезно, если вы длинный список):
rm *.{error,out}
1 sup> Мало того, что ||
не требуется, это также меняет структуру команд. ||
- это bash's OR для команд . Итак, если у вас есть файлы a.error
, b.error
и a.out
, b,out
, bash выполнит:
rm a.out b.out
И если , что не удалось, то выполните [ 1111] с b.error
в качестве аргумента. Он не будет передавать a.error
или b.error
во второй прогон rm
.