Как агрессивно сбрасывать записи на диск?

Если у вас уже есть выходные файлы и вам просто нужно добавить заголовок с именами файлов к каждому из них, все, что вам нужно, это что-то вроде:

header=$(printf "%s %s %s %s\n" $(awk 'FNR==1{print FILENAME}' file*))
for file in output*; do 
    printf '%s\n%s\n' "$header" "$(cat $file)" > tmp && 
    mv tmp "$file"; 
done
1
05.04.2019, 21:26
1 ответ

Вы можете синхронизировать только файл с fsync или (без изменений метаданных )с fdatasync , только файловую систему с syncfs или все с синхронизировать . А просто каталог? sync /var/log/syslog— это пример синхронизации только каталога.

3
27.01.2020, 23:41

Теги

Похожие вопросы