Випадково я з'ясував, що wc
рахується по-різному залежно від того, як він отримує вхід від bash:
$ s='hello'
$ wc -m <<<"$s"
6
$ wc -c <<<"$s"
6
$ printf '%s' "$s" | wc -m
5
$ printf '%s' "$s" | wc -c
5
Це - ІМХО заплутане - поведінка десь задокументована? Що wc
тут враховує - це припущений новий рядок?
Або, краще,
—
Руслан
xxd -g1
.
Я сподіваюся, що
—
власний
printf "$s"
це не ваш printf "%s" "$s"
Оскільки було дуже багато коментарів щодо printf, я відредагував свою публікацію, щоб відобразити найкращу практику.
—
rexkogitans
od -c
зможете побачити, що саме у вас є.