[О блоге]
[наверх]
[пред]
[2021-01-25 01:47:32+03:00]
[7cdceadae4be75a1cc450f380e01b667ef5ca7d5]
Темы: [perl][tip]
Как начать любить shell script: узнать размер файла
https://unix.stackexchange.com/questions/16640/how-can-i-get-the-size-of-a-file-in-a-bash-script
Возможно сейчас поздно и поэтому голова плохо соображает, но я осознал
что не знаю как кроссплатформенно узнать размер файла в shell-е. Парсить
ls или менять ему формат -- не серьёзно, ведь есть же stat утилита.
Которую я и использовал прежде. А сегодня проверил такой же ли у неё
способ задания формата вывода как и в GNU? Фиг там! И у ls разный, и у stat.
Пошёл по быстрому искать ответ всё ли так плохо. Да, всё плохо. Много
людей умудряются не понимать для чего нужен du. Если у ls всё же
стандартизованный вывод (ага, нужно выставлять POSIXLY_CORRECT для GNU),
то он бы мог быть портируемым вариантом. "wc -c" мне решение тоже
приходило в голову, но... оно не показывает размер файла из иноды, а
действительно считает кол-во символов сколько из него можно прочитать.
В итоге, пока остановился на perl -e 'print -s $ARGV[0]', хотя тут мог
бы быть и *awk и хоть python однострочник.
Удивительно, сколько лет можно жить, работать с shell, но на такие
простейшие вопросы не знать ответа простого и чёткого.
[оставить комментарий]