cat < q.txt 와 같은 방법으로 표준 입력을 바꿀때에는
'몇 초 뒤에 키 입력이 되도록' 하는 것이 불가능합니다.
만약 그런 기능이 필요한 경우에는 expect 라는 유틸리티를 사용하는 방법이 있으나
사용법이 복잡하니 비추천입니다.
telnet 같은 경우에는 표준 입력을 바꿔치기 하는 방법이 통하지 않으니
expect를 사용할 수 밖에 없습니다.
expect에 대한 자세한 정보는 책을 읽으실 수 밖에 없을것 같습니다.
오렐리에서 나온 책이 한권 있는데, 번역본은 모르겠네요.
영문판은 그리 어렵지 않은 편입니다.
일하는 사람들의 희망 민주노동당 : http://www.kdlp.org
반공 교육의 성과로, 민주주의의 반대가 공산주의(또는 사회주의)라고 생각하는 사람이 많다.
Re: [C쉘] 급합니다 ㅜㅜ 키보드 입력을 쉘중간에 삽입할때
입력하실 문자를 넣어둔 파일을 하나 만드시고 (일단 q.txt라고 해놓죠.)
셀 실행 도중 실행할 명령어 뒤에다가 <q.txt를 붙이세요.
즉 a.out을 실행시킨다고 하면
./a.out < q.txt
하시면 되겠습니다.------------------------------------------------------------
이 멍청이~! 나한테 이길 수 있다고 생각했었냐~?
광란의 귀공자 데코스 와이즈멜 님이라구~!
답변감사합니다.
1 #!/bin/csh
2
3 echo `top -i` > a.dat
4 echo `killall top`
5 set a = `cat< a.dat`
6 sleep 1
7 echo aaaaaaaaaaaaa
8
9 echo $a
10
사실은 이런 소스인데 이거 실행하고 한 2초뒤에 q가 입력이 되면 되는건데
csh tio2.csh < q.txt 를 했더니
top: tcgetattr() failed: 장치에대한 부적절한 ioctl
top: no process killed
aaaaaaaaaaaaa
이렇게 오류가 발생하는군요 .ㅜㅜ;.... 왜 안되지
Re: 답변감사합니다.
일단 쉘에다 그렇게 입력하시면 q.txt는 가장 처음 실행되는 top에 표준입력을 대체 하므로 문제가 되는 거 같구요.
아무튼 쉘 내용을 보아하니...
top를 한번만 반복하고 싶으신거 같은데요.
top에 -n 1 옵션을 줘 보세요.
그러면 한번만 반복됩니다. -b옵션을 주시면 전체화면형식이 아닌 그냥 주르륵 올라가는 형식으로 출력되서 보기 좋습니다.
------------------------------------------------------------
이 멍청이~! 나한테 이길 수 있다고 생각했었냐~?
광란의 귀공자 데코스 와이즈멜 님이라구~!
cronex님께서 말씀하신 방법으로 해결 되실것 같네요.참고로 한
cronex님께서 말씀하신 방법으로 해결 되실것 같네요.
참고로 한가지 적자면..
cat < q.txt 와 같은 방법으로 표준 입력을 바꿀때에는
'몇 초 뒤에 키 입력이 되도록' 하는 것이 불가능합니다.
만약 그런 기능이 필요한 경우에는 expect 라는 유틸리티를 사용하는 방법이 있으나
사용법이 복잡하니 비추천입니다.
telnet 같은 경우에는 표준 입력을 바꿔치기 하는 방법이 통하지 않으니
expect를 사용할 수 밖에 없습니다.
expect에 대한 자세한 정보는 책을 읽으실 수 밖에 없을것 같습니다.
오렐리에서 나온 책이 한권 있는데, 번역본은 모르겠네요.
영문판은 그리 어렵지 않은 편입니다.
일하는 사람들의 희망 민주노동당 : http://www.kdlp.org
반공 교육의 성과로, 민주주의의 반대가 공산주의(또는 사회주의)라고 생각하는 사람이 많다.
댓글 달기