the whitespace between the two is actually 5 spaces.
Нет, это не так. Не в выводе echo
или printf
.
$ echo -e 'foo\tbar' | od -c
0000000 f o o \t b a r \n
0000010
What is the correct way to force tab being printed as tab, so I can select the output and copy it to somewhere else, with tabs?
Это другой вопрос. Дело не в оболочке, а в эмуляторе терминала, который на выходе преобразует табы в пробелы. Многие, но не все так делают.
Возможно, будет проще перенаправить вывод с табуляциями в файл и скопировать его оттуда или использовать unexpand
на выходе для преобразования пробелов в табуляции. (Хотя он также не может знать, какие пробелы были табуляциями с самого начала, и, если возможно, преобразует все это во табуляции. )Это, конечно, будет зависеть от того, что именно вам нужно сделать с выводом.
Эта проблема не связана с ZFS, поэтому я удалю этот тег из вашего вопроса.
Вы можете спокойно игнорировать это предупреждение. Значение для «оптимального размера передачи», о котором сообщает жесткий диск, очевидно, ерунда:33553920
байты - это 65535
секторов (из 512
байтов ). Таким образом, жесткий диск сообщает 0xFFFF
секторов как оптимальный размер передачи, который представляет собой 16 -бит -число со всеми установленными битами и обычно означает, что прошивка диска не коснулась этого значения или что оно не было правильно запрограммирована в память NV (обычная флэш-память NAND имеет все биты, установленные в 1 после стирания/инициализации ).
В более старых версиях ядра это могло привести к неправильному выравниванию разделов средствами создания разделов. Более новые ядра имеют проверку работоспособности и отбрасывают такие странные значения для оптимального размера передачи, но выводят предупреждение, чтобы уведомить пользователя о том, что его диск говорит чепуху.
fdisk
обычно жалуется, если обнаруживает смещенные разделы, поэтому, если вы выполняете fdisk -l
и не видите подобных подсказок, вы, как правило, в безопасности.
Здесь — подробный -ответ на тот же вопрос.