'분류 전체보기'에 해당되는 글 256건

  1. 2009.03.10 특수문자 코드 2
  2. 2009.02.12 contab 메일을 받고싶지 않을때.
  3. 2009.02.03 비스타 탐색기 넌 살좀 빼야되..(검색) 1
  4. 2009.02.03 비스타 탐색기 넌 살좀 빼야되..(구성바) 2
  5. 2009.02.03 안티비스타의 출현!! 1
  6. 2009.01.29 vi문자열이 깨지는경우
  7. 2009.01.13 실행파일이 실행이 안될때/ [도스] ... 1
  8. 2008.11.26 2009년 티스토리 달력에는 내사진이 올라가길 바래본다~ 3
  9. 2008.11.17 tomcat6.x log4j.properts 설정
  10. 2008.10.30 JSON javascript 읽기 2

특수문자 코드

개발 TIP 2009. 3. 10. 13:42


특수문자 코드

Character Entity Name Description
" " quotation mark
& & ampersand
< &lt; less-than
> &gt; greater-than
© &copy; copyright
® &reg; registered trademark
&trade; trademark
× &times; multiplication
÷ &divide; division
&bull; bullet
· &middot; middle dot
&sdot; dot operator


root가 90%나 사용하고 있다!
왜일까?

이유는 crontab에서 구동하고있는 ruby process에서 out으로 찍어낸 구문들이 모두 메일로
보내지기위해 쌓이고 있었다.

범인은 var/

var는 생각보다 많은 일을한다.
cronab이 수행하는 작업도 로그로 남기고 메일도 보내고.. 등등등.
/var/log/spool/mqeue 를 살펴봤다.
6G!!

범인은 이녀석이였다.
그래서 찾아보니  crontab에서 메일을 받지 않겠다는 설정을 하면 된다.

vi /etc/crontab
   > MAILTO=""


 or

crontab -e
   > MAILTO=""


비스타가 내놓은 최고의 악풀이 예상되는 탐색기~!
파일을 주로 다루는 나에게 비스타는 업무효율성을 저해하는 요소가 자명하다.

win95부터 꾸준하게 학습한 키보드중심의 네비게이션을 비스타는 많이 무시해버렸기 때문이다.
그중에서 제일 맘에 안드는 "검색" 을 소개한다.

1. 검색


ms가 가장 강력하다고 내놓은 탐색기 상단에 있는 검색 박스이다.
저 작은 박스가 무슨 문제냐고 하겠지만...
사실 저 작은 박스하나가 가지고 있는 힘은 생각보다 막강하다.
그래서 그 막강한 힘으로 인해 내가 격고 있는 불편은 다음 아래와 같다.

a. tabindex의 혼선
항상 탐색기를 띄우면 tabindex가 3번이면 파일 본문까지 이동했는데 저 검색박스로 인해 tabindex가 +1씩 증가해버렸다.  덕분에 키보드가지고 컨트롤 하는데 새로운 학습의 시간이 소요되었다.
그게 무슨 불만이냐고 하겠지만 나에게는 심하게 불만 스러운부분인다.
내가 원한다고 제거가 되는박스도 아니고 ..

b. 파일명의 첫번째 알파벳
XP이하의 버전에서는 파일명의 첫번째 알파벳 혹은 숫자를 키보드를 치면 탐색기 안에서
내가 원하는 파일의 근처까지 커서가 이동한다.
그런데!!
저 검색박스의 등장으로 탐색기가 색인을 하기 시작한다.
덜덜덜... hdd의 웨이퍼 암이 신나게 달리는 소리가 들린다. 
   (공급자 입장)
    - 비스타는 강력해 진 검색기능으로 하위폴더의 내용과 본문을 찾아드립니다.
   (소비자 입장)
    - 기존에 F3가지고 잘 찾고있었 거든요! 왜 그걸 앞에 두어서 힘들게 하신건가요.

c. 제거가 안된다.
내 저 박스하나 지울려고 제어판을 몇번을 드나들었는지 모른다.
하지만 저 박스 지울길이 없다.
Regedit를 통해 지워볼까 했지만 나에게 그런 모험심은 없다. 
제거좀 되었으면 좋겠다.

누차 강조한다.

비스타여~ OS 본업에좀 충실해라.


 

비스타가 자랑스럽게 내 놓은 탐색기때문에 내가 요즘 얼마나 고생하고 있는지 모른다.
정말이지 기존에 TabIndex를 잘 기억하고 있다가 탐색기를 Windows + E 눌러 띄운다음
Tab을 3번 누르면 바로 해당 폴더까지 갔었는데.지금은 !!
이게 뭐냐!!

1. 넌누구냐?

난 너의 이름조차 모르겠다.
하지만 전체 모니터 화면에서 탐색기를 띄울적마다 일정하게 노출되는 본 박스는
용도도 부정확하고 탐색기를 뚱뚱하게 만들어 내고 있다.

본래 탐색기라는것은 파일을 잘 찾고 내가 원하는 위치로 이동하기 편해야 하지만
저 위에 나와있는 정체모를 바(Bar) 로 인해 항상 눈이 부담스럽다.

부디 저 효용성이 부정확한 녀석들은 탐색기 메뉴에 따로 뽑아 넣어줬으면 좋겠다.
아니면 차라리 광고라고 걸어놓고 사용자들에게 비스타를 공짜로 나눠주었으면 좋겠다.

그런데 가만 보면 저것의 용도는
비스타를 가지고 멀티미디어를 다루는 사람을 위해 최적화 된게 아닌가? 하는 생각이든다.

비스타를 가지고 멀티미디어를 꾸민다고?
과연..?
비스트가 mp3을 불법다운로드를 권장하는것은 아닐테고...
그렇다고 프리미어를 능가하는 편집기를 주창하는것도 아닐테고..

부디 바란다.
비스타!! OS 본업에 충실히좀 했으면 좋겠다.

이런 내 생각에 누가 와서 구경해 줄지 모르겠지만..
이것이 MS에 의사결정에 반영이 되었으면 좋겠다는 생각이 든다.




우라질~
욕부터 하고 시작해야겠다.
XP로 다시 설치할 수 도 없는 상황에서 비스타를 쓰려니 속터지고 머리가 아파온다.
진정 비스타는 컴퓨터 가지고 절대 다른것해서는 안되게 한다.

 - 멀티 Process를 잘못 구동했다가는 심하게 느려진다.
 - 업무만 보기에도 내 고성능 PC는 핸드폰보다 성능이 나지 않는다.
 - 도데체 비스타 넌 돈을 얼마나 쳐 발라야 되는가 말이다!!

vi문자열이 깨지는경우에는 언어타입이 맞지 않기 때문이다.
해당 문자열을 맞추는 방법으로 아래 방법을 소개한다.

iconv 를 이용하는 방법
   > iconv -f EUC-KR -t UTF8 tmp.txt > tmp_utf.txt


-rwxr-xr-x  1 neouser adm  45  1월 13 15:11 test.rb
-rwxr-xr-x  1 neouser adm  42  1월 13 15:12 test2.rb

여기 2개의 파일이 있다.
같은 내용을 담고있는 2개의 파일인데 파일 size가 조금 차이가 난다.
test.rb는 ftp로 전송한 파일이고 test2.rb는 test.rb파일을 그데로 복사해서 다시 만든 파일이다.

실행을 하면 아래와 같다.
test.rb : --> : bad interpreter: 그런 파일이나 디렉토리가 없음 (비정상)
test2.rb : --> 112313121321 (정상)

왜그럴까?
이유는 test.rb는 windows에서 만들여졌기 때문이다.

test.rb파일을 vi로 열어보면 하단에 힌트가 나온다 ""test.rb" [도스] 3L, 45C"
파일의 포멧을 바꿔줘야 한다.

1. vi test.rb
2. :set ff=unix


별로 어렵지 않다.
그냥 vi에서 파일 포멧을 바꿔주기만 하면 된다.

-rwxr-xr-x  1 neouser adm  42  1월 13 15:11 test.rb
-rwxr-xr-x  1 neouser adm  42  1월 13 15:12 test2.rb

다시 목록을 보고 ls을 해보면 파일 size가 동일해진것을 볼 수있다.









tomcat6.x로 버전업이 되면서 log4j 에 대하여 새로운 설정 정보들을 가지게 되었다.
아래를 5.5와 6.x 버전으로 변경되면서 Apach 에서 어떠한 정책이 바뀌었는지 한번 보자.


● tomcat5.5
1. Create a file called log4j.properties with the following content and save it into common/classes.

            log4j.rootLogger=DEBUG, R
            log4j.appender.R=org.apache.log4j.RollingFileAppender
            log4j.appender.R.File=${catalina.home}/logs/tomcat.log
            log4j.appender.R.MaxFileSize=10MB
            log4j.appender.R.MaxBackupIndex=10
            log4j.appender.R.layout=org.apache.log4j.PatternLayout
            log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n

2. Download Log4J (v1.2 or later) and place the log4j jar in $CATALINA_HOME/common/lib.
3. Download Commons Logging and place the commons-logging-x.y.z.jar (not commons-logging-api-x.y.z.jar) in $CATALINA_HOME/common/lib with the log4j jar.
4. Start Tomcat



● tomcat6.x
1. Create a file called log4j.properties with the following content and save it into $CATALINA_HOME/lib. 

            log4j.rootLogger=debug, R
            log4j.appender.R=org.apache.log4j.RollingFileAppender
            log4j.appender.R.File=${catalina.home}/logs/tomcat.log
            log4j.appender.R.MaxFileSize=10MB
            log4j.appender.R.MaxBackupIndex=10
            log4j.appender.R.layout=org.apache.log4j.PatternLayout
            log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
            log4j.logger.org.apache.catalina=DEBUG, R

2. Download Log4J (v1.2 or later) and place the log4j jar in $CATALINA_HOME/lib.
3. Build the commons-logging additional component using the extras.xml Ant build script which is part of teh Tomcat source bundle.
4. Replace $CATALINA_HOME/bin/tomcat-juli.jar with output/extras/tomcat-juli.jar.
5. Place output/extras/tomcat-juli-adapters.jar in $CATALINA_HOME/lib.
6. Start Tomcat

특이점을 잘 보았는가?
특이점은 tomcat6.x 원본 소스를 다운받아서 extras.xml을 가지고 ant를 빌드해서
$tomcatHome/bin에 있는 tomcat-juli.jar 을 새로 만들어진 tomcat-juli.jar 으로 대치하고
새로운 부산물인 tomcat-juli-adapters.jar 을 lib폴더에 넣어주라는 것이다.!!

새로운 스팩이 나올적마다 기존에 사용되던 방식에 대해 개선하는것은 좋지만 이번에 경우에는
그다지 맘에 드는 경우라고 볼 수 없다.


간편 다운로드를 제공합니다.




그런데!!
tomat 바꾸었다고 다 이렇게 해야되는가?
그건 아니다.

  <Context-param>
                <param-name>log4jConfigLocation</param-name>
                <param-value>
                        /WEB-INF/classes/log4j.properties
                </param-value>
  </Context-param>


강제지정 하면 된다.




JSON javascript 읽기

javaScript 2008. 10. 30. 13:24

JSON(Javascript Object Notation)은 경량 데이터 교환 형식이다.

사람이 읽기 쉽고, 쓰기 쉽고, 또 기계에게도 해석과 생성이 용이한 형식이며

JavaScript(ECMAScript)에 근거한 부분집합이다.

즉, 자바스크립트로 객체를 기술하는 방법이다.

 

예들 들어, 아래와 같이 씁니다.

var oj = {

   "프로퍼티 이름" : "값",

   "메소드 이름" : function() {alert!('This is method')}

}

 

이것만으로 오브젝트 oj를 만드는 것이 가능하여, oj.프로퍼티이름 으로 값을 얻어 낼 수 있어,

oj.메소드이름() 으로 "This is method"라는 대화창을 표시합니다.

 

또한 Javascript로는 배열도 다음과 같은 꼴로 다룰 수 있는 경우가 자주 있습니다.

var ary = ["값1", "값2", "값3"]

데이터 교환용 형식으로 고려해보면, 이것은 XML과 마찬가지 또는 그 이상으로 가벼우며

간단한 형식이라는 것을 알 수 있습니다.

 

특히 웹 상에 보급하고 있는 언어는 C언어계가 많아, C, C++, C#, 자바, JavaScript, Perl,

Python 등 많은 언어간의 연동을 꾀하기 쉬운 형식이라고 할 수 있겠습니다.

 

그래서 XML을 대신 할 데이터 교환용 형식으로 Ajax에서는 JSON이 보급되고 있습니다.

 

키가 없는 배열에 대해서는 []를 사용한다.

KOR은 obj[0]으로 접근 할수 있고 CHN은 obj[2]로 접근 할수 있다

var obj = ["KOR","USA","CHN"];

 

키가 있는 배열에 대해선 {키:값}을 사용한다.

var man = {name:"홍길동",height:"170"};

 

var result = {

   mans : [

      {name:"홍길동",height:"170"},

      {name:"홍길순",height:"165"}

   ]

}

 

[접근법]

result.mans[0].name; //홍길동

result.mans[1].name; //홍길순

 

XML이 커질수록 XML DOM을 이용하여 객체로 표현하는 것은 매우 수고스러운

작업이 될 것이다.

 

JSON(제이슨)은 이러한 단점을 보완할 수 있는 표기법으로 XML대신 JSON으로

표기된 문자열은 자바스크립트에서 쉽게 객체로 복구하여 사용 할 수 있다.

 

var json_str = "{name:'홍길동',height:'170'}";

var man = eval!("(" + json_str + ")");

alert!(man.name);

 

따라서 서버의 응답이 JSON 문자열이라면 XML DOM을 만들 필요도 없다.

아주 간단히 결과를 객체화하여 사용 할 수 있다.

1 ··· 5 6 7 8 9 10 11 ··· 26 

글 보관함

카운터

Total : / Today : / Yesterday :
get rsstistory!