私はfold -w 3
1行を3文字の長さの複数行に分割することに慣れていますが、GNU実装ではマルチバイト文字のテキストでは機能しないようです。
上記の目標をどのように達成できますかsed
?
私はそれを見つけましたが、sed -r 's/^(.{0,3})(.*)/\1\n\2/g'
これは一度の交換のみを行います。
echo "111222333444555666" | sed -r 's/^(.{0,3})(.*)/\1\n\2/g'
111
222333444555666
他の例:
echo "ĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄ" | sed -r 's/^(.{0,3})(.*)/\1\n\2/g'
ĄĄĄ
ĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄ
腐敗したfold
慣行:
echo "ĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄ" | fold -w 3
Ą�
�Ą
Ą�
�Ą
Ą�
ベストアンサー1
短いgrep
方法:
echo "ĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄĄ" | grep -Eo '.{1,3}'
ĄĄĄ
ĄĄĄ
ĄĄĄ
ĄĄĄ
ĄĄĄ
ĄĄĄ
ĄĄĄ
ĄĄ
3つの文字シーケンスのみを保持します。... | grep -Eo '.{3}'