반달가면

Sources

Posts

427 posts

[bash: sync] 계속 파일 구성이 변하는 디렉토리에 대한 작업에 대한 문제

반달가면|2017년 9월 19일

확실치는 않은데, 어쨌든 일단 정리해 두기로. 일단 상황은 아래와 같다. ~/ftp_data 디렉토리에 파일을 받고 있다. 다른 장비에서 자동으로 보내준다. 그리고 1시간 간격으로 이 디렉토리에 있는 파일의 목록을 확인해서 조건에 맞는 파일은 다른 디렉토리로 옮겨야 한다. 별로 복잡하지 않은 문제라고 생각해서 아래와 같이 스크립트를 만들었다. mktemp 명령으로 /dev/shm 디렉토리에 임시 디렉토리를 만들고, find 명령으로 ~/ftp_data 디렉토리에 있는 파일 목록을 출력하여 임시 디렉토리에 파일로 저장. 이후 while 반복문으로 이 파일을 읽어서 하나씩 작업. (mktemp 관련 내용은 여기로, 파일의 내용을 한줄씩 while 반복문에 적용하는 방식에 대한 내용은 여기로) #

[bash: function] 함수의 반환값을 변수에 할당할 때 유의할 점

반달가면|2017년 9월 7일

셸 스크립트에서 함수(function)를 사용하다가 간혹 실수할 때가 있어서 정리해 두기로. 우선 함수에 대한 기본적인 내용은 이전 게시물을 참고하자. 여기로 함수에서 뭔가 작업을 한 결과를 변수에 저장하는 경우를 생각해 보자. 함수 test_func에서 도출된 결과값을 변수 test_val에 저장한다면 아래와 같은 모양일 것이다. # 함수 정의 function test_func() { ... } # 결과값을 변수에 할당 test_val=`test_func` 위와 같이 역따옴표(`)를 이용해서 함수를 호출하고 그 결과를 변수에 할당할 경우, 함수 안에서 해당 결과값은 echo 명령으로 출력하도록 해야 한다. 개인적으로 아무 생각 없이 echo 대신 return을 쓰는 바람에 오동작

이지넷 NEXT-7004KVM 4:1 HDMI KVM스위치

이지넷 NEXT-7004KVM 4:1 HDMI KVM스위치

반달가면|2017년 8월 29일

몇달전에 작업용으로 사용하기 위해 4:1 KVM스위치를 알아보다가 찾아서 구입한 제품. 하나의 모니터에 4개의 PC를 연결할 수 있도록 HDMI와 USB 포트를 지원한다. 케이블은 포함되어 있지 않아서 별도로 구입. 대략 아래와 같다. PC의 출력이 DVI인 관계로 HDMI to DVI 케이블 4개 KVM스위치와 모니터를 연결하기 위한 HDMI 케이블 1개 KVM스위치와 연결된 USB 키보드와 마우스를 PC쪽으로 연결하기 위한 USB A/B 케이블 4개 이렇게 구입했다. PC의 USB포트는 A 타입이고, KVM 스위치의 USB포트는 B타입(정사각형 비슷한 모양)이므로 USB 케이블 선택에 유의하자. 결과는 만족. KVM스위치 전면의 선택 버튼만 누르면 다른 PC

[bash: wc] 파일 내용이 몇개의 행으로 이루어졌는지 확인하기

반달가면|2017년 8월 23일

예전부터 계속 활용해 오던 것인데, 생각난 김에 정리해 두기로. wc 명령으로 텍스트 파일이 총 몇줄인지(파일에 줄바꿈이 몇번 출현하는지) 확인해 볼 수 있다. -l 옵션을 사용하면 된다. 아래의 예시를 보자. # my_file.txt가 몇 줄인지 출력 wc -l my_file.txt 10 my_file.txt 만약 파일명을 출력하지 않고 싶다면 cat 명령과 조합하면 되겠다. # my_file.txt가 몇 줄인지 출력 cat my_file.txt | wc -l 10 개인적으로 가장 요긴하게 자주 쓰는 경우는 grep과 조합해서 특정 파일에서 특정 문자열을 포함한 행이 있는지 확인할 때다. # my_file.txt 내용중에 문자열 "abc"가 존재하는지 확인 grep

냥코 대전쟁 - 원더풀 제패! 초고난도 공략

냥코 대전쟁 - 원더풀 제패! 초고난도 공략

반달가면|2017년 8월 13일

경험치 100만을 가끔 준다는 설명 때문에 "원더풀 제패! 초고난도"에 여러번 도전했다가 계속 실패하던 중에, 중요한 사실을 알아냈다; 뭐냐 하면, 하늘로 축포를 쏘면서 다가오는 꼬맹이들은 공격을 하지 않는다는 것이다. 반면 이 녀석들이 공격을 받으면 그 때부터 적들이 쏟아져 나온다. 그러므로, 여기를 공략하려면 일단 처음에 축포를 쏘면서 오는 꼬맹이들을 그대로 내버려두고 일고양이 레벨을 끝까지 올리고 돈을 최대로 모아서 만반의 준비를 갖춘 후에 냥코들을 생산하기 시작해야 한다. 그렇게 해도 쉽지는 않았다. 특히 보스 캐럭터인 몽둥이를 든 코알라가 꽤나 강력하기 때문에 저가형 냥코를 계속 만들어 인해전술을 쓰면서 뒤쪽에서 강한 냥코들이 공격을 해 주는 방식으로 결국은 승리. 경