파일내용중에 원하는 문자열 존재여부
글쓴이 : null (2003년 08월 22일 오후 03:37) 읽은수: 3,387 [ 쉘 # 트랙백(0) ]
#!/bin/sh
# usage : grep_in_file [find string]
# 현재의 디렉토리의 파일들의 내용중에 [fund string] 가 있나 없나를 찾아줌


# in file search
finding()
{

for filename in `ls`
do
if [ -f "$filename" ]
then
result=`cat $filename | grep $1 | wc -l`
if [ $result > 0 ]
then
echo "$filename $result [ OK ] ";
fi
fi
done
return 0
}

if [ $1 ]
then
finding "$1"
else
echo "usage : grep_in_file [find string]"
fi
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/06/03 15:12 2004/06/03 15:12
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/197

똑같은 삽과 똑같은 일거리를 준다고 해도 삽을 갖고 일을 하는 사람의 역
량에 따라 그 효과는 많은 차이를 보이게 된다.

1단계 : Beginner
삽을 주면서 구덩이를 파라고 하면 조금 엉성한 폼으로 묵묵히 삽질을 시
작하는 대부분
의 사람들이 속한다.
간혹 삽자루를 분질러 먹거나 삐뚤삐뚤한 구덩이를 파기도 한다.

2단계 : User
삽질맨 이라고 불릴 정도의 능력을 보유한다. 이 정도가 되면 자기가 원하
는 삽은 스스
로 고르는 능력을 가지며, 어느정도 노하우를 갖고 있다.

3단계 : Power User
삽계의 매니아 수준이다. 삽에 관련된 일반적인 지식의 대부분을 소유하
고 있고,
Beginner들의 수많은 질문에 대답할 수 있는 역량을 보유한다.
이 쯤 되면 어떤 삽만을 고집하기도 하고 직접
삽을 튜닝하기도 하고 꾸미는데에도 시간을 투자한다.

4단계 : Developer
삽의 전문가이다. 이 사람들은 시중에 나온 대부분의 삽을 직접 제작하는
사람들이다.
삽을 두세개쯤 허리에 매고 다니면서 여기저기 삽질을 하며 삽의 기능을
테스트 하기도
한다. 이쯤 되면 기본적인 삽질은 한손으로도 가능해진다.


5단계 : Hacker
전문가 수준을 넘어서 삽으로 할 수 있는 더 다양한 일을 모색한다.
나는 한 해커가 삽으로 밥을 퍼먹는것을 본 적이 있다.

6단계 : Guru
이른바... 삽과 하나가 되는 경지. "삽위일체" 의 경지에 도달한 인물들
을 뜻한다. 어느
날 밤.. 엄청난 소리가 하늘과 땅을 진동하는 것이었다.. 모든 사람들이
놀라 바라보니
한 Guru 가 삽한자루로 산을 깍아 버리는 중이었던 것이었다.
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/05/29 14:46 2004/05/29 14:46
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/45

html 페이지 파일다운로드

$ofile = "../../downpaper/paper/$p_id";
Header("Content-type: application/octet-stream");
Header("Content-Disposition: attachment; filename=$p_id");
Header("Content-Transfer-Encoding: binary");
Header("Content-length: ".filesize("$ofile"));
Header("Connection: close");
Header("Pragma: no-cache");
Header("Expires: 0");
readfile($ofile);
exit();



?>
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/05/28 16:22 2004/05/28 16:22
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/44

html 미리보기


preview=function(){
myPreview1.innerHTML=source.value;
};
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/05/14 11:49 2004/05/14 11:49
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/43

서버 시간설정하기

[root@racego /]#
[root@racego /]#
[root@racego /]#
[root@racego /]# date
2004. 05. 12. (수) 13:48:24 KST
[root@racego /]# date
2004. 05. 12. (수) 13:49:54 KST
[root@racego /]# rdate -s time.bora.net && clock -w
[root@racego /]# date
2004. 05. 12. (수) 14:42:03 KST
[root@racego /]#
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/05/12 14:42 2004/05/12 14:42
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/196



function number_format(numstr) {
var numstr = String(numstr);
var re0 = /(d+)(d{3})($|..*)/;
if (re0.test(numstr))
return numstr.replace(
re0,
function(str,p1,p2,p3) { return number_format(p1) + "," + p2 + p3; }
);
else
return numstr;
}
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/05/12 10:46 2004/05/12 10:46
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/42

form 에서 elements 배열을 못찾으면 일단

다른 폼이 존재하는지 확인하고,

폼의 이름을 체크해라~!

그 객체가 없다고 하면 왜 그 객체가 없는지 찾아라.

자바스크립트는 자바와 관련 없고, 서버와도 관련 없다.

자바스크립트 오류시 브라우저에, 소스보기에 충실해라~!
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/04/21 15:50 2004/04/21 15:50
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/41

mysql 모델링 툴 어떤 것이 있습니까?
작성자 제창욱 작성일 2003-06-30 18:13:48 조회수 331

안녕 하세요.

질문이 있어서 이렇게 글 남깁니다.



mysql 모델링 툴 어떤 것이 있는지요???



예를 들어서 oracle에서 사용 할 수 있는 ERWin, 파워디자인 과 같은 모델링 툴이 mysql도 있습니까?



있다면 답변해 주시면 감사하겠습니다.



읽어 주셔서 감사합니다. 그럼 수고 하세요. ^^


이 글에 대한 댓글이 총 3건 있습니다.
님이 말씀하신 ERWin같은 프로그램은 오라클용 디비툴이라기 보다는



어떠한 디비에나 적용할수 있는 프로그램이라구 하는게 적당할듯 싶네요.



ERWin , ERStudio , UML 등의 프로그램으로

디비를 잘 설계하시면 될듯 싶네요.



MySql을 지원하지 않은 모델링 프로그램들이 많기는 하지만 프로그램에 의지하지 마시고, 설계를 탄탄히 하셔서 기초를 튼튼하게 쌓으시기를 권장합니다.



툴이라는것이 마우스로 쭉쭉 그으면 스키마들 잘 만들어지는건 확실하지만 기초를 튼튼하게 하시면 그런 툴 없이도 메모장이나 볼펜으로도 다 설계가 가능 하답니다.



그래도 정 툴쪽에 관심이 있으시다면 저는 시대에 뒤떨어지는지 몰라도 -_- UML 권장 해 드립니다.



서점 가시면 UML관련 책자 몇개 있을꺼에요 ^^



풍만한 지식을 안고 사시기를 바랍니다.

레스큐님이 2003-07-01 05:20:43에 작성한 댓글입니다.ERWin이 오라클용이라고 말한적은 없는데요..--;



제가 알고 싶은건 스키마까지 생성이 되는 모델링 툴이 있는지 알고 싶어서 물어 보았습니다.



100개정도의 테이블을 직접 코딩한다는건 부담스러워서 ERWin같은 mysql용 툴이 있는지 알고 싶어서 질문을 드린 것입니다.

제창욱님이 2003-07-01 10:43:22에 작성한 댓글입니다.

ErWin에서도 MySQL 리버스엔지니어링이 가능합니다.

connection 부분에서 odbc로 설정을 하면 되지요

[메뉴] - [Tools] - [Reverse Engineer...]



1. Select Templete

1) ODBC/Generic 선택

2) Ver : 3.0

[Next]

2. Set Options

: 별 작업없이 [Next]

3. Connection

1) 사용자명 입력

2) 비번 입력

3) Database 에서

myodbc3-test 선택 (물론 이전 mysql odbc 가 설치되어야 겠지요)

[Connect]

4) 접속실패후

5) 컴퓨터 데이터 원본에서 myodbc 선택



이후부터는 님이 보는대로 설정할수 있으므로 생락하겠읍니다.



행복한 하루...
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/04/20 16:17 2004/04/20 16:17
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/40

음.. 시스템의 전반적인 구성 환경은 다음과 같이 하면

/proc # procinfo
Linux 2.4.18-3 (bhcompile@stripples.devel.redhat.com) (gcc 2.96 20000731 ) #1 Thu Apr 18 07:31:07 EDT 2002 1CPU [zodiac.ath.cx]

Memory: Total Used Free Shared Buffers Cached
Mem: 126808 71620 55188 0 10580 31528
Swap: 128512 0 128512

Bootup: Tue Nov 11 20:32:39 2003 Load average: 0.08 0.07 0.08 1/49 1314

user : 0:00:56.75 5.2% page in : 36734 disk 1: 3257r 2852w
nice : 0:00:00.00 0.0% page out: 26190
system: 0:00:37.00 3.4% swap in : 1
idle : 0:16:33.00 91.4% swap out: 0
uptime: 0:18:06.74 context : 50609

irq 0: 108675 timer irq 9: 41411 eth0
irq 1: 2 keyboard irq 10: 2705 eth2
irq 2: 0 cascade [4] irq 11: 10 eth1
irq 4: 5321 serial irq 12: 10 eth3
irq 5: 14 i91u irq 14: 6093 ide0
irq 6: 2 irq 15: 459 ide1
irq 8: 1 rtc

메모리 사용울, 부팅시간, 시스템 부하 등이 나오고 IRQ 를
보면 LAN 카드, IDE 디스크 수량이 나옵니다. 그리고 SCSI 디스크는안보이고 SCSI 어댑터만 보이므로

# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 03 Lun: 00
Vendor: HP Model: C1533A Rev: AN01
Type: Sequential-Access ANSI SCSI revision: 02

하면 SCSI 디바이스가 보입니다. (여기는 DAT 만 하나..)
CPU 정보는 이렇게 하면 됩니다.

/proc # cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 5
model : 4
model name : Pentium MMX
stepping : 3
cpu MHz : 200.458
fdiv_bug : no
hlt_bug : no
f00f_bug : yes
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr mce cx8 mmx
bogomips : 399.76

Pentium MMX 200 이라 좀 구려요 ^^
(윈도2000은 도저히 따라올 수 없는 리눅스만의 강점 !)

그많은 유닉스를 다 하나씩 열거할 수는 없고 Solaris 의 경우만 보면

/ # /usr/platform/sun4u/sbin/prtdiag -v
System Configuration: Sun Microsystems sun4u SUNW,Sun-Blade-2000 (2 X UltraSPARC-III+)
System clock frequency: 150 MHZ
Memory size: 2GB

==================================== CPUs ====================================
E$ CPU CPU Temperature
CPU Freq Size Impl. Mask Die Ambient
--- -------- ---------- ------ ---- -------- --------
0 900 MHz 8MB US-III+ 2.3 69 C 27 C
1 900 MHz 8MB US-III+ 2.3 65 C 26 C

================================= IO Devices =================================
Bus Freq
Brd Type MHz Slot Name Model
--- ---- ---- ---------- -------------------------------- ----------------------
0 pci 33 1 SUNW,m64B (display) SUNW,370-4362
0 pci 66 4 SUNW,qlc-pci1077,2200.5 (scsi-fc+
0 pci 33 5 ebus/parallel-ns87317-ecpp (para+
0 pci 33 5 ebus/serial-sab82532 (serial)
0 pci 33 5 network-pci108e,1101.1 (network) SUNW,pci-eri
0 pci 33 5 firewire-pci108e,1102.1001 (fire+
0 pci 33 6 scsi-pci1000,f.37 (scsi-2)
0 pci 33 6 scsi-pci1000,f.37 (scsi-2)

============================ Memory Configuration ============================
Segment Table:
-----------------------------------------------------------------------
Base Address Size Interleave Factor Contains
-----------------------------------------------------------------------
0x0 2GB 2 BankIDs 0,2

Bank Table:
-----------------------------------------------------------
Physical Location
ID ControllerID GroupID Size Interleave Way
-----------------------------------------------------------
0 0 0 1GB 0
2 0 0 1GB 1

Memory Module Groups:
--------------------------------------------------
ControllerID GroupID Labels
--------------------------------------------------
0 0 J0100,J0202,J0304,J0406

=============================== usb Devices ===============================

Name Port#
------------ -----
keyboard 3
mouse 4

============================ Environmental Status ============================
Fan Speeds:
----------------------------
Fan Device Speed
----------------------------
system 28%
cpu 19%
power-supply 100%

================================ HW Revisions ================================
ASIC Revisions:
---------------
pci: Rev 5
pci: Rev 5
ebus: Rev 1

System PROM revisions:
----------------------
OBP 4.5.16 2002/05/01 19:28
POST 4.5.16 2002/05/01 22:34

이렇게 Sun Blade 2000 의 예만 들어 보지요.
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/04/16 15:44 2004/04/16 15:44
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/195

PHP Scripting-PHP Script 예제 code

여기에서는 간단한 예제를 보여 드리겠습니다~

1) whois 검색
whois 검색이라는 것은 어떤 도메인이 등록이 되어 있는지 등록되어있지 않은지를 확인하고 만약 등록되어 있다면
누구에게 등록이 되어 있는지를 검색하는 것을 뜻한다는 것은.. 다들 아실것입니다.
여기의 Code는 단순히 최상위도메인을 .kr이나 아니면 국제 도메인으로만 나누고있습니다.
일반적으로 Whois 검색은 kr 도메인의 경우엔 whois.nic.or.kr , 국제 도메인은 whois.networksolutions.com에서 하고 43번 표준 Port에서 whois서비스가 이루어 집니다.


-------------whois.php--------------------------------------------------
#!/usr/local/bin/php -q
//인자의 개수가 명령어 , 찾을 도메인 .. 이렇게 해서 두개가 되어야 합니다.
if($argc < 2)
die("사용법 : whois.php domain
");

//도메인 검색할때는 도메인과 최상위 도메인만을 적어야 합니다.
if(eregi("^http://" , $domain) || eregi("^www" , $domain))
die("사용법 : http 나 www 는 제외하고 써 주세요
");

$domain = $argv[1];
$port = 43;

//도메인을 . 으로 나누는것은 도메인과 최상위 도메인을 구분하기 위한 것입니다.
$tl = explode("." , $domain);
$tl_count = count($tl);

//일반적으로 도메인은 domain.com 이나 domain.co.kr의 형태입니다.
if($tl_count < 2 || $tl_count > 3)
die("에러 : 잘못된 도메인 입니다
");

//. 이 두개이면 .com이나 .org의 형태이고 세개이면 .co.kr이나 .or.kr의 형태이므로
//두개이면 국제도메인 , 세개이면 국내 도메인입니다.
if($tl_count == 2)
$hostname = "whois.networksolutions.com";
else if($tl[2] == "kr")
$hostname = "whois.nic.or.kr";
else
die("국제 도메인과 kr 도메인만 검색 가능합니다
");

//지정한 Host의 43번 Port로 Socket을 엽니다
$fp = fsockopen($hostname , 43);

if(!$fp)
die("$hostname 의 $port 번 Port에 접속할 수 없습니다
");

$domain .= "
";

//검색하고자 하는 Domain을 전송합니다.
fwrite($fp , $domain);

//결과를 읽어와서 화면에 출력합니다.
while(!feof($fp)){
echo fgets($fp , 128);
}

//열려진 Socket을 닫습니다.
fclose($fp);
?>
-----------------------------------------------------------------------




2) sms
sms라는 것은 휴대폰으로 간단한 메시지(문자)를 보내는 것을 말하고 여기에서는 019로 문자 메시지를 보내는 것을 구현 하고 있습니다.
이것은 단순히 http://www.lg019.co.kr 에 있는 CGI를 불러오는 것으로서 문자메시지를 전송하게 됩니다.

(참고)
이 SMS는 019휴대폰으로만 메시지 전송이 가능한데 기타 다른 이동통신 서비와는 달리 019는 휴대폰 가입자가 이에대한 요금을 지불 (월정액 2000원)하고 메시지를 보내는 사람은 무료로 메시지를 보내도록 하고 있기때문에 구현하기가 쉬워집니다.
기타 다른 이동통신 서비스로 문자메시지를 보낼경우엔 웹에 Login을 해야 하기 때문에 이에대한 Cookie를 구현해야 합니다.



-------------sms.php--------------------------------------------------
#!/usr/local/bin/php -q
//명령어를 포함하여 필요한 인자는 모두 7개 입니다.
if($argc < 7)
die("sms.php 받는사람번호 보내는사람이름 연락받을번호1 연락받을번호2 연락받을번호3 내용
");

$number = eregi_replace(" " , "+" , $argv[1]);
$sender = eregi_replace(" " , "+" , $argv[2]);
$resp1 = eregi_replace(" " , "+" , $argv[3]);
$resp2 = eregi_replace(" " , "+" , $argv[4]);
$resp3 = eregi_replace(" " , "+" , $argv[5]);
$mesg = eregi_replace(" " , "+" , $argv[6]);

//70 Byte이상은 받지 않더군여~
if(strlen($mesg) > 70)
die("한글은 35자 영문은 70자 이하로 써 주셔여~
");

$remote_host = "http://www.lg019.co.kr/message/onesend.cgi?";
$remote_host.= "number=$number&sender=$sender&resp_number1=$resp1&";
$remote_host.= "resp_number2=$resp2&resp_number3=$resp3&message=$mesg";

$fp = fopen($remote_host , "r");

if(!$fp)
die("전송 실패
");
else{
echo "019$number 로 메시지를 전송하였습니다
";
fclose($fp);
}
?>
--------------------------------------------------------------------




※ 참고
저는 이것을 서버관리할때 PortSentry의 명령어로 사용했습니다. 그러니까.. 누군가 제 서버에 PortScan을 하면 바로 제 휴대폰으로 문자 메시지가 날라오게 해놨었져~ ㅋㅋㅋㅋㅋ

※ 주의사항
sms에서 한가지 주의할 점은 PortSentry의 오동작입니다. 정상적으로 Web으로 접속하는 사용자도 PortScan으로 감지하는 경우가 있더군여~ 이케 되면 평생받을 문자를 하루만에 다 받게 됩니다...
저는 이때 아마 세 보지는 않았지만 2000개 정도의 문자를 받았답니다.. 이거 주금입니다.. ㅋㅋ
크리에이티브 커먼즈 라이센스
Creative Commons License
이올린에 북마크하기

Posted by 홍반장

2004/04/01 18:54 2004/04/01 18:54
Response
No Trackback , No Comment
RSS :
http://tcbs17.cafe24.com/tc/rss/response/194

« Previous : 1 : ... 80 : 81 : 82 : 83 : 84 : 85 : 86 : 87 : 88 : ... 101 : Next »

블로그 이미지

- 홍반장

Archives

Recent Trackbacks

Calendar

«   2024/11   »
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Statistics Graph

Site Stats

Total hits:
244957
Today:
235
Yesterday:
1073