명칭,값이 들어있는 data.txt를 읽어 다른 파일에 있는 명칭을 치환하는 방법?
글쓴이: 라스코니 / 작성시간: 목, 2022/12/01 - 4:25오후
안녕하세요.
명칭 값이 들어 있는 아래와 같은 data.txt가 있습니다.
AAA 10
BBB 100
CCC 1000
다른 cmd.txt가 아래와 같이 있을 때 data.txt를 읽어 명칭과 값을 치환하고 싶습니다.
COMMAND AAA SEND
COMMAND BBB SEND
COMMAND CCC SEND
원하는 결과는 아래와 같습니다.
COMMAND 10 SEND
COMMAND 100 SEND
COMMAND 1000 SEND
sed, awk, grep 등을 써서 할 수 있을 것 같은데 좀 알려주시면 감사하겠습니다.
꼭 sed 등을 안써도 되고, 다른 방법이 있다면 소개 부탁드립니다.
Forums:
음 ..
되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』
같은 결과가 안나오는데요. Ubuntu 20
같은 결과가 안나오는데요. Ubuntu 20.04입니다.
음 ..
SEND 가 앞에 있는 COMMAND 를 덮어썼네요.
file 명령으로 unix 파일인지 확인해 보시고, unix 파일이 아니라면 dos2unix 명령으로 unix 파일로 바꿔주세요.
되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』
dos2unix를 사용하니 같은 결과가 나오네요.
dos2unix를 사용하니 같은 결과가 나오네요. 감사합니다 ^^
그런데 data.txt 양식은 동일한데 사실 cmd.txt 는 여러가지가 있을 수 있거든요. 아래처럼요.
COMMAND AAA SEND
CMMAND A1=AAA, A2=BBB, DELAY=CCC SEND
등등 다양한데 이런 경우에도 적용할 수 있을까요?
음 ..
join 은 정형화 된 포맷을 가진 상태에서, 해당 필드로 정렬되어 있고, 중복이 없을 때에만 사용 가능 합니다.
그나마 아래 것은 쓸 수 있을 것 같은데, 마찬가지로 변수가 누락되어 있거나, 누락된 상태에서 환경 변수와 같은 변수 명을 사용하고 있다면 문제가 생길 수 있습니다.
어쨌거나 위 두 COMMAND 는 포맷이 다르므로 각각 다른 방식을 써야할 것 같네요.
되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』
감사합니다. 그런데 data.txt는 어떻게 넣어야
감사합니다. 그런데 data.txt는 어떻게 넣어야 하나요? shell script에 문외한이라서.
datas가 data.txt 인가요? 가능하면 bash shell로 나타내 주실수 있을까요?
음 ..
되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』
감사합니다!!! 완벽하네요.
감사합니다!!! 완벽하네요.
이 기능을 토대로 완성할 수 있을 것 같습니다. 감사합니다.
음 ..
되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』
역시 같은 결과가 나오지 않습니다.
역시 같은 결과가 나오지 않습니다.
댓글 달기