LinuxFreeBSD

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ LinuxFreeBSD ] in KIDS
글 쓴 이(By): tarkus (몸부림)
날 짜 (Date): 1999년 11월 19일 금요일 오후 01시 03분 48초
제 목(Title): FreeBSD 사용자들에게 선물!!!

선물이라고까지 하기는 그렇지만, package(port포함) 많이
설치해놓고 쓰다 보면, 무슨 package가 설치 되어있는지
혹은 어떤 버젼이 설치되어 있는지 확인해 볼 일이 자주
있잖아요?(저는 그렇습니다.) 그래서 pkg_chk이라는 
csh 스크립트를 만들어서 유용하게 쓰고 있읍니다. 한 1-2년을
써보니 만족스러워서 다른 분들에게도 권하고 싶군요.
사용은 너무 쉽습니다. 예들 들면,

% pkg_chk sam gtk
pkg_chk >>> List of matching packages currently installed
[Keyword = sam]
samba-2.0.3
[Keyword = gtk]
gtk-1.2.2
gtk-engines-0.5

대소분자 구분 안합니다. 그럼.

------------------------------------------------------------------------
#!/bin/csh -f
#
# `pkg_chk' written by Byoung-Kee Yi (kee@wam.umd.edu)
#
# usage: $0 keyword [ keywords ]

set this = `basename $0`
set usage = "Usage: ${this} keyword [ keywords ]"

if ($#argv == 0) then
   echo $usage
   exit 1
endif

set keywords = `echo $argv | awk '{print tolower($0)}'`
echo "${this} >>> List of matching packages currently installed"
foreach keyword ($keywords)
   echo "[Keyword = ${keyword}]"
   set loc = `ls /var/db/pkg | awk '{print tolower($0)}' | grep -n ${keyword} | cut -f1 -d":"`
   if ( $#loc > 0 ) then
      foreach matched ( $loc )
         ls /var/db/pkg | awk -v loc=$matched 'NR==loc'
      end
   endif
end

exit 0
-----------------------------------------------------------------------------
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.