쉘의 문자열에서 숨겨진 문자를 제거하는 방법을 아는 사람이 있습니까?
예는 다음과 같습니다.
# echo $a; [root@localhost ~]#
하지만 숨겨진 문자를 표시하도록 "강제"하면 다음과 같습니다.
# echo $a | cat -v [root@localhost ~]# ls ^H^[[K^H^[[K^H^[[Kpwd^H^[[K^H^[[K^H^[[Kls^H^[[K^H^[[Kpwd^H^[[K^H^[[K^H^[[K
다음 출력을 얻기 위해 숨겨진 문자를 제거하고 싶습니다.
# echo $a | cat -v [root@localhost ~]#
답변1
인쇄되지 않는 문자를 제거하려면 sed를 사용하십시오.
echo $a | sed 's/[^ -~]//g' | cat -v
아니면 저장하세요:
a=$(echo $a | sed 's/[^ -~]//g')