Логическое сравнение bash дает неверный ответ для файлов RCS, оканчивающихся на ,v

Для диагностики проблем с памятью лучше всего начать с сообщений загрузки ядра; ядро распечатывает все, что находит в системной памяти. Начните с вывода dmesg, ищите «память».

Как вы обнаружили, в вашем случае это показывает

[ 0.000000] WARNING: BIOS bug: CPU MTRRs don't cover all of memory, losing 2176MB of RAM.
[ 0.000000] WARNING: CPU: 0 PID: 0 at /build/linux-rtbsTs/linux-4.9.82/arch/x86/kernel/cpu/mtrr/cleanup.c:978 mtrr_trim_uncached_memory+0x2f5/0x326

, что говорит о том, что BIOS неправильно настраивает систему для 6-гигабайтной системы.

0
14.04.2020, 05:38
1 ответ

В вашем примере вы ссылаетесь напеременную , где ваше выражение ожидаетлитерал:

if [[ RCS/$dog* -nt dog ]] ; then echo not older than dog ; else echo older than dog ; fi

То есть,

  • Это переменная :$dog, и если она не установлена,вместо этого вы получите что-то вродеRCS/*(или что-то еще, если$dogустановлено наcat).

  • Это литерал :dog, иRCS/dog*будет соответствоватьRCS/dog,v

2
19.03.2021, 02:29

Теги

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