새해 첫 글은 ubuntu에서 어떻게 메모리와 cpu에 대한 정보를 보느냐입니다. proc 디렉토리에는 cpuinfo가 있습니다. 이것을 보도록 하겠습니다. 여기서 봐야 할 것은 model name하고 cache size, core 갯수를 의미하는 cpu cores, 그리고 siblings입니다. 보면 i5-4200U가 보이는데요. 이는 i5 4세대를 의미합니다. 사실 모델명만 알면, 찾는 것은 어렵지 않습니다. i5-4200u에 대해서 나온 페이지를 보겠습니다. 이것은 코어가 2개이고 스레드가 4개임을 알 수 있습니다. 그런데, cpu-z 같은 것을 보면 cache의 사이즈도 나옴을 알 수 있습니다. 이 그림은 제 데스크탑에 있는 cpu 정보입니다. lscpu 명령어를 쳐 보겠습니다. 그러면 이것 저것..
OS/리눅스 검색 결과
리눅스에 있는 head 명령어에 대해 알아봅시다. 문제는 표준 출력으로 특정한 소스 파일들의 맨 마지막 줄만 제외하고 이어서 출력하라는 것입니다. man 페이지에서는, 기본적으로 파일에 있는 처음 10개 줄을 출력한다고 되어 있습니다. 10개 줄보다 적다면, 당연하게도 파일의 줄 수만큼 출력할 겁니다. file name은 여러 개 올 수 있습니다. 예를 들어 1.txt, 2.c와 같은 것들입니다. 옵션을 보니, 문제 상황에 맞아 떨어지는 것은 -c나 -n인 듯 싶습니다. 문제는 line과 관련된 것이므로, -n이나 --lines를 주면 좋겠네요. 여기서 [-]NUM이라는 것이 있는데, 앞에 -가 붙으면, 마지막 NUM개의 line을 제외하고 출력합니다. 예를 들어, 파일이 11개의 줄로 이루어져 있고 -..
대소문자 구분없이 grep을 이용해서 matched 되는 줄을 찾는 방법을 알아봅시다. grep의 man 페이지를 보면 -i, --ignore-case라고 되어 있습니다. 이는, 대소문자의 다름을 무시한다는 이야기입니다. sample.txt를 보겠습니다. 여기에는 5개의 줄로 이루어진 데이터가 들어 있습니다. 여기서, grep group을 뽑으면, 이렇게 2개의 줄만 matched 됩니다. 이는, GROUP은 대소문자를 엄격하게 구분한다면, group이 아니기 때문입니다. 이것을 무시하기 위해서 -i 옵션을 줘 보겠습니다. 그러면, GROUP 또한 매치가 됨을 알 수 있습니다. 이런 옵션은 다른 명령어에서도 유용하게 쓰일 수 있습니다. 예를 들어서, 현재 제가 있는 위치인 /home/cho을 기준으로 해..
이번 시간에는 cut 명령어에 대해서 간단하게 알아보겠습니다. 먼저, 어떤 파일인 거 같나요? 유저 이름이 나오고, /usr/sbin/nologin 같은 것이 나오는 걸로 보아서는, /etc/passwd의 내용으로 보입니다. 여기서 우리는 유저 네임만 뽑아내려고 합니다. 유저 이름은 1번째 필드이고, : 을 구분자로 구분되어 있습니다. 옵션 하나. -d는 델리미터를 의미합니다. 토큰을 구분지을 때, 구분짓는 것을 의미합니다. 둘 이상일 때에는, awk를 쓰는 것이 하나의 방법인 듯 싶어요. 이에 대해서는 awk 명령어 포스팅에서 언급을 드린 바가 있습니다. 옵션 둘. -f는 필드를 의미합니다. 구분자로 구분된 구획이 있을 텐데요. 몇 번째 구역을 출력할 것인가를 나타냅니다. 예를 들어서, /etc/pas..
cp 명령어는 옵션이 생각보다 많습니다. 그제, oh my zsh를 셋팅하는 과정에서 유용하게 써먹었던, -r과 -p 옵션만 배워보도록 하겠습니다. 사실, 그걸 셋팅할 때 cp -r을 하고, chown -r을 썼지만요. 먼저, diff 명령어는 파일이 다른지를 비교합니다. -r 옵션을 치면, 디렉토리 하위에 있는 것들에 대해서 재귀적으로 연산을 수행하게 됩니다. 아래는 홈 폴더에 있는 aa와 bb에 대해서 재귀적으로 비교하는 연산입니다. -r 옵션은 본 거 같긴 한데 익숙치 않은 거 같습니다. 그런데, 사실 rm -rf * 도 많이 보던 류입니다. 해당 위치의 하위 폴더들을 재귀적으로, 강제로 삭제하겠다는 의미입니다. 그래서 진짜 조심해야 하는 명령어입니다. 실습할 폴더들에 대한 정보입니다. tree a..
최근댓글