【linux】【備忘録】文字列操作

  • 目的
    • 備忘録
    • 以前作った文字列操作のコマンドを備忘として残しておく
  • 結論
    • 以下のコマンドを実行すると求めてる結果が得られる
  • 実行コマンド
    • 先頭から1文字削除
      • echo 'abcdefghijkl' | awk '{print substr($0, 2)}
      • 実行結果
        • [ec2-user@ip-192-168-10-61 ~]$ echo 'abcdefghijkl' | awk '{print substr($0, 2)}'
          bcdefghijkl
    • 先頭から3文字削除
      • echo 'abcdefghijkl' | awk '{print substr($0, 4)}'
      • 実行結果
        • [ec2-user@ip-192-168-10-61 ~]$ echo 'abcdefghijkl' | awk '{print substr($0, 4)}'
          defghijkl
    • => つまり、
      • substr($0, 4)の4-1した文字数分先頭から削除する
    • 末尾から1文字削除
      • echo 'abcdefghijkl' | awk '{print substr($0, 1, length($0)-1)}'
      • 実行結果
        • [ec2-user@ip-192-168-10-61 ~]$ echo 'abcdefghijkl' | awk '{print substr($0, 1, length($0)-1)}'
          abcdefghijk
    • 末尾から4文字削除
      • echo 'abcdefghijkl' | awk '{print substr($0, 1, length($0)-4)}'
      • 実行結果
        • [ec2-user@ip-192-168-10-61 ~]$ echo 'abcdefghijkl' | awk '{print substr($0, 1, length($0)-4)}'
          abcdefgh
    • => つまり、
      • length($0)-4)の-4の文字数分末尾から削除して表示される
    • 先頭と末尾から1文字ずつ削除
      • echo 'abcdefghijkl' | awk '{print substr($0, 2, length($0)-2)}'
      • 実行結果
        • [ec2-user@ip-192-168-10-61 ~]$ echo 'abcdefghijkl' | awk '{print substr($0, 2, length($0)-2)}'
          bcdefghijk
    • 先頭と末尾から2文字ずつ削除
      • echo 'abcdefghijkl' | awk '{print substr($0, 3, length($0)-4)}'
      • 実行結果
        • [ec2-user@ip-192-168-10-61 ~]$ echo 'abcdefghijkl' | awk '{print substr($0, 3, length($0)-4)}'
          cdefghij
    • つまり、
      • substr($0, 3, length($0)-4)の3-1の文字数分、先頭から削除され
      • length($0)-4の4-<先頭で削除する文字数>の文字数分末尾から削除される
linux
スポンサーリンク
K・B・S
タイトルとURLをコピーしました