Существует общая опция монтирования для нескольких файловых систем (включая ext2/3/4, fat, jfs) errors=remount-ro
. Это говорит ядру, что если при доступе к файловой системе возникнут любые ошибки чтения или записи, то фс будет перемонтирована как доступная только для чтения.
Для некоторых файловых систем (fat) по умолчанию используется errors=remount-ro
. Для ext2/3/4 значение по умолчанию задается tune2fs
.
Намерение состоит в том, чтобы спасти fs от возможности дальнейшей записи на него повреждений.
Подробности см. в man mount
и/или на странице man для используемой файловой системы.
Esto parece funcionar:
grep -Eo '[0-9]{4}' /path/to/file | grep -v '0000'
Menos legible, pero con una solagrep
:
grep -Eo '[0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]|[0-9][1-9][0-9]{2}|[1-9][0-9]{3}' /path/to/file
Dos enfoques para llegar a la meta:
grep
enfoque (con soporte de Perl ):
grep -Po '\(\K(?!0000)([0-9]{4})(?=\))' /tmp/output
enfoque GNUawk
:
awk -v FPAT='\\([0-9]{4}\\)' '$1{ n = substr($1,2,4); if (int(n) > 0) print n }' /tmp/output
La salida:
0001
9999
Aparentemente tiene restricciones numéricas. Si este es el caso, ¿por qué no usar un lenguaje de programación? Ejemplo:
perl -nE '/\((\d{4})\)/ and $1 > 0 and say $1'