문자열에서 숫자 a :
와 2를 제거해야 하는데 다음과 같습니다."
"9.cgadjka.jsjdaj:12345"
나만 필요해
9.cgadjka.jsjdaj
Linux 터미널에서 스크립트를 작성하는 것은 이번이 처음이므로 지금은 이에 대해 잘 모릅니다.
답변1
사용sed
$ echo '"9.cgadjka.jsjdaj:12345"' | sed 's/:.*\|"//g'
9.cgadjka.jsjdaj
일치 :
및 그 뒤의 모든 문자를 일치시키거나 "
삭제합니다 .
답변2
GNU를 사용하면 grep
다음과 같은 작업을 수행할 수 있습니다.
$ echo '"9.cgadjka.jsjdaj:12345"' | grep -Po '(?<=").*(?=:)'
9.cgadjka.jsjdaj
답변3
댓글에서 해결책을 보실 수 있습니다 sed
. 다음 명령을 사용하여 이러한 기호를 제거할 수도 있습니다 awk
.
echo "9.cgadjka.jsjdaj:12345" |awk -F: '{print $1}'
큰따옴표가 문자열의 일부인 경우 다음을 사용해야 합니다.
STRING='"9.cgadjka.jsjdaj:12345"'
echo $STRING |awk -F'[":]' '{print $2}'
STRING
큰따옴표( )가 있는 문자열을 포함합니다 ."