리눅스
Posts
554 posts리눅스 bash 스크립트에서 변수/배열/연관배열 삭제/초기화
리눅스 bash 스크립트에서 변수 또는 배열을 삭제하는 명령은 unset이다. 우선 변수에 대해서 아래의 예시를 보자. # 문자열 "abc"를 변수 var에 할당 var="abc" # 변수 var에 할당된 내용 출력 echo "$var" abc # 변수 var 삭제 unset var # 변수 var에 할당된 내용 출력 echo "$var" unset에서 지정하는 변수명 앞에 "$" 표시가 붙지 않는다는 점에 유의. 만약 "$"를 붙이면 해당 변수명이 아니라 변수에 할당된 값이 unset의 인자(argument)로 지정되기 때문이다. 배열에 대한 삭제/초기화 작업도 같은 요령이다. 우선, 리눅스 bash 스크립트에서 배열(array)을 활용하는 기본적인 방법은 이
[bash:awk] awk를 이용한 분산/표준편차 계산
awk를 이용해서 파일에 저장된 값들의 분산(variance)과 표준편차(standard deviation)를 계산하는 방법이다. 표준편차를 계산하려면 우선 평균을 알아야 한다. awk를 이용한 평균값 계산은 이전 게시물을 참고하자. 여기로 전에 사용한 것과 동일한 예시를 사용해서 표준편차를 계산해 보자. data.txt 파일에 저장된 자료는 아래와 같다. # data.txt 내용 확인 cat data.txt john 12.35 jane -34.5 thomas 3.9 우선 평균을 계산하여 변수 mean에 할당한다. # 평균값을 계산하여 변수 mean에 할당 mean=`awk '{ sum += $2; cnt++ } END { print sum/cnt }' data.txt`
[bash:awk] awk를 이용한 평균값 계산
awk를 이용해서 파일에 저장된 값들의 평균을 계산하는 방법이다. 우선 data.txt 파일에 아래와 같은 값이 저장되어 있다고 가정하자. # data.txt 내용 확인 cat data.txt john 12.35 jane -34.5 thomas 3.9 위와 같은 내용으로 저장되어 있을 때, 평균을 계산하려면 아래와 같이 가능하다. awk '{ sum += $2; cnt++ } END { print sum/cnt }' data.txt -6.08333 data.txt의 두번째 항목($2)을 더해서 변수 sum에 저장하고, 자료값의 수를 세기 위해 변수 cnt도 1씩 증가. 합산 작업이 끝나면(END) 합(sum)을 자료값의 수(cnd)로 나누면 평균이 된다. 만약 파일
[라즈베리파이] 라즈비안: objdump 바이너리 유틸리티
바이너리 유틸리티는 오브젝트 포맷의 파일을 조작할 수 있는 프로그램입니다. 다음은 대표적인 바이너리 유틸리티를 정리한 표입니다. objdump: 라이브러리나 ELF(Executable and Linkable Format) 형식의 파일을 어셈블리어로 출력as: 어셈블러ld: 링커addr2line: 주소를 파일과 라인으로 출력nm: 오브젝트 파일의 심벌을 출력readelf ELF 파일의 내용을 출력 이 중에서 리눅스 커널 어셈블리 코드와 섹션 정보를 볼 수 있는 objdump라는 바이너리 유틸리티 사용법을 소개합니다. 오브젝트 파일로는 리눅스 커널을 빌드하면 생성되는 vmlinux를 활용합니다. 다음 명령어를 입력하면 objdump를 실행할 때 지정 가능한 옵션 정보를 확인할 수 있습니다. root@ra



