![메시지의 암호화된 메시지 [닫기]](https://linux55.com/image/11444/%EB%A9%94%EC%8B%9C%EC%A7%80%EC%9D%98%20%EC%95%94%ED%98%B8%ED%99%94%EB%90%9C%20%EB%A9%94%EC%8B%9C%EC%A7%80%20%5B%EB%8B%AB%EA%B8%B0%5D.png)
이제 막 공부를 시작했는데 bash
질문이 있습니다.
코드북 암호화를 해야 합니다. 예를 들어, 알파벳 문자를 주어진 문자 패턴으로 바꿉니다. 예를 들어:
Hello World. has to become Qlxxa vaoxk.
하지만 이 명령을 사용하면 다른 결과가 나타납니다.
echo $line | tr 'a-z' "$line1"
line에는 내가 원하는 것보다 한 글자 더 이동하는 패턴이 있는 메시지 line1이 있습니다.
답변1
문제는 패턴이 제공되는 방식에 있는 것으로 밝혀졌습니다. 한 줄에는 소문자로 대체되고 두 번째 줄에는 대문자로 대체되어 파일에서 패턴을 읽었습니다. 함께 읽어보세요
line1="$(<pattern.txt)"
소문자 모드와 대문자 모드 사이에 공백이 생기므로 모든 문자가 이동됩니다.
해결책은 읽은 후 공백을 제거하는 것입니다.
line1="${line1// /}"