Я использую команду ":> 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
Это должно дать тот же результат.
