aix 에서 작업을 하다보면 반복된 command 를 이용하여야 하는 경우가 많습니다.
능력자분들은 순식간에 스크립트를 짜서 돌려버리지만, 저같은 평민은 반복해서 타이핑하는 경우가 많습니다.
그나마 vi 명령을 통해 이전 명령을 불러오는 정도가 가능하겠군요.
test@/usr> set -o vi
이전명령을 불러오려면 k 를 누르시면 됩니다.
이전명령중 검색을 하시려면 esc 키를 누르신뒤 /단어 를 누르고 엔터를 치시면 해당 단어가 포함되는 이전 command 검색이 가능합니다.
test@/usr> /word_previous_command
다음 찾기는 n 을 누르시면 됩니다.
그러나 쳐야하는 command 양이 많아지면 이것도 귀찮아지는데요, 이럴때 awk 나 for 를 사용하면 편하게 작업이 가능합니다.
예를 들어 여러 개의 hdisk size 를 확인하고 싶다고 하면..
test@/usr> lspv
hdisk0 00f615e5ef3aeb25 rootvg active
hdisk1 00f615e557810e0a None
hdisk2 00f615e55782a6ca None
hdisk3 00f615e5335903ff None
hdisk4 00f615e53359041c None
hdisk5 00f615e53d62059b None
일일히 command를 치거나 vi 기능을 이용해 이전 command를 불러온뒤 hdisk 번호만 바꿔주며 반복해야 합니다.
test@/usr> bootinfo -s hdisk0
30720
test@/usr> bootinfo -s hdisk1
10240
그러나 awk 를 사용하면 command 의 출력물을 이용해 다른 command를 수행할 수 있습니다.
아래와 같이 command를 생성하신뒤,
test@/usr> lspv | awk '{print "bootinfo -s " $1}'
bootinfo -s hdisk0
bootinfo -s hdisk1
bootinfo -s hdisk2
bootinfo -s hdisk3
bootinfo -s hdisk4
bootinfo -s hdisk5
마지막에 sh를 붙여 스크립트로 돌게 수행하여 주시면 바로 결과가 확인 가능합니다.
test@/usr> lspv | awk '{print "bootinfo -s " $1}' |sh
30720
10240
10240
10240
10240
10240
다음은 for 문을 사용한 방법입니다.
test@/usr> for i in 0 1 2 3 4 5
> do
> bootinfo -s hdisk$i
> done
30720
10240
10240
10240
10240
10240
'UNIX&LINUX > AIX Server ADMIN' 카테고리의 다른 글
clstat command 가 잘 동작하지 않는다면 (0) | 2014.08.28 |
---|---|
replacepv (0) | 2014.08.28 |
HACMP 1800-106 error 발생 (0) | 2014.08.28 |
lssrc command 로 daemon이 보이지 않을 때 (0) | 2014.08.28 |
[AIX LVM] VG, PV, LV, VG mirroring (0) | 2014.08.28 |
aix daemon (0) | 2014.08.28 |
diffrence between multicast and unicast (0) | 2014.08.28 |
데이터 유실을 방지하기 위한 Logical partition 복제하기 (0) | 2014.08.28 |