*** 검색어: nabiro, cp, option, -p, 옵션, 퍼미션, permission cp -p a.txt b.txt a.txt 파일을 b.txt 파일로 복사할 때 퍼미션까지 복사한다. 그렇지 않은 경우 퍼미션은 umask의 값을 따른다.
*** 검색어: nabiro, 로그, 저장, 화면, 표시, 출력, 동시, 같은 시간, 같은시간 cat test2.sh | while read a ; do echo "${a}"; echo "${a}" >> logfile.txt; done 위 구문은 test2.sh의 내용을 화면에 표시(출력)함과 동시에 logfile.txt 파일에 내용을 저장한다.
du -sk * | sort -nr 위 명령어로 현재 디렉터리의 하위 경로에 대한 용량을 확인할 수 있습니다. (크기가 큰 순서로 정렬도 해줍니다) 하위 디렉터리까지 상세하고 보고싶은 경우 du -k * | sort -nr
*** 검색어: nabiro, shell script, shellscript, 쉘스크립트, 파일, 테스트, 존재, 있는지, 체크 fileName="test.java" if [ -f "$fileName" ]; then echo "$fileName 파일이 있습니다" else echo "$fileName 파일이 없습니다" fi # 위의 if 문에서 $fileName을 " " 으로 둘러싸는데 가끔 이렇게 " " 마크로 # 둘러싸는 경우 오류가 날 수 있습니다. # # 따라서 아래와 같이 하는 것이 좋습니다. # 특히 $1 처럼 인자값으로 파일명을 받는 경우 " " 마크를 반드시 # 빼주시는 것을 추천합니다. fileName="test.java" if [ -f $fileName ]; then echo "$file..
*** 검색어: nabiro, cwRsync, rsync, password, 비밀번호 rsync -avzr user@192.168.123.10::syncName /cygdrive/d/pvcs/fs/act --password-file=/cygdrive/d/myPwd 위와같이 --password-file 옵션으로 myPwd 파일에 비밀번호를 저장하여 지정해주면 별도로 비밀번호를 입력하지 않아도 됩니다. 하지만, 보안취약점이 높아진다는 점이 안타깝네요.
*** 검색어: nabiro, cron, AIX 명령어 위치 /usr/bin/crontab cron 설정 확인 crontab -l (아이(I)가 아니고 소문자 L 이다) 사용자별 crontab 설정 파일 위치 /var/spool/cron/crontabs/ cron 설정 변경 (편집 방법은 vi 에더터와 동일) crontab -e cron 설정 삭제 crontab -r cron log 관련 설정 정보 /etc/cronlog.conf cron 실행 관련 로그 파일 /var/adm/cron/log cron 관련 명령어의 실행 결과는 mail로 수신되므로 mail 명령어로 실행 결과를 확인할 수도 있습니다.
*** 검색어: nabiro, 쉘스크립트, shellscript, shell script, cron, crontab, 실행, 문제, 실행 안됨 일반적으로 cron에 등록된 쉘스크립트의 내부에는 수많은 명령어들이 존재하는데 문제는 이 명령어들이 있는 디렉터리 위치가 PATH에 등록되어 있어야 하는데, 이 PATH가 일반적으로 터미널에 로그인하여 .profile이 호출된 이후의 PATH 경로가 아니라 별도의 cron 환경변수에 등록된 PATH 이어서 문제가 된다. 그래서 cron 에 등록할 쉘스크립트의 서두에는 .profile을 호출하는 . ~pvcs/.profile 등과 같이 해주어야 문제가 없다. 또한 cron에 등록되었는데 제대로 실행이 안되는 경우 아래의 절차대로 진행을 하면 뭐가 문제인지 알 수 있..
*** 검색어: nabiro, pcli, 시각, 시간, get, 기준, 쉘스크립트 # 2010.08.23 / cskim@softcm.co.kr # # 매일 00:00AM에 실행되는 자동 배포 스크립트 # local myTime=`date +%I:%M%p` # 1일전 (우리나라는 KST-9 이므로, KST+15는 24시간 전) local myDate=`TZ=KST+15; date +%m/%d/%Y` #local fullTime="$myDate $myTime" # 어제날짜의 지금 시간 local fullTime="$myDate 11:59PM" //local fullTime="08/19/2010 11:59PM" # test #echo "fullTime=$fullTime" echo "vmBuild.sh -pcr..
*** 검색어: nabiro, shell script, shellscript, 날짜, 어제, 2일전, 구하는 법, 구하는 방법 #!/bin/ksh # # AIX, SUN, HPUX에서 어제 날짜 구하는 방법 # local todayDate=`date +%Y%m%d` local todayYear=`date +%Y` local todayMonth=`date +%m` local todayDay=`date +%d` # 아마 linux는 이런식으로 하나보다. +1 day 또는 +1 days #local yesterDay=`date -d "+1 day" "+%Y%m%d"` # 1일전 (우리나라는 KST-9 이므로, KST+15는 24시간 전) local yesterDay=`TZ=KST+15; date +%Y%m%d..
*** 검색어: nabiro, 숫자, 연산자 # 산술연산자 예제 x=1 x=`expr $x + 1` echo "x=$x" y=10 let y=y+10 echo "y=$y" z=100 z=$(($z+1)) echo "z=$z"
*** 검색어: nabiro, vi, dos, unix, mode, 모드, ^M, 컨트롤M, Ctrl + M vi 편집기로 작업 완료해서 UNIX에 업로드 하면 가끔 특정 파일의 라인끝에 ^M 문자가 붙는 경우가 있습니다. 이것은 윈도우에서 편집하여 저장할 때 DOS 모드로 저장이 되어 모든 라인의 끝 (엔터키를 친곳)에 CR/LF가 붙기 때문입니다. 유닉스에서는 CR 이던가 LF 이던가 하나만 엔터(Line feed)로 인식하여 ^M 문자가 라인 끝에 붙게 됩니다. 이를 막기 위해서는 윈도우의 vi 에디터에서 파일을 저장할 때 UNIX 모드로 저장해야 합니다. 유닉스 모드로 변경하는 명령어는 아래와 같습니다. set fileformat=unix DOS 모드는 set fileformat=dos 위 명령어..
*** 검색어: nabiro, 쉘스크립트, shellscript, shell script, 파일명만, 파일명, 추출, 검색, basename basename abc.java .java 위 명령어를 실행하면 abc.java 에서 abc 만 표시됩니다.