!
запускает замену истории (“событие” является строкой в истории команд); например, !ls
расширяется до последней командной строки, содержащей ls
, и !?foo
расширяется до последней командной строки, содержащей foo
. Можно также извлечь определенные слова (например. !!:1
относится к первому слову предыдущей команды), и больше; см. руководство для деталей.
Эта функция была изобретена, чтобы быстро повторно вызвать предыдущие команды в дни, когда выпуск командной строки был примитивен. С современными оболочками (по крайней мере, удар и zsh) и копия-и-вставка, расширение истории не так полезно, как это раньше было — это все еще полезно, но можно продвинуться без него.
Можно измениться, который символ инициировал замену истории путем установки histchars
переменная; при редком использовании замены истории можно установить, например. histchars='¡^'
так, чтобы ¡
триггерное расширение истории вместо !
. Можно даже выключить функцию в целом с set +o histexpand
.
Ширина данных = 64 (8 банков * 8 битов)
Общая ширина = 72 (9 банков * 8 битов)
Дополнительный банк указывает, что ECC активен.
Поддержка “Зарегистрированного” и “Освободила буфер”, детали типа (среди других) были добавлены в dmidecode 2.11 (dmidecode.c
пересмотр 1.158). Если Вы получите последнюю версию, то я ожидаю, что она покажет также Type Detail: Synchronous Registered (Buffered)
или Type Detail: Synchronous Unbuffered (Unregistered)
(и вероятно Type: DDR3
выше).
Это отмечено как Type Detail: Synchronous
Таким образом, я иду с Зарегистрированным. От Wiki Newegg:
Почему "освобожден буфер" дубликат "зарегистрированных"? Буферы известны как "асинхронные" компоненты, который должен сказать, что сигналы на входных контактах появляются непосредственно на помещенных контактах. Наоборот, регистры известны как "синхронные" компоненты: новые сигналы на входных контактах сразу не обнаруживаются на помещенных контактах. Вместо этого они ожидают следующей галочки системных часов.