ps -ef|grep defunct|awk '{print $3}' | xargs kill -9
root 권한으로 로그인해서
위의 명령어를 실행하면 멀티 defunct 좀비들을 다 없앨 수 있다.
이 글은 스프링노트에서 작성되었습니다.
'리눅스' 카테고리의 다른 글
| 좀비프레세스 죽이기 (0) | 2010/07/08 |
|---|---|
| 쉘스크립트 (0) | 2010/05/13 |
| 많이 쓰는 실무 명령어 (0) | 2010/05/13 |
ps -ef|grep defunct|awk '{print $3}' | xargs kill -9
root 권한으로 로그인해서
위의 명령어를 실행하면 멀티 defunct 좀비들을 다 없앨 수 있다.
이 글은 스프링노트에서 작성되었습니다.
| 좀비프레세스 죽이기 (0) | 2010/07/08 |
|---|---|
| 쉘스크립트 (0) | 2010/05/13 |
| 많이 쓰는 실무 명령어 (0) | 2010/05/13 |
<?php
$local_file = "절대경로/화일명";
// set up basic connection
$ftp_server = "server ip";
$user = "ftp id";
$pass = "ftp pw";
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $user, $pass);
// check connection
if ((!$conn_id) || (!$login_result)) {
echo "Ftp connection has failed!";
echo "Attempted to connect to $ftp_server for user $user";
die;
} else {
echo "Connected to $ftp_server, for user $user<br/>";
}
echo "<hr/>";
/*
원격서버에는 절대경로가 아닌 폴더명으로 해야 합니다.
FTP에 접속했으니 기본 폴더명부터 시작해야 합니다.
*/
$server_file = "폴더명/화일명";
/* ftp_put($conn_id, 원격서버에 업로드될 파일명, 현재 서버의 파일명, 모드) */
$upload = ftp_put($conn_id, $server_file, $local_file, FTP_ASCII);
// check upload status
if (!$upload) {
echo "Ftp upload has failed!";
} else {
echo "Uploaded $local_file to $ftp_server as $server_file";
}
// close the FTP stream
ftp_quit($conn_id);
?>
이 글은 스프링노트에서 작성되었습니다.
| ftp_connect 접속후 ftp_put 서버간 화일 전송 (0) | 2010/06/13 |
|---|---|
| PHP 관련함수및 사용 (0) | 2010/05/20 |
| 알아두면 편한 정규표현식 (0) | 2010/05/20 |
| 스킨시스템 기본 로직 (0) | 2010/05/20 |
| 한글, 영문, 숫자, 특수문자 체크하는 함수 (0) | 2010/05/20 |
| 문자열 비슷한지 체크하기!? similar_text (0) | 2010/05/20 |
<PRE style="font:8pt verdana;">
<script language="javascript">
* 꼭 FORM에 name을 정의해 준다!!
* <FORM name="form1" onSubmit="return chkForm(this)">
* input tag에 대한 설명
* <input
* type="text" //체크할 형식
* name="id" //넘어갈이름
* hname="아이디" //경고창에 나타낼 문자열
* option="regId" //어떤 정규식으로 처리할지 선언
* required //꼭 체크를 원하는 항목에 설정
* >
***************************************/
function chkForm(f)
{
var i,currEl;
for(i = 0; i < f.elements.length; i++){
currEl = f.elements[i];
//필수 항목을 체크한다.
if (currEl.getAttribute("required") != null) {
if(currEl.type == "TEXT" || currEl.type == "text" ||
currEl.tagName == "SELECT" || currEl.tagName == "select" ||
currEl.tagName == "TEXTAREA" || currEl.tagName == "textarea"){
if(!chkText(currEl,currEl.hname)) return false;
} else if(currEl.type == "PASSWORD" || currEl.type == "password"){
if(!chkText(currEl,currEl.hname)) return false;
} else if(currEl.type == "CHECKBOX" || currEl.type == "checkbox"){
if(!chkCheckbox(f, currEl,currEl.hname)) return false;
} else if(currEl.type == "RADIO" || currEl.type == "radio"){
if(!chkRadio(f, currEl,currEl.hname)) return false;
}
}
// 입력 페턴을 체크한다.
if(currEl.getAttribute("option") != null && currEl.value.length > 0){
if(!chkPatten(currEl,currEl.option,currEl.hname)) return false;
}
}
}
function chkPatten(field,patten,name)
{
var regNum =/^[0-9]+$/;
var regPhone =/^[0-9]{2,3}-[0-9]{3,4}-[0-9]{4}$/;
var regMail =/^[_a-zA-Z0-9-]+@[._a-zA-Z0-9-]+\.[a-zA-Z]+$/;
var regDomain =/^[.a-zA-Z0-9-]+.[a-zA-Z]+$/;
var regAlpha =/^[a-zA-Z]+$/;
var regHost =/^[a-zA-Z-]+$/;
var regHangul =/[가-힣]/;
var regHangulEng =/[가-힣a-zA-Z]/;
var regHangulOnly =/^[가-힣]*$/;
var regId = /^[a-zA-Z]{1}[a-zA-Z0-9_-]{4,15}$/;
var regDate =/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/;
patten = eval(patten);
if(!patten.test(field.value)){
alert(name + "\n\n항목의 형식이 올바르지 않습니다.");
field.focus();
return false;
}
return true;
}
function chkText(field, name)
{
if(field.value.length < 1){
alert(name);
field.focus();
return false;
}
return true;
}
function chkCheckbox(form, field, name)
{
fieldname = eval(form.name+'.'+field.name);
if (!fieldname.checked){
alert(name);
field.focus();
return false;
}
return true;
}
function chkRadio(form, field, name)
{
fieldname = eval(form.name+'.'+field.name);
for (i=0;i<fieldname.length;i++) {
if (fieldname[i].checked)
return true;
}
alert(name);
field.focus();
return false;
}
</script>
<TABLE BORDER="1">
<FORM name="form1" METHOD="post" ACTION="" onSubmit="return chkForm(this)">
<TR>
<TD>체크박스</TD>
<TD>
<INPUT TYPE="checkbox" NAME="checkbox" VALUE="checkbox" required hname="체크박스를 선택해 주세요.">
</TD>
</TR>
<TR>
<TD>라디오</TD>
<TD>
<INPUT TYPE="radio" NAME="radiobutton" VALUE="1" required hname="라디오를 선택해 주세요.">1
<INPUT TYPE="radio" NAME="radiobutton" VALUE="2">2
</TD>
</TR>
<TR>
<TD>셀렉트</TD>
<TD>
<SELECT NAME="제품종류" required hname="셀렉트를 선택해 주세요.">
<OPTION VALUE=""></OPTION>
<OPTION VALUE="스케이트">스케이트</OPTION>
<OPTION VALUE="프레임">프레임</OPTION>
<OPTION VALUE="휠">휠</OPTION>
<OPTION VALUE="베어링">베어링</OPTION>
<OPTION VALUE="보호장구">보호장구</OPTION>
<OPTION VALUE="기타">기타</OPTION>
</SELECT>
</TD>
</TR>
<TR>
<TD>패스워드</TD>
<TD>
<INPUT TYPE="password" NAME="비밀번호" SIZE="30" VALUE="" required hname="비밀번호를 넣어주세요.">
</TD>
</TR>
<TR>
<TD>텍스트</TD>
<TD>
<INPUT TYPE="text" NAME="이름" SIZE="30" VALUE="" required hname="이름을 넣어주세요.">
</TD>
</TR>
<TR>
<TD>이메일</TD>
<TD>
<INPUT TYPE="text" NAME="이메일" SIZE="30" VALUE="" required option="regMail" hname="이메일을 넣어주세요.">
</TD>
</TR>
<TR>
<TD>전화번호</TD>
<TD>
<INPUT TYPE="text" NAME="집전화" SIZE="30" VALUE="" required option="regPhone" hname="전화번호를 넣어주세요.">
</TD>
</TR>
<TR>
<TD>날짜</TD>
<TD>
<INPUT TYPE="text" NAME="날짜" VALUE="" required option="regDate" hname="날짜를 넣어주세요.">
</TD>
</TR>
<TR>
<TD>글</TD>
<TD>
<TEXTAREA NAME="글" COLS="50" ROWS="5" required hname="남길글을 넣어 주세요."></TEXTAREA>
</TD>
</TR>
<TR>
<TD> </TD>
<TD>
<INPUT TYPE="submit" NAME="Submit" VALUE="확인">
</TD>
</TR>
</FORM>
</TABLE>
<TABLE BORDER="1">
<FORM name="form2" METHOD="post" ACTION="" onSubmit="return chkForm(this)">
<TR>
<TD>체크박스</TD>
<TD>
<INPUT TYPE="checkbox" NAME="checkbox" VALUE="checkbox" required hname="체크박스를 선택해 주세요.">
</TD>
</TR>
<TR>
<TD>라디오</TD>
<TD>
<INPUT TYPE="radio" NAME="radiobutton" VALUE="1" required hname="라디오를 선택해 주세요.">1
<INPUT TYPE="radio" NAME="radiobutton" VALUE="2">2
</TD>
</TR>
<TR>
<TD> </TD>
<TD>
<INPUT TYPE="submit" NAME="Submit" VALUE="확인">
</TD>
</TR>
</FORM>
</TABLE>
</PRE>
이 글은 스프링노트에서 작성되었습니다.
| 자바스크립트(Attribute) & 정규표현식을 이용한 폼체크 (0) | 2010/06/10 |
|---|---|
| 정규식을 이용한 ID / PW 검사 (0) | 2010/06/10 |
|