#!/usr/bin/expect -fspawn ssh HOSTNAMEexpect "login:"send "username\r"expect "Password:"send "password\r"interact spawn 명령어 : 명령어를 실행한다.expect “특정문자열” : “if 특정 문자열이 나타나면” 정도의 의미send “보낼문자열\r” : 문자열을 전송한다. \r은 엔터키를 의미한다.interact : 이제는 expect를 끝내고 사용자에게 제어권을 넘긴다.set 변수 [lindex $argv 0] : 0번째 명령행 인자를 변수에 지정한다.send “$변수” : 변수에 저장된 문자열을 전송한다.expect eof : expect 종료
Java에서 Stream을 이용해서 read, write를 할때 버퍼를 얼마의 크기로 설정해야 할지 고민이 될때가 있다.이럴 때는 다음과 같이 시스템에 최적인 크기를 알아내서 사용하면 최고의 성능이 나온다.아래의 코드는 디스크에서 몇바이트 씩 읽는가를 BufferedXXXStream이 알아내서 사용한다.일반적으로 안드로이드는 8192이다. 인터넷이나 책의 예제는 1024로 설정하는데 8192로 설정하면 가장 적합하다. class IdealBlockSize { // You could alternatively use BufferedInputStream and System.in . private static class MyBufferedOS extends BufferedOutputStream { public ..
안드로이드에서 쓰레드 루프 중에 쓰레드를 멈추고 Modal Dialog를 받는 방법을 예제로 만들어 보았다. 동기화에 사용되는 오브젝트는 Object lock으로 wait/notify를 사용하였다. package com.example.a1000149.androidthreadtest; import android.content.DialogInterface;import android.support.v7.app.AlertDialog;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.KeyEvent;import android.view.View;import ..
Java에서 MySQL을 연동할때 JDBC로 연동을 하느냐, 아니면 MySQL connector로 직접 연동을 하느냐 고민이 많았다. 결론적으로는 JDBC는 MySQL connector library jar가 필요하고 두가지는 똑같다고 할수 있다. 윈도우에서 ODBC냐 아니냐와는 다른 문제였다. 아무튼 다음과 같이 코드를 작성하고 리눅스 서버 콘솔에서 테스트 하면 Java에서 MySQL을 연결할수 있는지 테스트를 할수 있다. MySQL connector가 없으면 ClassNotFoundException이 발생하며, 기타 DB관련 문제는 SQLException이 발생한다. import java.sql.*; /* javac MySQLTest.java java -classpath .:./mysql-connec..
Python 프로그램을 python xxx.py 형태가 아닌 ./src.py로 실행하는 방법에 대해서 알아보자. 스크립트 프로그램 언어인 파이썬은 항상 python xxx.py 형식으로 실행을 시켜야 한다. 파이썬은 이제 대중적 프로그램 언어가 되어서 시스템 관리에도 많이 이용이 되고 있다. 하지만 xxx.sh처럼 ./xxx.sh로 실행하게 하려면 다음과 같이 하면된다. 단, 이 문장은 모든 xxx.py의 최상단에 위치하여야 한다. #!/usr/bin/python 그리고 실행할때는 다음과 같이 실행권한을 준다. chmod +x xxx.py 실행할때는 ./xxx.py로 실행한다.
Python을 사용하다 보면, 소스코드에서 썼던 한글이 깨질 경우가 있다. 이러한 원인은 소스코드 자체는 utf-8로 저장되어 있는데, 실행하는 콘솔이 euc-kr로 실행하거나 혹은 그 반대일 경우이다. 이럴때 명확하게 소스코드 파일 자체가 특정 인코딩으로 저장되었다고 선언을 해주어야 한다. 소스코드 최상단에 다음과 같이 입력하면 된다. #-*- coding: utf-8 -*- euc-kr의 경우 utf-8 대신에 euc-kr을 설정해주면 된다.
- Total
- Today
- Yesterday