목록리눅스(Linux) (6)
imhamburger 님의 블로그
1. 특정 파일 내용을 여러 파일에 복사하기특정 파일 안에 있는 내용을 복사하여 여러 파일 안에 복사하고 싶었다. 하나씩 해도되지만 그건 너무 비효율적이라 생각했다.아래 history.log 중 바이트가 0인 파일들은 빈 파일이다. 빈 파일 안에 다른 채워져있는 파일 하나를 골라 넣어보고자 한다. 아래 코드를 사용하면 된다.cat {채워져있는 파일명} | tee {빈파일명1} {빈파일명2} {빈파일명3}cat은 '내용을 보겠다.'라는 명령어이고,tee는 표준 입력에서 읽은 내용을 표준 출력에도 사용하면서 파일에 저장하는 두가지를 동시에 사용하는 명령어이다. 이 말이 살짝 이해가 안가는데 예시로 살펴보자! 1-1. 표준 출력을 이용한 사용 echo {출력내용} | tee {파일이름} 위의 코드를 터미널에..
맥에서 터미널로 파이썬 코드를 작성하거나 다른 언어 코드를 작성할 때 매번 수작업으로 띄어쓰기를 해야했다.너무 불편해서 띄어쓰기를 해주는 기능을 추가하려 했다. 처음엔 .vimrc에 syntex on을 추가하였다. 글씨는 하이라이트가 되나 띄어쓰기가 해결되지는 않았다. 결과 구글링한 결과, .vimrc에 아래 코드를 추가해줘야 했다. 추가하고 저장하면 정상적으로 띄어쓰기가 되어있을 것이다.filetype plugin indent on 결과
nohup은 'no hangups'라는 의미로 영어에서 전화를 끊을 때 끊는다고 표현할 때 'hangup'이라는 단어를 사용하는데 'no hangup'은 '끊지 않는다.'라고 해석할 수 있다. nohup을 쓰면 쉘스크립트 파일(*.sh)을 데몬 형태로 실행시킬 수 있다. 따라서 터미널을 종료해도 명령어로 중단을 외치기 전까지 해당 파일이 실행된다. 가끔 오랜 시간이 걸리는 스크립트를 사용할 때 좋다.참고로 nohup을 사용하면 nohup.out 이라는 파일이 생성되는데 여기에 실행된 파일의 로그(기록)가 담긴다. 데몬(Daemon)이란?눈에 보이지 않지만 열심히 일하고 있는 형태를 리눅스에서 데몬이라고 부른다. 여기서 주의사항은 nohup으로 실행할 파일의 permission이 755 이상이여야 작동한..
문제_SUDDEN 이라는 파일이 있을 때 "SUDDEN!!!"을 외친다. 그리고 3초 간격으로 실행된다. 없을 때는 "check" 를 외친다. 3초 간격으로 실행된다. 처음 내가 작성한 코드#!/bin/bashFILE=~/tmp/_SUDDENwhile truedo if [ -e "$FILE" ]; then echo "SUDDEN!!!" sleep 3 else echo "check" sleep 3 fidone 실행했을 때는 문제가 없어보이지만 이 코드는 잘못된 코드이다. 결론부터 말하자면, if문 안에 sleep 3 을 넣으면 CPU가 엄청 높아진다. 왜냐하면 전체적으로 봤을 때는 실행속도가 주어지지않아 계속해서 컴퓨터가 돌아가며 "SUDDEN!!!"이 나오는 것을..
오늘은 데이터 엔지니어 부트캠프 2일차이다. 비전공자라 컴퓨터지식이 없어 그때그때 구글링하며 배우고 있다.오늘은 1일차에 배웠던 빔 명령어에 관해 간단한 퀴즈를 풀었다. 문제http 상태 코드는 아래와 같습니다.https://developer.mozilla.org/ko/docs/Web/HTTP/Status서버에서 실시간 발생하는 500 로그를 확인하는 방법은 아래와 같습니다.$ tail -f tmp/ls.log | grep 500 5xx 에 해당하는 모든 로그를 확인하는 grep 구문은 무엇인가요? 내가 이 문제를 처음 풀었던 답은 아래와 같다.tail -f tmp/ls.log | grep '^5' *여기서 tail -f 명령어는 실시간으로 내용을 출력하여 파일을 모니터링 할 수 있게 해준다. tail ..
오늘은 데이터엔지니어 부트캠프 1일차에 배운 내용 중 헤맸던 부분과 이해가 가지 않았던 부분을 정리해보았다. 우선 빔(Vim) 이라는 명령어를 이용해 터미널에서 파일과 폴더를 만들고 수정하는 것을 배웠다. 전에 터미널 명령어에 대해 조~금 공부했어서 cd / mkdir / rm 등 기본적인 것은 익숙하였다. 파일을 수정하고 저장하는 명령어는 :wq 이다. 그런데 다음과 같은 오류메세지를 받았다.E45: 'readonly' option is set 이 오류가 나타나는 이유는 내 지금 현재 권한이 readonly로만 되어있기 때문이다. 권한을 변경해도 상관없지만, 이미 내용을 수정해버렸다. 그래서 아래 위 메세지에 (add ! to override) 라길래 :wq 옆에 ! 만 추가해주었다.그랬더니 오류없이..