![첫 번째 문자 뒤에 공백 추가 [닫기]](https://linux55.com/image/96815/%EC%B2%AB%20%EB%B2%88%EC%A7%B8%20%EB%AC%B8%EC%9E%90%20%EB%92%A4%EC%97%90%20%EA%B3%B5%EB%B0%B1%20%EC%B6%94%EA%B0%80%20%5B%EB%8B%AB%EA%B8%B0%5D.png)
나는 이런 문자열을 가지고있다
8prob566459
원하는 출력:
8 prob566459
답변1
파일의 모든 줄에 적용해야 하는 경우:
sed 's/./& /' < file
쉘 변수에 저장된 문자열에 적용하려면 다음을 수행하십시오.
string=8prob566459
printf '%s\n' "${string%"${string#?}"} ${string#?}"
다음과 같이 할 수도 있습니다.
printf '%s\n' "$string" | sed '1s/./& /'
또는 다음을 사용하여 zsh
:
printf '%s\n' "$string[1] $string[2,-1]"
또는:
setopt extendedglob # best in ~/.zshrc
printf '%s\n' ${string/(#m)?/$MATCH }
또는 다음을 사용하여 ksh93
:
printf '%s\n' "${string/?/\0 }"
또는 zsh
, ksh93
또는 bash
:
printf '%s\n' "${string:0:1} ${string:1}"
답변2
echo "$(echo 8prob566459 | cut -c 1 ) $(echo 8prob566459 | cut -c 2- )"
이게 효과가 있을 거야