달력

3

« 2024/3 »

  • 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
  • 31

1. 찾고자 하는 시간의 기준이 되는 파일을 생성한다.
2. 위에서 생성한 파일보다 최신의 파일을 찾는다.


예) 2011년 07월 25일 18:00 이후에 만들어진 파일을 찾고자 할 경우 

1. 특정 시간(2011년 07월 25일 18:00)에 생성된 파일 만들기
$ touch -t 201107251800 start.lucky

2. 특정 시간(2011년 07월 25일 18:00)에 생성된 파일보다 나중에 만들어진 파일 찾기
$ find ./ -name *.class -type f -newer start.lucky



:
Posted by 뽀기

#!/bin/sh

# 파일을 체크할 홈
CLASS_HOME=/EAR/WEB/WEB-INF/classes/
# 변경 여부를 확인할 기준 파일
LOCK_FILE=/tmp/modified.lock
# 오늘 날짜
TODAY=`date "+%Y-%m-%d"`
# 결과 파일
RESULT_FILE=/Script/modified_files_"$TODAY".list

echo "###############################################################"
echo ""
echo "  Get list of files modified today ($TODAY)  "
echo ""
echo " * CLASS_HOME = $CLASS_HOME"
echo " * RESULT_FILE = $RESULT_FILE"
echo ""

# 오늘 00시 00분 기준의 파일 생성
touch -t `date +%m%d0000` $LOCK_FILE

# 홈으로 이동
cd $CLASS_HOME

# 오늘 00시 00분 이후로 변경된 파일을 찾아서 결과 파일에 작성
find ./ -newer $LOCK_FILE -type f -print | sed 's/^.\///g'> $RESULT_FILE

# 기준 파일 삭제
rm $LOCK_FILE

echo "  $RESULT_FILE is created. Check it!!!!!"
echo ""
echo "###############################################################"

:
Posted by 뽀기

오랜만에 C로 프로그램 테스트 중인뎁.. 컴파일 열라 안된다. ㅜㅜ


[CISD-INTCH01 284] src2 > make
gcc -m64 -O -I. -I../jms/c_api -shared -fPIC  eaiClientSample_unix.c -o eaiClientSample_unix.o
gcc -m64 -O -I. -I../jms/c_api -shared -fPIC  EAIJMSClient4Unix.c -o EAIJMSClient4Unix.o
gcc -m64 -O -I. -I../jms/c_api -shared -fPIC  EAIMessage.c -o EAIMessage.o
gcc -m64 -O -I. -I../jms/c_api -shared -fPIC  EAIJMS_Util.c -o EAIJMS_Util.o
gcc -O -fPIC -m64 -L../jms/c_api/lib -lstc_msapi -lstc_mscommon -lstc_msclient -lstc_mscapi -lnsl -lsocket  eaiClientSample_unix.o EAIJMSClient4Unix.o EAIMess
age.o EAIJMS_Util.o -o eaiJmsClient4SunOs
정의되지 않음                   첫번째 참조된
 기호                       파일:
__1cDstdNbasic_ostream4Ccn0ALchar_traits4Cc___2l6Mh_r1_ ../jms/c_api/lib/libstc_mscommon.so
__1cDstdNbasic_ostream4Ccn0ALchar_traits4Cc___2l6Mi_r1_ ../jms/c_api/lib/libstc_mscommon.so
__1cDstdNbasic_ostream4Ccn0ALchar_traits4Cc___2l6Md_r1_ ../jms/c_api/lib/libstc_mscommon.so
__1cDstdNbasic_ostream4Ccn0ALchar_traits4Cc___2l6Mf_r1_ ../jms/c_api/lib/libstc_mscommon.so
__1cDstdNbasic_ostream4Ccn0ALchar_traits4Cc___2l6Mb_r1_ ../jms/c_api/lib/libstc_mscommon.so

실행하면 위와 같이 에러가 나는데 당췌 뭔소린지...
보아하니 library가 잘못 링크 됐거나, 덜 링크 된것 같은데..

아래와 같은 방법으로 찾으면 된단다.

[CISD-INTCH01 286] src2 > nm -A /usr/lib/lib* | grep "__1cDstdNbasic_ostream4Ccn0ALchar_traits4Cc___2l6Mh_r1_"
nm: /usr/lib/lib.b: File format not recognized
/usr/lib/libCstd.so.1:00091768 T __1cDstdNbasic_ostream4Ccn0ALchar_traits4Cc___2l6Mh_r1_
nm: /usr/lib/libcctagent.so: 사용 권한이 거부됨
.....

:
Posted by 뽀기

# 전제 사항
$DOMAIN_HOME=/WLS_Domain/CISCD1
$MANAGED_SERVER_NAME=CISCD1
$ADMIN_SERVER_PORT=7001
$USERNAME=weblogic
$PASSWORD=weblogic


1. WebLogic Admin Console에 접속한 후 왼쪽 위의 "Change Center"의 메뉴중에  "Lock & Edit"을 클릭합니다.


2. 왼쪽 메뉴에서 "Server"를 클릭합니다.


3. "New" 를 클릭하여 Server를 추가합니다.


4. "Server Name", "Server Listen Port"를 입력하고, "Next"를 클릭합니다.


5. 입력한 값을 확인하고 "Finish" 를 클릭하여 Server를 생성합니다.


6. 왼쪽 위의 "Change Center"에서 "Activate Changes"를 클릭하여 변경한 내용을 적용합니다.


7. "Server"를 클릭하면 방금 추가한 Server를 확인할 수 있습니다.


8. 이제 방금 추가한 Managed Server의 start/stop script를 작성합니다.


9. start.sh, startall.sh stop.sh stopall.sh 를 각각 작성합니다.


10. Admin Server에 접속할 때 사용하기 위한 계정정보를 저장한 boot.properties 파일을 생성합니다.
     $ vi boot.properties
     username=weblogic
     password=weblogic



11. startall.sh 를 실행하여 Managed Server를 실행하면 $DOMAIN_HOME/servers 밑에 방금 추가한 Server명의 디렉토리가 생성됩니다.


12. Admin Console에서 Server의 상태를 확인합니다.
:
Posted by 뽀기
2009. 7. 9. 20:56

JavaScript String replace 그거/Tech2009. 7. 9. 20:56


오랜만에 JavaScript를 했더니.. 머리 쥐난다. -_-;
예전에 표준을 지키지 않고 코딩(?)하던 이후로는 거의 처음하는것 같은데..
좀 헤맸다는. ㅎㅎ

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head><title>TEST</title>
<script language="JavaScript">
<!--
function gogo() {
 var str="&lt;font size='3'&gt;This is test&lt;/font&gt;"
 // str에서 &lt; 를 모두 찾아서 < 로 치환
 var str2=str.replace(/\&lt;/g, "<");
 // str에서 &gt; 를 모두 찾아서 > 로 치환

 var str2=str2.replace(/\&gt;/g, ">");

 document.getElementById("str").value=str;
 document.getElementById("content").value=str2;
}
//-->
</script>
</head>
<body onLoad="javascript:gogo()">
 <textarea cols=50 rows=5 id="str"></textarea>
<br>
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
<form name="frm">
 <textarea cols=50 rows=5 id="content"></textarea>
</form>
</body>
</html>

# 결과

:
Posted by 뽀기
2009. 7. 8. 20:08

오랜만의 쉘 스크립트 그거/Tech2009. 7. 8. 20:08


# 프로시저의 결과를 쉘 스크립트에서 받기
#!/bin/sh

# run sqlplus with a 'callProc.sql' file
# in 'callProc.sql' file, print result of procedure by running 'dbms_output.put_line'
# get an output message by using 'grep'

# usage
# sqlplus <id>/<pw> @<sqlfile> | grep "<keyword>"

sqlplus hdmfdbm/hdmfdbm @callProc.sql | grep "l_num1="

####### sql file - callProc.sql #####################
#
# set serveroutput on
# declare
#   l_num1 number := 100;
#   l_num2 number := 101;
# begin
#   calc(l_num1, l_num2);
# end;
# /
# quit
#
####### sql file - callProc.sql #####################

####### procedure - calc ##########################
# create or replace procedure calc(
#   p_parm1 in out number,
#   p_parm2 in out number) as
#   test_temp number;
# begin
#   test_temp := p_parm1;
#   p_parm1 := p_parm2;
#   p_parm2 := test_temp;
#   dbms_output.putline('l_num1=' || l_num1);
# end calc;
####### procedure - calc ##########################


# 인자로 받은 문자열을 특정 파일에서 찾아서 라인번호 출력하기
#!/bin/sh

# set parameter(keyword) to grep in log file
# if matched, get line number of log file and save result]

# usage
# findString.sh <keyword1> <keyword2> <keyword3> ... <keywordN>

# change log file
logfilename='SF_LONG_COLLECT_AMT_CHA.log'
let i=0
set -A result

# check each keyword
for str in $@ ; do
  # get line number of matching line in log file
  linenum=`grep -n $str $logfilename | cut -d: -f1`

  # if matched, save result
  if [ "#$linenum" != "#" ] ; then
    result[$i]="$logfilename[$str]:$linenum"
    let i=i+1
  fi
done

i=0
while [ $i -lt ${#result[@]} -1 ]
do
  # print result
  echo ${result[$i]}
  let i=i+1
done


# properties 파일 읽기
#!/bin/sh

confFile="./config.properties"
KEY_USERID="USERID"
KEY_PASSWD="PASSWD"
KEY_SERVER_IP="SERVER_IP"
KEY_SERVER_PORT="SERVER_PORT"

# check if file exists
if [ ! -f $confFile ]; then
  echo "$confFile : does not exist"
  exit 1
# check if can read
elif [ ! -r $confFile ]; then
  echo "$confFile : can not read"
  exit 2
fi

 exec 0<$confFile
 while read line
 do
   isComment=`echo $line | cut -c 1-1`

   if [ $isComment != "#" ]; then
     key=`echo $line | cut -d= -f1`

       if [ $key = $KEY_USERID ]; then
         VALUE_USERID=`echo $line | cut -d= -f2`
       elif [ $key = $KEY_PASSWD ]; then
         VALUE_PASSWD=`echo $line | cut -d= -f2`
       elif [ $key = $KEY_SERVER_IP ]; then
         VALUE_SERVER_IP=`echo $line | cut -d= -f2`
       elif [ $key = $KEY_SERVER_PORT ]; then
         VALUE_SERVER_PORT=`echo $line | cut -d= -f2`
       fi
   fi
 done

echo "$KEY_USERID=$VALUE_USERID"
echo "$KEY_PASSWD=$VALUE_PASSWD"
echo "$KEY_SERVER_IP=$VALUE_SERVER_IP"
echo "$KEY_SERVER_PORT=$VALUE_SERVER_PORT"

#!/bin/sh

confFile="./config.properties"
KEY_USERID="USERID"
KEY_PASSWD="PASSWD"
KEY_SERVER_IP="SERVER_IP"
KEY_SERVER_PORT="SERVER_PORT"

# check if file exists
if [ ! -f $confFile ]; then
  echo "$confFile : does not exist"
  exit 1
# check if can read
elif [ ! -r $confFile ]; then
  echo "$confFile : can not read"
  exit 2
fi

VALUE_USERID=`grep $KEY_USERID $confFile | cut -d= -f2`
VALUE_PASSWD=`grep $KEY_PASSWD $confFile | cut -d= -f2`
VALUE_SERVER_IP=`grep $KEY_SERVER_IP $confFile | cut -d= -f2`
VALUE_SERVER_PORT=`grep $KEY_SERVER_PORT $confFile | cut -d= -f2`

echo "$KEY_USERID=$VALUE_USERID"
echo "$KEY_PASSWD=$VALUE_PASSWD"
echo "$KEY_SERVER_IP=$VALUE_SERVER_IP"
echo "$KEY_SERVER_PORT=$VALUE_SERVER_PORT"
:
Posted by 뽀기
2008. 10. 29. 13:17

Today's IBM Developerworks Article 2008.10.29 그거/Tech2008. 10. 29. 13:17


콘(Korn) 쉘 스크립트 짜기
http://www.ibm.com/developerworks/kr/library/au-kornshellscripting/

초보자를 위한 유닉스 팁과 기교, Part 1: 파일 관리 도구
http://www.ibm.com/developerworks/kr/library/tutorial/au-dw-au-unixtips1-i.htm

HTTP 세션 지속성에 대한 질문과 답변
http://www.ibm.com/developerworks/kr/library/0809_col_burckart/0809_col_burckart.html

그 동안 몰랐던 서버 사이드 자바스크립트 이야기, Part 1: 다시 보는 자바스크립트의 역사
https://www.ibm.com/developerworks/kr/library/opendw/20080916/

그 동안 몰랐던 서버 사이드 자바스크립트 이야기, Part 2: 자바로 만든 자바스크립트 엔진, 리노http://www.ibm.com/developerworks/kr/library/opendw/20081021/

:
Posted by 뽀기

#!/bin/sh

set -A port 8887 8888 9998 9999
established=0
close_wait=0
listen=0
i=0

while [ $i -lt ${#port[@]} ]
do
echo "CHECK Port number : ${port[$i]}"
  for state in `netstat -an | grep ${port[$i]} | awk '{print $6}'`
  do
    if [ $state = 'ESTABLISHED' ]; then
      let "established+=1"
    fi

    if [ $state = 'CLOSE_WAIT' ]; then
      let "close_wait+=1"
    fi

    if [ $state = 'LISTEN' ]; then
      let "listen+=1"
    fi

  done

  echo "       ESTABLISHED (${port[$i]}): $established"
  echo "       CLOSE_WAIT  (${port[$i]}): $close_wait"
  echo "       LISTEN      (${port[$i]}): $listen"
  let "i+=1"

done

:
Posted by 뽀기

#!/bin/sh
today=`date +'%Y-%m-%d`

echo ""
echo " Today is $today"
echo ""

# 로그파일에서 날짜를 추출하여, 각 날짜마다의 로그파일에 대해서 아래 내용을 수행한다.
# 01. tar cvf server.log_{yyyy-mm-dd}.tar server.log_{yyyy-mm-dd}T*
# 02. rm -f server.log_{yyyy-mm-dd}T*
# 03. compress server.log_{yyyy-mm-dd}.tar

for logfiledate in `ls -al server.log_*T* | awk '{print $9}' | cut -c 1-21 | uniq -c | awk '{print $2}'`
do
  # 오늘 날짜의 log는 백업하지 않는다. 어제 날짜까지의 로그파일을 백업하도록 한다.
  tdate=`echo $logfiledate | cut -c 12-22`
  if [ $today = $tdate ]; then
    exit;
  fi
  tarfile=$logfiledate".tar"
  logfile=$logfiledate"T*"

  echo "-----------------------------"
  echo "         $tdate"
  echo "-----------------------------"
  echo "01. Make tar file           : tar cvf $tarfile $logfile"
  tar cvf $tarfile $logfile 2> /dev/null

  echo "02. Delete log archive file : rm -f $logfile"
  rm -f $logfile

  echo "03. Compress tar file       : compress $tarfile"
  compress $tarfile

  echo ""
done

:
Posted by 뽀기
2008. 9. 9. 13:44

Solaris 에서 ISO 이미지 mount 하는 법 그거/Tech2008. 9. 9. 13:44



lofiadm -a /export/temp/software.iso /dev/lofi/1

mount -F hsfs -o ro /dev/lofi/1 /mnt
:
Posted by 뽀기