このコード行は、7番目の文字ではなく最初の文字で始まるという点を除いて、まさにそれを行います。
$ echo 1234567890abcdefghijklmnopqrstuvwxy | sed 's/.\{1,7\}\(.\{0,1\}\)/\1/g'
私が探しているのは
19gow
ベストアンサー1
実際に必要なものを説明していませんが、目的の出力を取得する1つの方法は8文字ごとに選択することです。このような:
$ echo 1234567890abcdefghijklmnopqrstuvwxy | sed -E 's/(.).{0,7}/\1/g'
19gow
この置換は任意の文字()を見つけて「キャプチャ」し、その(.)
文字と次の7文字(残りの文字が7文字未満の場合はそれ以下)を自分の文字に置き換えます。実際、これにより、8文字を除くすべての文字が削除されます。