Я думаю, что tput li
показывает количество строк вашего окна терминала. Вычтите два, а затем используйте это значение с head -n
, чтобы отобразить только первые n строк вывода. Это оставит вашу команду в первой строке и подсказку в последней строке.
Формат записей каталога ext4 задокументирован в ядре . Есть две возможности.
.
и ..
, каждый из которых занимает двенадцать байтов. Каждый линейный каталог также может иметь контрольную сумму из двенадцати -байтов. Последняя запись в блоке имеет увеличенную длину записи, чтобы покрыть оставшееся место в текущем блоке, так что записи каталога никогда не охватывают два блока файловой системы. .
и ..
), а каждый последующий блок данных имеет 18 -байтов. ] байтовый узел. Узлы занимают восемь байт каждый,и записи файлов используют ту же структуру данных, что и в линейном каталоге, в конечном счете, как линейный массив. Таким образом, количество места, занимаемого каталогом, вычислить сложнее :каждый файл занимает восемь байтов плюс длина его имени, округленного до четырех байтов, а древовидная структура занимает 40 байтов для первого блока плюс 18 байтов для каждого дополнительного блока. блок и восемь байтов на узел. Если вы хотите быстро увеличить размер каталога, заполните его файлами с длинными именами файлов — имена файлов могут иметь длину до 254 байт плюс завершающий нулевой байт, занимающий всего 264 байта, поэтому 16 таких записи в каталоге любого типа потребуют более 4096 байт.
Чтобы определить, является ли каталог линейным или хешированным, проверьте его inode, например. с помощьюdebugfs
:
debugfs: show_inode_info /path/to/directory
Inode: 7329 Type: directory Mode: 0755 Flags: 0x1000
Generation: 2283115506 Version: 0x00000001
...
Флаги будут показывать установленное значение 0x1000, если каталог хеширован, иначе не установленное значение.
Новый каталог:
mkdir newtemp
Размер нового каталога:
ls -l | grep newtemp
drwxr-xr-x 2 jsevans users 6 Jan 11 17:42 newtemp
Создать новый пустой файл касанием
touch 1
Перепроверьте размер:
ls -l | grep newtemp
drwxr-xr-x 2 jsevans users 15 Jan 11 17:42 newtemp
Поэтому необходим 1 файл.
Если это не ответ на ваш вопрос, просмотрите полную документацию по команде ls в соответствии со страницей руководства.