qmHandler 실행시 Calling system script to terminate qmail... 부분에서 더이상 진행이 안되는 현상이 있다.
확인 결과 qmail-remote 가 qmail stop 명령어로는 정지 되지 않는다.
killall qmail-remote 후 실행하자.
2012년 9월 21일 금요일
2012년 9월 20일 목요일
전화번호 마스크용 스크립트
1. 전화번호 마스크용 스크립트
function MaskPhon( obj ) {
obj.value = PhonNumStr( obj.value );
}
function PhonNumStr( str ){
var RegNotNum = /[^0-9]/g;
var RegPhonNum = "";
var DataForm = "";
// return blank
if( str == "" || str == null ) return "";
// delete not number
str = str.replace(RegNotNum,'');
if( str.length < 4 ) return str;
if( str.length > 3 && str.length < 7 ) {
DataForm = "$1-$2";
RegPhonNum = /([0-9]{3})([0-9]+)/;
} else if(str.length == 7 ) {
DataForm = "$1-$2";
RegPhonNum = /([0-9]{3})([0-9]{4})/;
} else if(str.length == 9 ) {
DataForm = "$1-$2-$3";
RegPhonNum = /([0-9]{2})([0-9]{3})([0-9]+)/;
} else if(str.length == 10){
if(str.substring(0,2)=="02"){
DataForm = "$1-$2-$3";
RegPhonNum = /([0-9]{2})([0-9]{4})([0-9]+)/;
}else{
DataForm = "$1-$2-$3";
RegPhonNum = /([0-9]{3})([0-9]{3})([0-9]+)/;
}
} else if(str.length > 10){
DataForm = "$1-$2-$3";
RegPhonNum = /([0-9]{3})([0-9]{4})([0-9]+)/;
}
while( RegPhonNum.test(str) ) {
str = str.replace(RegPhonNum, DataForm);
}
return str;
}
2. 입력박스
전화번호 : <input type='text' maxlength='13' onkeyup ='MaskPhon(this);' onkeydown='MaskPhon(this);' >
function MaskPhon( obj ) {
obj.value = PhonNumStr( obj.value );
}
function PhonNumStr( str ){
var RegNotNum = /[^0-9]/g;
var RegPhonNum = "";
var DataForm = "";
// return blank
if( str == "" || str == null ) return "";
// delete not number
str = str.replace(RegNotNum,'');
if( str.length < 4 ) return str;
if( str.length > 3 && str.length < 7 ) {
DataForm = "$1-$2";
RegPhonNum = /([0-9]{3})([0-9]+)/;
} else if(str.length == 7 ) {
DataForm = "$1-$2";
RegPhonNum = /([0-9]{3})([0-9]{4})/;
} else if(str.length == 9 ) {
DataForm = "$1-$2-$3";
RegPhonNum = /([0-9]{2})([0-9]{3})([0-9]+)/;
} else if(str.length == 10){
if(str.substring(0,2)=="02"){
DataForm = "$1-$2-$3";
RegPhonNum = /([0-9]{2})([0-9]{4})([0-9]+)/;
}else{
DataForm = "$1-$2-$3";
RegPhonNum = /([0-9]{3})([0-9]{3})([0-9]+)/;
}
} else if(str.length > 10){
DataForm = "$1-$2-$3";
RegPhonNum = /([0-9]{3})([0-9]{4})([0-9]+)/;
}
while( RegPhonNum.test(str) ) {
str = str.replace(RegPhonNum, DataForm);
}
return str;
}
2. 입력박스
전화번호 : <input type='text' maxlength='13' onkeyup ='MaskPhon(this);' onkeydown='MaskPhon(this);' >
2012년 9월 18일 화요일
2012년 9월 13일 목요일
Linux - Search and replace over multiple files.
예제.
위의 코드를 아래처럼 변경 하고 싶을 때.
확장자가 php인 파일에서 ../includes/style.css 를 admin.css 로 모든 부분 변경.
Linux - Search and replace over multiple files..
<link rel="stylesheet" type="text/css" href="../includes/style.css">
위의 코드를 아래처럼 변경 하고 싶을 때.
<link rel="stylesheet" type="text/css" href="admin.css">
perl -pi -w -e 's/\.\.\/includes\/style\.css/admin\.css/g;' *.php
확장자가 php인 파일에서 ../includes/style.css 를 admin.css 로 모든 부분 변경.
Linux - Search and replace over multiple files..
2012년 9월 10일 월요일
qmail queue 주기적 정리,삭제 기능.
많은 양의 메일이 큐에 쌓일경우 아래와 같이 설정해주시면
매번 큐를 삭제하지 않고도 주기적으로 큐 정리가 가능해집니다.
#touch /var/qmail/control/queuelifetime ->> 파일 생성
#echo "86400" > /var/qmail/control/queuelifetime -> 큐 대기시간 하루
/etc/init.d/qmail reload --> qmail 재로드
/var/qmail/bin/qmail-showctl | grep life --> 확인
queuelifetime 시간에 따른 재발송 회수
86400은 대략 6회정도.
How often does qmail retry to send email? |
Each message has its own retry schedule. The longer a message remains undeliverable, the less frequently qmail tries to send it. The retry schedule is not configurable. The following table shows the retry schedule for a message that's undeliverable to a remote recipient until it bounces. Local messages use a similar, but more frequent, schedule.
Delivery Attempt | Seconds | D-HH:MM:SS |
1 | 0 | 0-00:00:00 |
2 | 400 | 0-00:06:40 |
3 | 1600 | 0-00:26:40 |
4 | 3600 | 0-01:00:00 |
5 | 6400 | 0-01:46:40 |
6 | 10000 | 0-02:46:40 |
7 | 14400 | 0-04:00:00 |
8 | 19600 | 0-05:26:40 |
9 | 25600 | 0-07:06:40 |
10 | 32400 | 0-09:00:00 |
11 | 40000 | 0-11:06:40 |
12 | 48400 | 0-13:26:40 |
13 | 57600 | 0-16:00:00 |
14 | 67600 | 0-18:46:40 |
15 | 78400 | 0-21:46:40 |
16 | 90000 | 1-01:00:00 |
17 | 102400 | 1-04:26:40 |
18 | 115600 | 1-08:06:40 |
19 | 129600 | 1-12:00:00 |
20 | 144400 | 1-16:06:40 |
21 | 160000 | 1-20:26:40 |
22 | 176400 | 2-01:00:00 |
23 | 193600 | 2-05:46:40 |
24 | 211600 | 2-10:46:40 |
25 | 230400 | 2-16:00:00 |
26 | 250000 | 2-21:26:40 |
27 | 270400 | 3-03:06:40 |
28 | 291600 | 3-09:00:00 |
29 | 313600 | 3-15:06:40 |
30 | 336400 | 3-21:26:40 |
31 | 360000 | 4-04:00:00 |
32 | 384400 | 4-10:46:40 |
33 | 409600 | 4-17:46:40 |
34 | 435600 | 5-01:00:00 |
35 | 462400 | 5-08:26:40 |
36 | 490000 | 5-16:06:40 |
37 | 518400 | 6-00:00:00 |
38 | 547600 | 6-08:06:40 |
39 | 577600 | 6-16:26:40 |
40 | 608400 | 7-01:00:00 |
2012년 9월 8일 토요일
onmouseover 삭제
onmouseover 기능을 해제하려고 unbind,bind,off 기능을 무쟈게 해메이다 알게 됬다.
................
한편, <td onclick=”"> 와 같이 정적으로 onclick이 설정 된것은 unbind()로 해제할수 없는데
이 경우에는 $(‘.td’).removeAttr(“onclick”); 을 사용해서 해제 해야한다.
제길~!!! 내 1시간.....
출처
2012년 8월 16일 목요일
rename을 이용한 하위 디렉토리 포함 확장자 변경.
아래 명령어는 현재 디렉토리의 하위디렉토리까지 모두
jsp확장자를 모두 php확장자로 변환하는 명령어.
find와 rename을 이용한다.
jsp확장자를 모두 php확장자로 변환하는 명령어.
find와 rename을 이용한다.
find . -name "*.jsp" -exec rename .jsp .php {} \;
피드 구독하기:
글 (Atom)