[Linux/Unix] stdin, stdout, stderr, and pipes
·
OS_Linux&Unix
# stdin, stdout, stderr stdin은 입력받은 프로그램을 나타내는 stream이다. (예를 들어, 프로그램이 시작할 때 사용자에게 패스워드를 입력하라고 하는 것) stdout은 모든 아웃풋이 존재하는 곳이다. 만약 C로 프로그래밍 했다면, printf를. java로 프로그래밍 했다면, System.out.print로. Python으로 프로그래밍 했다면 print를 떠올려라. stderr은 다른 아웃풋 채널이다. 보통 debugging information이나 error를 출력하는 것을 의미한다. 우리가 다음 명령어를 수행했다고 가정하자. echo foo 이 명령어의 아웃풋은 foo 일 거다. 무슨 일이 일어나는지 다이어그램을 확인해보자. echo 명령어는 argument인 foo를 인풋..
[Linux/Unix] find 조건 -exec ls -al {} \;
·
OS_Linux&Unix
# find 조건 -exec ls -al {} \; -exec의 의미는 '조건을 가지고 찾은 파일들을 대상으로 다음 명령어를 실행하라' 라는 의미를 가지고 있다. 그럼 어디까지가 실행 시킬 명령어인지가 중요하다. 실행시킬 명령어의 범위는 -exec 다음부터 ;(세미콜론)을 만날 때 까지로 정의되어 있다. 그런데 ;(세미콜론)은 유닉스에서 좀 특별한 의미를 가지고 있습니다. 명령어 세퍼레이터라고 해서 명령어를 연속적으로 실행할 때 사용한다. 예를들어 clear;ls하면 cleaer가 실행된다음 ls가 실행되는 식. 따라서 find 조건 -exec 실행시킬 명령어 ; 이렇게만 쓰면 쉘이 ;(세미콜론)을 특수한 문자로 인식해서 find라는 명령어게는 ;(세미콜론)이 전달되지 않게 된다. 그러면 find는 어디..
[Linux/Unix] 2>&1 이해하기
·
OS_Linux&Unix
이런저런 쉘스크립트를 보다면 스크립트의 문장 끝부분이 다음과 같은 구문을 종종 보게된다. cat /tmp/error.txt > /dev/null 2>&1 cat 명령은 error.txt 파일의 내용을 출력하는 명령이고... > 는 리다이렉션으로 화면에 출력되는 내용을 > 다음에 지정한 파일로 보내는 것이니 /dev/null 로 결과를 보내고, 즉 화면에는 표시하지 않고...까지는 유닉스 환경을 다루어본 학생이나 엔지니어라면 쉽게 이해한다. 문제는 2>&1 이다. 흔히 "아~저건 에러메시지도 화면에 표시하지 않게하는 거지."라며 아는 척~~하는 사람들도 많다. 맞다. 정확하게 알고 있긴하다. 쉘스크립트를 작성하고 실행할 때 중간에 에러가 발생하게 되면 에러메시지가 화면에 고스란히 출력되어 보기에 썩~좋지 ..
[Linux/Unix] AIX - machine 전체 CPU 및 Core 수 확인
·
OS_Linux&Unix
AIX가 설치된 Machine이 몇개의 CPU로 몇 Core를 가지고 있는지 확인할 수 있는 방법 물리적으로 Total CPU = CPU 수 x Core 수 그러면 Machine에서는 어떻게 확인할까? # lscfg 명령어 lscfg 명령어로 현재 HardWare 구성정보를 확인할 수 있다. 설치된 CPU 칩의 갯수와 CPU가 몇 Core로 되어 있는지 확인한다. # lscfg -vp | grep WAY 4-WAY PROC CUOD: 내가 사용하고 있는 장비의 값 4-WAY => CPU칩 당 Core 수 4-WAY PROC CUOD: => 해당 라인이 나온 갯수는 CPU칩 수 따라서 내가 사용하고 있는 Machine 전체의 수는 4x1 = 4 core 임. # lparstat 명령어 lparstat 명령..
[Unix/Linux] nohup 사용하여 쉘스크립트 계속 실행하기
·
OS_Linux&Unix
쉘스크립트를 짜서 실행시킨 후, 쉘스크립트를 탈출해도 서비스가 계속 호출 및 응답을 받을 수 있게 하고 싶었다.   #  nohup 명령어  nohup은 "no hangups" 라는 의미로 Linux, Unix 계열의 OS에서 쉘스크립트파일 (*.sh)를 데몬 형태로 실행시키는 프로그램이다. - 터미널 세션이 끊겨도 실행을 멈추지 않고 동작하도록 함- 별도의 옵션을 설정하지 않았다면, nohup으로 프로그램을 실행 시 출력되는 메세지들을 nohup.out이라는 파일에 저장한다.   *nohup으로 실행할 쉘 스크립트의 퍼미션 상태는 755 이상이어야 한다. - 리눅스는 기본적으로 터미널 세션 로그아웃이 발생하면, 해당 터미널에서 실행한 프로세스들에게 "HUP signal"을 전달하여 종료시킨다. nohu..
[Linux/Unix] grep 명령어 / -H, -v, -i, -E, -W
·
OS_Linux&Unix
# grep -E (= egrep) -E 옵션 + ' | '는 OR 이다. ### grep -E '9000' ubbsimple = grep '9000' ubbsimple (grep -E 와 차이가 없다) => ubbsimple 파일에서 9000으로 된 내용 출력 ### grep -E '9000|5000' ubbsimple => ubbsimple 파일에서 9000 OR 5000으로 된 내용 출력 # grep -E '9000' ubbsimple CLOPT="-A -- -n //111.110.82.222:9000 -w JSH -m 3 -M 5 -x 3" # grep -E '9000|5500' ubbsimple CLOPT="-A -- -n //111.110.82.222:9000 -w JSH -m 3 -M 5 -..
[Linux/Unix] AIX ftp 서비스 확인 명령어
·
OS_Linux&Unix
AIX ftp 서비스 종료 시작 방법 # ftp 서비스 확인 lssrc -ls inetd | grep ftp # ftp 서비스 종료 1) vi /etc/inetd.conf 2) ftp "#" 처리 3) refresh -s inetd # 확인 lssrc -ls inetd | grep ftp
[Linux/Unix] .bashrc / .bash_profile / .profile ?
·
OS_Linux&Unix
# Login Shell vs Non-login Shell 먼저 'Login Shell'과 'Non-login Shell' 을 구분해야 하는데, 로그인은 계정과 암호를 입력해서 Shell을 실행하는 것이다. ssh로 접속하거나 로컬에서 GUI에서 로그인한다는 의미다. '.profile', '.bash_profile'은 Login할 때 로드되는(source) 파일이다. '.profile'은 꼭 bash가 아니더라도 로그인하면 로드되고 '.bash_profile'은 꼭 Bash로 Login할 때 로드된다. 그리고 'Non-login Shell'은 로그인 없이 실행하는 Shell을 말한다. ssh로 접속하고 나서 다시 bash를 실행하는 경우나. GUI 세션에서 터미널을 띄우는 것이 이해 해당한다. 'sudo..
[Linux/Unix] 디렉토리 내의 공백인 파일 삭제하기 - inode값 확인
·
OS_Linux&Unix
디렉토리에 공백으로 만들어진 불필요한 파일이 존재할 때, rm 으로 지워지지 않는다. inode 값으로 삭제를 하면 된다. 1. ls -lrti 로 node값 출력 2. node 값을 이용해서 rm find . -inum 309080 -exec rm -f {} \; 성공
[Linux/Unix] 모든 사용자 확인하기
·
OS_Linux&Unix
Oracle Linux 에서 확인 grep /bin/bash /etc/passwd | cut -f1-d: IBM AIX에서 확인 grep /bin/ksh /etc/passwd | cut -f1 -d:
[Linux/Unix] find 명령어 / -mtime 옵션 - 일별로 파일 내용 확인하기
·
OS_Linux&Unix
find ./ -name "ULOG.*" -mtime -3 | xargs grep 'error' > test.txt # vi test.txt "test.txt" 24 lines, 3099 characters ./ULOG.110622:223915.node1!JSH.5964354.1.-2: JOLT_CAT:1611: "ERROR: SSL error 29019" ./ULOG.110722:101333.node1!tmboot.2949710.1.-2: CMDTUX_CAT:825: ERROR: Process WSL at AIX1 failed with /T tperrno (TPESYSTEM - internal system error) ./ULOG.110722:102833.node1!tmboot.14877172.1.-2..
[Linux/Unix] inode로 파일/디렉토리 삭제하기. inode 확인하기.
·
OS_Linux&Unix
# ls -li 로 inode 확인하기 맨 왼쪽 번호가 inode 번호임 find로 삭제하기 find . inum [inode-number] -exec rm -i {} \; {} 뒤에 스페이스(공백) 필수 ; 앞에 \ 필수
[LINUX/UNIX] 정규표현식 grep
·
OS_Linux&Unix
정규표현식이란 텍스트에서 패턴을 인식하는 symbol 표기법 grep - grep [옵션] [패턴] [파일] - 파일에서 지정된 정규표현식과 일치하는 행을 찾아 출력한다. 옵션 - i : 대소문자 구분안함, --ignore-case -v : 반전 매치, invert-match -c : 정규표현식에 매치하는 행의 수 출력, --count -l : 일치하는 행을 포함하는 파일의 이름을 출력, --files-with-mathces -L : 일치하는 행이 없는 파일의 이름을 출력, --files-without-matches -n : 일치하는 행 앞에 파일의 행 번호를 붙여 출력, --line-number -h : 복수 파일 검색에서, 파일명을 출력에서 숨김, --no-filename 기본 예문 ) 1. grep..
[Linux/Unix] wc 명령어 - word count
·
OS_Linux&Unix
wc명령어 (word count) 해당 파일의 단어수를 세어주는 명령어 wc [옵션] [파일이름] -c : 문자수만 보여줌 -m : 캐릭터수만 보여줌 -l : 라인수만 보여줌 -w : 단어수만 보여줌 -L : 가장 긴 문장의 길이를 보여줌
[Unix/Linux] AIX ftp 서비스 종료/시작 방법
·
OS_Linux&Unix
1. ftp 서비스 확인 lssrc -ls inetd | grep ftp 2. ftp 서비스 종료 1) vi /etc/inetd.conf 2) ftp "#" 처리 3) refresh -s inetd 3. 확인 lssrc -ls inetd | grep ftp
최선을 다하자!
'OS_Linux&Unix' 카테고리의 글 목록 (3 Page)