'AWK' 태그의 글 목록 (2 Page)
본문 바로가기

AWK21

[Linux 셸 스크립트] 텍스트 처리 - 075 숫자값(CSV 파일)에서 "*"를 써서 간단한 텍스트 그래프 출력하기 1. 사용 명령어 (1) echo (2) awk (3) sort (4) head (5) expr (6) read 2. 키워드 & 사용처 (1) 키워드 그래프, CSV 파일, 최대값 (2) 사용처 숫자 자료를 간단히 텍스트 그래프로 표시하고 싶을 때 사용합니다. 3. 실행 예제 $ ./csv-graph.sh data.csv ****** [Kim] ************************************************ [Lee] **************** [Park] [Kang] ************ [Seo] 4. 스크립트 #!/bin/sh csvfile="data.csv" # 자료 CSV 파일 ① GRAPH_WIDTH=50 # 그래프 너비 ① markprint () { ② local.. 2021. 4. 9.
[Linux 셸 스크립트] 텍스트 처리 - 074 숫자로 된 CSV 파일에서 평균값 계산하기 1. 사용 명령어 (1) awk 2. 키워드 & 사용처 (1) 키워드 평균값, CSV 파일 (2) 사용처 CSV 파일에서 특정 컬럼값의 평균값을 계산해서 파일로 출력하고 싶을 때 사용합니다. 3. 실행 예제 $ cat data.csv ${filename}.avg ③ 5. 해설 이 스크립트는 명령행 인수를 지정한 CSV 파일의 세 번째 컬럼에서 값의 평균값을 계산해서 출력합니다. 평균값은 우너본 파일명에 확장자 .avg를 붙인 파일에 출력합니다. 여러 CSV 파일마다 평균값을 출력하고 싶을 때 사용하면 됩니다. 여기에서 사용하는 CSV 파일은 "ID번호, 이름, 점수" 형식이라고 가정합니다. 셸 스크립트에서 수치 계산은 expr 명령어를 자주 사용합니다. 하지만 expr은 정수 계산만 가능하므로 소수가 포.. 2021. 4. 9.
[Linux 셸 스크립트] 텍스트 처리 - 071 입력 파일 해시값을 줄마다 추가해서 출력하기 1. 사용 명령어 (1) paste (2) md5sum (3) read (4) awk 2. 키워드 & 사용처 (1) 키워드 해시, 페이스트, 컬럼 (2) 사용처 파일에서 입력값을 읽어서 줄마다 해시값을 계산해서 CSV 파일에 출력하고 싶을 때 사용합니다. 3. 실행 예제 $ cat data.txt abcdefg password 123456 $ ./paste.sh data.txt abcdefg,7ac66c0f148de9519b8bd264312c4d64 password,5f4dcc3b5aa765d61d8327deb882cf99 123456,e10adc3949ba59abbe56e057f20f883e 4. 스크립트 #!/bin/sh # 해시값을 출력할 임시 파일을 초기화 tmpfile="hash.txt" ① :.. 2021. 4. 8.
[Linux 셸 스크립트] 네트워크 - 060 IP 주소로 호스트명 얻기 1. 사용 명령어 (1) host (2) awk (3) sed 2. 키워드 & 사용처 (1) 키워드 IP 주소, 호스트명, 변환, DNS (2) 사용처 IP 주소가 적힌 파일을 읽어서 호스트명을 함께 표시하고 싶을 때 사용합니다. 3. 실행 예제 $ cat ip.txt 2021. 4. 6.
[Linux 셸 스크립트] 네트워크 - 059 호스트명으로 IP 주소 취득하기 1. 사용 명령어 (1) host (2) awk 2. 키워드 & 사용처 (1) 키워드 이름 해석, DNS, IPv4, IPv6 (2) 사용처 DNS 서버를 통해 이름 해석을 문의해서 해당하는 IP 주소 목록을 표시하고 싶을 때 사용합니다. 3. 실행 예제 $ ./hostip.sh Address of www.google.com ========================== 173.194.120.81 IPv4 173.194.120.80 IPv4 173.194.120.83 IPv4 173.194.120.82 IPv4 173.194.120.84 IPv4 2404:6800:4004:80c::1012 IPv6 4. 스크립트 #!/bin/sh # IP 주소를 얻고 싶은 호스트명 정의 fqdn="www.google... 2021. 3. 31.
[Linux 셸 스크립트] 네트워크 - 058 arp 테이블에서 지정 IP 주소에 대응하는 MAC 주소를 표시하기 1. 사용 명령어 (1) arp (2) awk 2. 키워드 & 사용처 (1) 키워드 MAC 주소, IP 주소, ARP (2) 사용처 네트워크에서 IP 주소를 지정해서 대상의 물리 주소(MAC 주소)를 검색하고 싶을 때 사용합니다. 3. 실행 예제 $ ./arp.sh 192.168.2.1 -> 00:00:5e:XX:XX:XX 4. 스크립트 #!/bin/sh ipaddr="192.168.2.1" macaddr=$(arp -ap | awk "/\($ipaddr\)/ {print \$4}") ① if [ -n "$macaddr" ]; then ② echo "$ipaddr -> $macaddr" ③ else echo "$ipaddr가 ARP 캐시에 없습니다." ④ fi 5. 해설 이 스크립트는 셸 변수 ipadd.. 2021. 3. 31.
[Linux 셸 스크립트] 네트워크 - 057 ping으로 특정 호스트 응답 평균 시간을 취득하기 1. 사용 명령어 (1) ping (2) sed (3) awk 2. 키워드 & 사용처 (1) 키워드 ICMP, 응답 속도, 평균값 (2) 사용처 특정 서버와 통신 상태를 조사하고 싶을 때 사용합니다. 3. 실행 예제 $ ./pingavg.sh Ping to: 192.168.2.1 Ping count: 10 Ping average[ms]: 38.79 4. 스크립트 #!/bin/sh ipaddr="192.168.2.1" ① count=10 ① echo "Ping to: $ipaddr" ② echo "Ping count: $count" ② echo "Ping average[ms]:" ② # ping 명령어 실행 결과를 임시 파일에 출력 ping -c $count $ipaddr > ping.$$ ③ # "tim.. 2021. 3. 30.
[Linux 셸 스크립트] 네트워크 - 056 디폴트 게이트웨이에 ping이 통하는지 확인하기(FreeBSD/Mac) 1. 사용 명령어 (1) netstat (2) awk (3) ping 2. 키워드 & 사용처 (1) 키워드 ping, ICMP, 디폴트 게이트웨이 (2) 사용처 디폴트 게이트웨이를 자동으로 얻어서 ping 명령어로 네트워크 연결을 확인하고 싶을 때 사용합니다. 3. 실행 예제 $ ./gwping-bsd.sh [Success] ping -> 192.168.1.1 4. 스크립트 #!/bin/sh # netstat 명령어 출력에서 디폴트 게이트웨이 얻기 # 첫 번째 컬럼이 default인 줄의 두 번째 컬럼 추출 gateway=$(netstat -nr | awk '$1 == "default" {print $2}') ① # 디폴트 게이트웨이에 ping ping -c 1 $gateway > /dev/null 2>.. 2021. 3. 30.
[Linux 셸 스크립트] 네트워크 - 055 디폴트 게이트웨이에 ping이 통하는지 확인하기(리눅스) 1. 사용 명령어 (1) route (2) awk (3) ping 2. 키워드 & 사용처 (1) 키워드 ICMP, 디폴트 게이트웨이, Default Gateway (2) 사용처 디폴트 게이트웨이르르 자동으로 얻어서 ping 명령어로 네트워크 연결을 확인하고 싶을 때 사용합니다. 3. 실행 예제 $ ./gwping-linux.sh [Syccess] ping -> 192.168.1.1 4. 스크립트 #!/bin/sh # route 명령어 출력에서 디폴트 게이트웨이 얻기 # 첫 번째 컬럼이 "0.0.0.0"인 줄의 두 번째 컬럼을 추출 gateway=$(route -n | awk '$1 == "0.0.0.0" {print $2}') ① # 디폴트 게이트웨이에 ping ping -c 1 $gateway > /d.. 2021. 3. 29.
[Linux 셸 스크립트] 사용자 인터페이스 - 009 달력을 이용해 특정 날짜의 로그 파일 삭제하기 1. 사용 명령어 (1) dialog (2) awk (3) rm 2. 키워드 & 사용처 (1) 키워드 다이얼로그, 달력, 대화형, 선택 (2) 사용처 날짜를 지정하는 대화식 달력을 표시해서 선택하고 싶을 때 사용합니다. 3. 실행 예제 $ ./dialog-calendar.sh 4. 스크립트 #!/bin/sh LOG_DIR=/myapp/ap1/log # dialog 명령어로 달력 출력 # 선택한 날짜는 표준 에러 출력이므로 임시 파일에 리다이렉트 dialog --calendar "Select Date" 2 60 2> cal.tmp ① # 달력 기능은 일/월/년 형식으로 출력되므로 년월일로 변경 date_str=$(awk -F / '{print $2$2$1}' cal.tmp ② # 취소되면 임시 파일을 삭제.. 2021. 3. 3.