라벨이 리눅스인 게시물 표시

[linux] 시스템 시간 변경

이미지
Linux 시스템 시간 변경하는 법 date date는 시스템 시간 및 날짜를 출력하거나 변경할 수 있는 명령어입니다. date 명령어를 통해 시간을 변경하기 위해서는 아래 그림처럼 -s 옵션을 사용해야 합니다. -s 사용법은 변경하고자 하는 시간대를 문자열로 입력 하면 됩니다. $ date -s "2019-08-19 00:00:00" # 출력 # 2019. 08. 19. (월) 00:00:00 KST # 시스템 시간이 변경되었습니다. 아래와 같이 명령어 오류가 난다면 root 권한으로 date 명령어를 실행합니다. $ sudo date -s "2019-08-19 00:00:00" 시간만 변경하고 싶다면 아래와 같이 실행합니다. $ sudo date -s "17:56:00" 참고문헌 [1]  https://www.computerhope.com/unix/udate.htm

[linux] 리눅스: 쉘 스크립트에서 날짜 형식을 사용하는 방법

이미지
쉘 스크립트를 잘 모르시는 분들은 먼저 아래의 글을 읽으시길 바랍니다. 쉘 스크립트란?:  https://daewoonginfo.blogspot.com/2019/04/linux.html 쉘 스크립트 변수선언 및 문자출력하기:  https://daewoonginfo.blogspot.com/2019/04/linux_18.html 쉘 스크립트에서 날짜 형식 사용하는 방법 date +형식지정어 $ vi run.sh test_date1=$(date +%Y) echo "test_date1 =" $test_date1 # 출력 test_date1 = 2019 date +"%형식지정어" $ vi run.sh test_date2=$(date +"%Y") echo "test_date2 =" $test_date2 # 출력 test_date2 = 2019 date +"%형식지정어%형식지정어" $ vi run.sh test_date3=$(date +"%Y%m%d") echo "test_date3 =" $test_date3 # 출력 test_date3 = 20190508 date +"%형식지정어-%형식지정어" $ vi run.sh test_date4=$(date +"%Y-%m-%d") echo "test_date4 =" $test_date4 # 출력 test_date4 = 2019-05-08 출력결과 참고문헌 http://blog.daum.net/_blog/BlogTypeView.doblogid=02XGV&articleno=13720192&categoryId=0&regdt=20150224173442

[linux] 리눅스: 패스워드 변경 하는 법

이미지
사용자 패스워드 변경하기 현재 로그인 된 사용자의 패스워드를 바꾸어주는 명령어 $ passwd 현재 비밀번호 -> 새로운 비밀번호 -> 재확인 순서로 비밀번호를 변경 할 수 있습니다.

[linux]리눅스: 쉘 스크립트에서 virtualenv 실행하는 방법

이미지
스크립트를 이용한 .py 실행 hello world를 출력하는 test.py 파일을 만듭니다. $ vi test.py print("hello world") test.py를 실행시키는 스크립트를 만듭니다. $ vi run_test.sh #!/bin/bash python test.py run_test.sh를 이용하여 test.py를 실행시킵니다. $ ./run_tset.sh 현재 virtualenv에 접근하지 않았기 때문에 python command를 알지 못한다는 에러를 발생시키고 있습니다. 프로그램이 자동으로 virtualenv에 접근시키기 위해 source 명령어를 사용 합니다. $ source your_path your_path는 virtualenv activate가 있는 경로를 넣으시면 됩니다. 스크립트를 통한 .py 실행 $ ./run_test.sh ※ 위의 스크립트를 crontab에 등록한다면 자동적으로 virtualenv에 접근 하여 .py 파일을 실행시킬 수 있습니다. 연관문헌 쉘 스크립트란? https://daewoonginfo.blogspot.com/2019/04/linux.html crontab 사용법 https://daewoonginfo.blogspot.com/2019/04/linux-crontab_16.html crontab-e 사용법 https://daewoonginfo.blogspot.com/2019/04/linux-crontab-e_16.html 참고문헌 https://codeday.me/ko/qa/20190311/41806.html

[linux]리눅스: 쉘 스크립트 변수선언 및 문자출력하기

이미지
쉘 스크립트를 잘 모르시는 분들은 먼저 아래의 글을 읽으시길 바랍니다. 쉘 스크립트란?:  https://daewoonginfo.blogspot.com/2019/04/linux.html 문자 출력하기 "hello world"를 출력하기 위해 hello.sh라는 파일을 만들겠습니다. $ vi hello.sh #!/bin/bash echo "hello world" printf "hello world" printf "%s %s" hello world printf "\n" 출력 echo 문장을 출력하는데 자동으로 줄바꿈("\n")이 됩니다. Java의 println을 생각하시면 됩니다. printf C 언어의 printf를 생각하시면 됩니다. 줄바꿈을 하기 위해 따로 "\n"을 주어야합니다. 변수 선언하기 var_name=value (변수이름)=(값) 변수 사용시에는 "=" 기호 앞뒤로 공백없이 입력해야합니다. 그래야 대입연산자로 판단 되어 변수를 선언할 수 있습니다. $ vi hello.sh #!/bin/bash var=hello echo $var ※ 쉘에서는 기본적으로 모두 문자열로 처리가 됩니다. "" 처리를 할 필요가 없습니다. 출력 $ vi hello.sh #!/bin/bash var=hello world echo $var 출력 ""없이 hello world 형식의 띄어쓰기를 할 경우 world를 command로 인식하여 "world라는 command가 존재하지 않다"며 오류를 발생합니다. 이럴 경우에는 "hello world"로 묶어야합니다. $ vi he

[linux]리눅스: 쉘 스크립트란?

이미지
쉘(Shell) 이란? 우리가 도스상에서 내리는 대부분의 명령은 command.com이라는 파일이 처리하는데 이를 운영체제의 쉘(Shell) 프로그램이라고 합니다. 쉘 프로그램은 사용자가 내린 명령을 운영체제가 수행할 수 있도록 명령을 입력받고 전달하는 일 을 합니다. 즉. 사용자가 내린 명령을 운영체제가 수행할 수 있도록 통역하는 역할 을 합니다. 스크립트(Script) 란? 다른 프로그램에 의해 번역되거나 수행 되는 프로그램이나 명령어들의 나열 을 말합니다. 스크립트 언어는 소스 코드를 컴파일하지 않고 실행할 수 있는 프로그래밍 언어이며 Perl 이나 Java Script 등이 존재합니다. ※ C나 C++은 컴파일되어 사용되는 컴파일 언어입니다. ※ 스크립트와 컴파일 언어의 차이는 다음차트에서 다루도록 하겠습니다. 현재 사용중인 쉘을 확인하는 방법 $ ps -p $$ 쉘 스크립트 예시 쉘 스크립트 작성시, 가장 첫라인에 #!/bin/bash or #!/bin/sh를 작성 해야 합니다. #!/bin/bash 운영체제는 이 코드를 보고 아래에 작성되는 코드들이 bin 디렉토리 아래에 있는 bash라는 프로그램을 통해서 해석되어야 한다고 인지합니다. 쉘 스크립트 작성법 vi test.sh 명령어를 통해 test.sh 파일을 만들어 줍니다. test.sh 파일에  #!/bin/bash or #!/bin/sh echo "hello world"  내용을 기입합니다. ※ 파일을 저장하기 위해서는  Esc를 누른 뒤 : wq를 입력하고 Enter를 누릅니다. chmod +x test.sh 명령어를 통해 쉘 스크립트를 실행하기 위한 실행권한을 설정합니다. ./test.sh 쉘 스크립트 실행 명령어를 통해 쉘 스크립트를 실행한 결과 제대로 hello world

[linux]리눅스: 쉘 스크립트에서 sleep 사용법

이미지
sleep이란? script 중간에 사용자가 지정한 시간만큼 멈추고 싶을 때 사용하는 명령어입니다. 쉘 스크립트 sleep 사용법 1초 쉬기 sleep 1 sleep 1s 1분 쉬기 sleep 1m 1시간 쉬기 sleep 1h 1시간 1분 1초 쉬기 sleep 1h 1m 1s 하루 쉬기 sleep 1d 0.1초 쉬기 sleep .1 sleep 0.1 예제 echo를 통해 test출력 후 3초뒤 test1을 출력하는 간단한 sh입니다. 연관문헌 쉘 스크립트란? https://daewoonginfo.blogspot.com/2019/04/linux.html 쉘 스크립트 변수선언 및 문자출력 https://daewoonginfo.blogspot.com/2019/04/linux_18.html 참고문헌 https://brocess.tistory.com/84 http://bahndal.egloos.com/486688

[linux]리눅스: crontab -e 사용법

이미지
crontab 명령어에 대한 설명은 아래의 링크를 참조하세요. crontab 사용법:  https://daewoonginfo.blogspot.com/2019/04/linux-crontab_16.html crontab -e 명령어 crontab 명령어 입력을 위한 텍스트 에디터가 실행됩니다. 즉. 예약된 작업 편집 명령어 실행 $ crontab -e crontab -e 명령어 실행 화면 crontab -e 각 라인 형식 minute hour dom month dow (usr) command minute 0 ~ 59 사이의 값으로 몇 분 에 실행 될 것 인지를 정의합니다. hour 0 ~ 23 사이의 값으로 몇 시 에 실행 될 것 인지를 정의합니다. dom (day of month) 0 ~ (28, 30, 31) 몇 일 에 실행 될 것 인지를 정의합니다. month 몇 월 에 실행 될 것인지를 정의합니다. dow (day of week) 무슨 요일 에 실행 될 것인지를 정의합니다. 1 = 월, 6 = 토를 나타내며 0 or 7 = 일을 나타냅니다. Mon, Sun 등의 요일 이름으로도 표현 할 수 있습니다. user 명령을 실행 할 사용자를 정의 합니다. 생략가능합니다. command 실행 할 명령어 입니다. crontab -e 예제 * * * * * 명령어 매일 매분마다 명령어를 실행합니다. 1 * * * * 명령어 매일 매시간 1분마다 명령어를 실행합니다. 1,10,20 * * * * 명령어 매일, 매시간, 1분, 10분, 20분마다 명령어를 실행합니다. 1 1 * * * 명령어 매일 오전 1시 1분마다 명령어를 실행합니다. 1 1-5 * * * 명령어 매일 오전 1~5시 1분마다 명령어를 실행합니다. 1 */2 * * * 명령어 매일 2시간 간격으로 1분에 명령어를 실행합니다

[linux]리눅스: crontab(크론탭) 사용법

이미지
crontab이란? 특정한 명령이나 스크립트를 지정한 시간/날짜에 자동으로 실행하게 해줍니다. crontab 명령어 crontab -e crontab 명령어 입력을 위한 텍스트 에디터가 실행됩니다. 즉. 예약된 작업 편집 명령어 실행 $ crontab -e crontab -e 명령어 실행 화면  ※ 버전에 따라 화면이 다를 수 있으며 저 같은 경우에는 이미 crontab에 명령어가 추가되어 있습니다 crontab -l 현재 등록되어 있는 crontab 목록이 콘솔에 출력됩니다. 즉. 예약된 작업리스트 출력 명령어 실행 $ crontab -l crontab -l 명령어 실행화면 crontab -e 명령어를 실행했을 때의 화면이 출력되는걸 볼 수 있습니다. crontab -r 모든 crontab을 삭제해줍니다. 즉. 예약된 작업 삭제 명령어 실행 $ crontab -r crontab -r 명령어 실행 후 crontab -e 명령어 실행화면 crontab -r 명령어 실행 뒤 crontab -l or crontab -e를 확인해본 결과 기존에 있던 명령어가 사라진걸 확인할 수 있습니다. 연관문헌 쉘 스크립트란? https://daewoonginfo.blogspot.com/2019/04/linux.html crontab -e 사용법 https://daewoonginfo.blogspot.com/2019/04/linux-crontab-e_16.html 참고문헌 https://includestdio.tistory.com/31 https://jdm.kr/blog/2

[linux]리눅스: cp를 이용한 파일 복사

이미지
cp 명령어를 사용하여 파일과 폴더를 복사할 수 있습니다. linux manual에 나와있는 cp 설명 cp 사용법 cp (Ctrl+C할 경로 + 파일명) (Ctrl+V할 경로) ※ 현재파일들은 /home/user/example_cp & /home/user/cp_file의 구조입니다. 파일복사 cp test_file.txt ../cp_file example_cp 폴더에 있는(ls 명령어를 통해 확인 가능) test_file.txt ( Ctrl+c 할 파일) . test_file.txt 파일을 cp_file 폴더 (Ctrl+v) 에 파일명을 동일 하게 복사합니다. 즉. example_cp 폴더에 있는 test_file.txt를 Ctrl+c해서 cp_file 폴더에 Ctrl+v 한다고 생각하시면 됩니다. cp test_file.txt ../cp_file/modify_test_file.txt example_cp 폴더에 있는 test_file.txt (Ctrl+c) test_file.txt 파일을 cp_file 폴더 (Ctrl+v) 에 modify_test_file.txt명으로 변경 하여 복사합니다. 즉. example_cp 폴더에 있는 test_file.txt 파일을 Ctrl+c 한 뒤 cp_file 폴더에 Ctrl+v 하여 파일명을 변경한다고 생각하시면 됩니다. 폴더복사 (-r) linux manual에 나와있는 cp의 -r 설명 cp -r cp_file example_cp/ cp_file 폴더를 example_cp 폴더에 폴더명을 동일 하게 복사합니다. 즉.  cp_file  폴더를 Ctrl+c해서 example_cp 폴더에 Ctrl+v 한다고 생각하시면 됩니다. cp -r cp_file example_cp/modify_cp_file cp_file 폴더를

[linux]리눅스: nohup을 이용한 백그라운드 프로세스 실행

nohup이란? no hang-up signal으로 불리며 리눅스, 유닉스에서 쉘 스크립트파일(.sh)을 데몬형태로 실행시키는 프로그램입니다. 터미널 세션이 끊겨도 실행을 멈추지 않고 동작하도록 합니다. nohup 사용법 $ nohup python filename.py & 실행 중인 nohup을 보고 싶다면 $ nohup python -u filename.py & $ tail -f nohup.out nohup을 사용하기 위해서는 755 이상의 권한을 주어야 합니다. $ chmod +x filename.py 실행 중인 프로세스 확인 $ ps -ef | grep filename 프로세스 죽이기 $ kill -9 %1 (1번 프로세스일 경우) 연관문헌 쉘 스크립트란? https://daewoonginfo.blogspot.com/2019/04/linux.html 참고문헌 https://blkcoding.blogspot.com/2018/03/nohup.html