Для чего можно использовать управляющие коды C1?

ls -l с или без -hпоказывает только (видимый )размер файлов для каждого из них, а не использование ими дискового пространства.

Чтобы увидеть использование дискового пространства, используйте ls -s. Тогда сумма должна совпадать.

Обратите внимание, что эта сумма является суммой для перечисленных файлов. Если вы не используете -A, скрытые файлы не будут включены. Если вы используете -a, .и ..будут также включены (, как правило, ). Обратите внимание, что если один и тот же файл дважды появляется в списке (, например, потому что это жесткие ссылки на один и тот же файл ), он будет засчитан дважды.

Размер указывается в единицах по 512 байт в реализациях, совместимых с POSIX -. GNUls(тот, который поставляется с Ubuntu ), вместо этого использует единицы измерения 1024 байта, если в среде нет переменной POSIXLY_CORRECT($LS_BLOCK_SIZE, $BLOCKSIZEили опция --block-sizeтакже может использоваться для указания произвольных единиц ). busybox lsвсегда использует блоки размером 1024 байта.

Пример:

$ truncate -s 15T a
$ echo > b
$ ls -s
total 4
0 a  4 b
$ ls -sl
total 4
0 -rw-rw-r-- 1 me me 16492674416640 Oct  4 21:53 a
4 -rw-rw-r-- 1 me me              1 Oct  4 21:53 b
$ POSIXLY_CORRECT=1 ls -sl
total 8
0 -rw-rw-r-- 1 me me 16492674416640 Oct  4 21:53 a
8 -rw-rw-r-- 1 me me              1 Oct  4 21:53 b
$ LS_BLOCK_SIZE=1 ls -sl
total 4096
   0 -rw-rw-r-- 1 me me 16492674416640 Oct  4 21:53 a
4096 -rw-rw-r-- 1 me me              1 Oct  4 21:53 b
$ LS_BLOCK_SIZE=1 ls -sla
total 1638400
   4096 drwxrwxr-x   2 me me           4096 Oct  4 21:53./
1630208 drwxr-xr-x 312 me me        1626112 Oct  4 21:54../
      0 -rw-rw-r--   1 me me 16492674416640 Oct  4 21:53 a
   4096 -rw-rw-r--   1 me me              1 Oct  4 21:53 b
$ ls -slah
total 1.6M
4.0K drwxrwxr-x   2 me me 4.0K Oct  4 21:53./
1.6M drwxr-xr-x 312 me me 1.6M Oct  4 21:55../
   0 -rw-rw-r--   1 me me  15T Oct  4 21:53 a
4.0K -rw-rw-r--   1 me me    1 Oct  4 21:53 b

Посмотрите, как aимеет размер 15 ТБ, но не занимает места на диске (это разреженный файл ), а bимеет размер в один байт, но занимает 4 КБ на диске (использует один блок файловой системы )].

См. Почему существует так много различных способов измерения использования диска? для дальнейшего чтения.

0
28.10.2020, 13:22
1 ответ

Ссылка на википедию в вашем вопросе уже многое объясняет по теме.

В Linux коды OSC, реализованные xterm (, за которыми следует большинство других эмуляторов терминала ), определены в его ctlseqs . Некоторые коды OSC также поддерживаются tmux.

Самым последним дополнением к «для чего это можно использовать» является OSC 52, который предоставляет приложению, работающему в терминале, доступ к системному буферу обмена.

Коды, поддерживаемые консолью Linux, определены вman console_codes

0
18.03.2021, 22:54

Теги

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