awk, sed, perl: 特定の位置の文字のみを削除

awk, sed, perl: 特定の位置の文字のみを削除

名前を変更するファイルが複数あります。

    leng-1494-001
    leng-1464-002
    leng-2414-004
    leng-7894-005
    leng-1323-006

名前を変更したい

    ferr-1494-001
    ferr-1464-002
    ferr-2414-004
    ferr-7894-005
    ferr-1323-006

ferrとlengを処理する方法を知っていますが、sedを使用して6〜10文字(1464,7894)を空の行やaaaa bbbb ccccなどの文字列に置き換える方法は? AwkまたはPerlソリューションも歓迎します。ありがとう

ベストアンサー1

sedを使用してください:

sed -r 's/(.*[a-zA-Z]{4}\-)([0-9]{4})/\1aaaa/g'

おすすめ記事