Я использую команду ":> file.log", чтобы обрезать file.log до нулевой длины. Я получил это из Интернета, но я не понимаю, как это работает. Я думаю, что он копирует некоторый поток в файл, но я не могу найти в руководстве, какой поток он использует.
2 ответа
15
Команда не :>
это просто :
В bash (и, возможно, в некоторых других оболочках) это встроенная команда no-op. >
Перенаправляет вывод в файл (сначала его обрезая). Поскольку :
не имеет выходных данных, чистый результат вашей командной строки : > file.log
просто делает file.log
нулевой длиной.
С моей местной страницы bash
:
: [arguments]
No effect; the command does nothing beyond expanding arguments
and performing any specified redirections. A zero exit code is
returned.
1
Вы можете даже забыть :
part и просто набрать >file.log
Это должно дать тот же результат.