Есть ли способ заставить awk (gawk) игнорировать или пропускать отсутствующие файлы? То есть файлы, переданные в командной строке, которые больше не существуют в файловой системе (например, быстро появляющиеся / исчезающие файлы в /proc/[1-9]*).
По умолчанию отсутствующий файл является фатальной ошибкой: - (
Я бы хотел сделать что-то подобное:
BEGIN { MISSING_FILES_ARE_FATAL = 0 } # <- Wishful thinking!
{ count++ }
END { print count }
Скрипт-обертка не может проверить, существуют ли файлы до запуска awk, поскольку они могут исчезнуть между временем их проверки и затем awk попытается открыть их, т. Е. Это состояние гонки. (Это также условие гонки, чтобы проверять и открывать в awk, хотя время для этого более плотное)