# 프로그램에서 사용자가 입력한 내용이 화면에 Echo 되지 않게 하기

 

간단하게 구현하는 방법과 조금 어렵게 구현하는 방법이 있는데 간단한 방법은 거의 모든 유닉스(리눅스)에 있는 getpass() 함수를 사용하는 방법과 조금 어렵게 구현하는 방법은 tcgetattr()과  tcsetattr()를 사용하는 방법 입니다.

 

1. getpass()

 

                 #include <unistd.h>

                 char *getpass( const char * prompt );

 

getpass() 함수는 간단히 화면에 출력할 prompt와 입력 받을 버퍼만 적어주면 되므로 무척 간단 합니다.

    ex) buf = getpass("패스워드 입력하세요 : ");

 

2. tcgetattr(), tcsetattr()

 

                 #include <termios.h>
                 #include <unistd.h>

                 int tcgetattr(int fd, struct termios *termios_p);

                 int tcsetattr(int fd, int optional_actions, struct termios *termios_p);

 

tcgetattr(), tcsetattr() 함수 양쪽 모두 터미널을  제어하기 위해 termios 구조체를 사용한다.

터미널은 보통 canonical mode 상태로 있고 이 mode에서 입력은 line으로 입력 받는다. 이 mode를 non-canonical mode 상태로 바꾸어 주어야 한다. 또한 입력 받기 전에 프로그램에서 얼마나 입력 받을 지도 정해 주어야 한다.

 

  ex) struct struct termios old, new; 

  ex) tcsetattr(fileno(stdin), TCSAFLUSH, &new)    // non-canonical mode로

  ex) tcsetattr(fileno(stdin), TCSANOW, &old);        // 다시 canonical mode로




getpass.c.html


tcsetattr.c.html



출처 : http://blog.naver.com/epoll?Redirect=Log&logNo=60004307434

저작자 표시 비영리 변경 금지
신고

update-java-0.5b


1. gksu gedit /var/lib/dpkg/info/oracle-java7-installer.postinst
2. find 명령(Ctrl F)로 
   2-1. Downloading을 찾습니다. 

   2-2. Download done을 찾습니다.
 
이 두 라인 사이에 #을 붙여줍니다. 이렇게요. 
 echo "Downloading..."
#
rm -f $FILENAME
WGETRC=wgetrc wget $PARTNER_URL \
|| fp_exit_with_error "download failed"
rm -f wgetrc
#
 echo "Download done."

3. 문서를 저장하고 빠져나옵니다. 

이제 직접 오라클의 JDK를 설치해야 합니다. 

수동 설치 방법은 다음과 같습니다. 

1. 아래 사이트에서 자바 최신 버전을 다운받습니다. 

이때 Accept License Agreement에 동의해야 합니다. 이 절차가 다이렉트 다운로드 자체를 막아버린 겁니다.
다운받을 파일은 다음과 같습니다. 
Linux x86 - Compressed Binary92.17 MB   jdk-7-linux-i586.tar.gz
 

2. 다운로드 받은 파일의 압축을 풀어줍니다. 디렉토리 명을  java-7-oracle로 잡아줍니다. 

3. 터미널로 압축을 푼 디렉토리로 이동합니다.
아래 명령을 사용해서 라이브러리를 옮겨줍니다. 
sudo mkdir -p  /usr/lib/jvm/ #just in case
sudo mv java-7-oracle/ /usr/lib/jvm/

4. 아래 주소의 스크립트를 다운로드 받습니다. 
http://webupd8.googlecode.com/files/update-java-0.5b
( 첨부 파일로도 추가했습니다. )

5. 터미널로 다운받은 폴더로 이동해서 아래 명령을 쳐줍니다. 
sudo update-java

6. 업데이트가 완료되면 터미널에서 아래 명령어로 자바 버전을 확인해줍니다. 
java -version
javac -version

모두 1.7.0 이상이 나오면 설치 및 업데이트에 성공한 겁니다. 


저작자 표시 비영리 변경 금지
신고

BLOG main image
스스로의 삶에 반할 수 있는 사람이 되어라.. by Thremoa

공지사항

카테고리

분류 전체보기 (19)
어디로가야하나 (2)
모바일 프로그래밍 (2)
윈도우 프로그래밍 (2)
리눅스 프로그래밍 (3)
유틸리티 (1)
펌웨어 (1)

글 보관함

Total : 20,572
Today : 1 Yesterday : 3