프로그램이있어서 gdb를 사용하여 프로그램을 디버깅하려고합니다. 프로그램 안에는 사용자가 stdin을 사용하여 입력을 요구하는 메소드가 있습니다. 내가 gdb에있을 때이 입력을 어떻게 입력 할 수 있습니까? 어떻게하면 내 방법이 작동 하는지를 추적 할 수 있습니까?GDB를 사용하여 stdin에서 사용자 입력을받는 프로그램을 디버깅하는 방법은 무엇입니까?
24
A
답변
21
$ cat >foo <<EOF
something
EOF
$ gdb -quiet /bin/cat
Reading symbols from /bin/cat...(no debugging symbols found)...done.
Missing separate debuginfos, use: debuginfo-install coreutils-8.12-7.fc16.x86_64
(gdb) run <foo
Starting program: /bin/cat <foo
something
[Inferior 1 (process 22436) exited normally]
(gdb)
1
난 그냥이 어제 같은 것을 통해 가서 내가 인터넷에서 필요한 정확하게 찾을 수 없었기 때문에 GDB의 명령 "도움"의 무리를 통해에 반복.
나는 gdb를 시작한 후 set variable *your_variable* = *your desired input*
을 사용하고 코드를 실행하기 시작했습니다. 매력처럼 일했습니다.
나는 이것이 늦었다 고 알고 있지만, 아마도 다른 사람을 도울 것입니다.
+1
어떻게 이것을 stdin에 사용할 수 있습니까? – Aralox
관련 문제
- 1. gdb를 사용하여 디버깅하는 방법은 무엇입니까?
- 2. gdb를 사용하여 SIGTRAP을 디버깅하는 방법은 무엇입니까?
- 3. gdb를 사용하여 Linux에서 FASM으로 작성된 프로그램을 디버깅하는 방법은 무엇입니까?
- 4. gdb를 사용하여 디버깅하는 동안 포인터가 가리키는 문자열을 출력하는 방법은 무엇입니까?
- 5. 리눅스에서 GDB를 사용하여 Java -JNI를 디버깅하는 방법은 무엇입니까?
- 6. 사용자 정의 컨트롤을 사용하여 Google지도에서 사용자 입력을받는 방법은 무엇입니까?
- 7. 신호를 사용하여 프로그램을 디버깅하는 방법은 무엇입니까?
- 8. Stackshot을 사용하여 응용 프로그램을 디버깅하는 방법은 무엇입니까?
- 9. Eclipse를 사용하여 Windows에서 Linux C++ 프로그램을 디버깅하는 방법은 무엇입니까?
- 10. Linux에서 실행중인 C++ 프로그램을 디버깅하는 방법은 무엇입니까?
- 11. 부트 로더를 디버깅하는 방법은 무엇입니까?
- 12. 텍스트 입력란에서 사용자 입력을받는 올바른 방법은 무엇입니까?
- 13. gdb를 사용하여 어셈블리를 디버깅하는 방법, 호출을 건너 뛰는 방법
- 14. 가지에서 사용자 입력을받는 방법?
- 15. GNUstep 응용 프로그램을 디버깅하는 방법은 무엇입니까?
- 16. gdb를 사용하여 원격 신호를 처리하는 방법은 무엇입니까?
- 17. Linux에서 F #/Nemerle 모노 응용 프로그램을 디버깅하는 방법은 무엇입니까?
- 18. Silverlight 응용 프로그램을 디버깅하는 방법은 무엇입니까?
- 19. 'make'로 컴파일 된 프로그램을 디버깅하는 방법은 무엇입니까?
- 20. Windows에서 MPI 응용 프로그램을 디버깅하는 방법은 무엇입니까?
- 21. 안드로이드 프로그램을 디버깅하는 가장 좋은 방법은 무엇입니까?
- 22. 티타늄 응용 프로그램을 디버깅하는 방법은 무엇입니까?
- 23. 설치하는 동안 사용자 입력을받는 방법
- 24. Eclipse를 사용하여 Linux에서 C++ 프로그램을 디버깅하는 방법은 무엇입니까?
- 25. COM 인터페이스를 사용하여 응용 프로그램을 디버깅하는 방법은 무엇입니까?
- 26. android sdk를 사용하여 android 응용 프로그램을 디버깅하는 방법은 무엇입니까?
- 27. stdin에서 읽고 stdout에 쓰는 java 프로그램을 테스트하십시오.
- 28. Perl에서 SIP 호출을하고 DTMF 입력을받는 방법은 무엇입니까?
- 29. Linux에서 Eclipse에서 Chromium을 디버깅하는 방법은 무엇입니까?
- 30. 리눅스에서 gdb를 사용하여 동시에 .so 라이브러리를로드하는 실행 파일을 디버깅하는 방법은 무엇입니까?
간단한 입력 직접 입력의 경우 질문은 다음과 동일합니다. http://stackoverflow.com/questions/455544이 경우에는 해당되지 않는 경우가 있습니다. 1) 표준 입력을 결정하기 위해 stdout을 볼 필요가 있습니다 2) 실제 타이밍과 키 누름은 ncurses 에서처럼 필요합니다. 그럴 경우 아마 그렇게 할 수도 있습니다 : http://stackoverflow.com/questions/5579901/automated-test-tools-for-linux-ncurses –