Command(리눅스 명령어) 특정 문자 기준 문자열 자르기 (split)
Linux Commands Truncate a string by a specific character
서버 OS는 리눅스만 있었으면 좋겠ㄷ..ㅏ..유닉스 꺼ㅈ...- 리눅스 교도
리눅스에서 특정문자를 기준으로 자르기 위해서는 cut 명령어를 사용하면 됩니다.
예를 들어
위 mysql 설정파일에서 ' = ' 기준으로 잘라서 뒷부분이나 앞부분의 문자열만 추출하고 싶을 때
-d와 -f 옵션을 추가하여 원하는 방식대로 출력할 수 있습니다.
아래에서 설명드리겠습니다.
1. 원하는 데이터 grep 하기 🔗
파일 내에서 필요한 한 줄만 우선 필터 해 보겠습니다.
정말 자주 사용되는 grep 명령어로 datadir을 가진 행 전체를 출력해 보겠습니다.
SQL문에서는 where 절과 비슷하겠군요.
명령어:
cat /etc/my.cnf | grep "datadir="
2. 특정 문자열 기준으로 자르기 ✂
cut 명령어를 사용해 잘라보겠습니다.
명령어:
cat /etc/my.cnf | grep "datadir=" | cut -d "=" -f2
필요한 값만 추출된 모습입니다.
설명:
cut 명령에서 지정한 문자를 구분자로 사용하기 위해 -d 옵션을 주고 "=" 기호를 기준으로 잡아줍니다.
-f 옵션으로 나누어진 필드의 번호를 입력하여 출력합니다.
즉, datadir=/var/lib/mysql 값이 ' = '을 기준으로 필드 1, 2로 나누어졌고 -f2 옵션을 통해 2번 필드가 출력된 겁니다.
-f1을 출력했을 땐 ' = ' 기준의 앞부분이 출력이 됩니다.
ShellScript(쉘 스크립트) 다른 스크립트에 변수 넘기기 (0) | 2023.06.19 |
---|---|
ShellScript(쉘 스크립트) 실행 옵션 입력받기 (0) | 2023.06.17 |