Bash Shell - 문자열에서 마지막 문자 N개 제거

Bash Shell 스크립트에서 문자열의 마지막 문자 n개를 제거하는 방법에 대해서 알아보겠습니다.

1. cut을 이용한 방법

cut -c -N은 문자열 왼쪽에서 N개의 문자열을 남기고 모두 제거합니다.

아래와 같이 echo와 함께 사용할 수 있으며, 왼쪽 5개 문자 Hello만 출력됩니다.

#!/bin/bash

str1="Hello, Bash"
echo $str1 | cut -c -5

Output:

Hello

변수에 새로운 문자열을 할당하고 싶다면 아래와 같이 구현할 수 있습니다.

#!/bin/bash

str1="Hello, Bash"
str2=`echo $str1 | cut -c -5`

echo $str1
echo $str2

Output:

Hello, Bash
Hello

2. sed를 이용한 방법

sed 's/.\{N\}$//'는 문자열의 오른쪽 N개의 문자를 제거합니다.

아래와 같이 오른쪽 6개의 문자를 제거할 수 있습니다.

#!/bin/bash

str1="Hello, Bash"
echo $str1 | sed 's/.\{6\}$//'

Output:

Hello

제거된 문자열을 다시 변수에 할당하려면 아래와 같이 구현하면 됩니다.

#!/bin/bash

str1="Hello, Bash"
str2=`echo $str1 | sed 's/.\{6\}$//'`

echo $str1
echo $str2

Output:

Hello, Bash
Hello

3. ${string::N}를 이용한 방법

${string::-N}는 문자열의 오른쪽에서 N개의 문자를 제거하며, ${string::N}는 문자열의 왼쪽에서 N개의 문자를 남기고 나머지를 제거합니다.

#!/bin/bash

str1="Hello, Bash"
echo ${str1::-2}
echo ${str1::2}

Output:

Hello, Ba
He
Loading script...

Related Posts

codechachaCopyright ©2019 codechacha