리눅스 10

[Bash Script] Bash Script 프로젝트 : CloudUploader(AWS CLI, S3) 설정

1. 설정 및 인증 Ubuntu Version : 22.04.3 LTS, AWS S3로 진행한다. AWS 콘솔 -> S3 버킷 만들기 : 버킷 이름 및 리전 만 설정 후 나머진 기본값으로 설정 버킷이름 : mytest-test01 (버킷 이름은 유니크 해야 하기 때문에 중복되면 안됨.) AWS 리전 : 아시아(서울) ACL 비활성화(권장) 이 버킷의 퍼블릭 액세스 차단 설정 : 모든 퍼블릭 액세스 차단 버킷 버전 관리 : 비활성화 기본 암호화 : Amazon S3 관리형 키(SSE-S3)를 사용한 서버 측 암호화 버킷 키 : 활성화 AWS CLI 1. 액세스 키 발급 보안자격증명 -> 액세스 키 만들기 (하단 내리면 있음) -> 사용사례 CLI 선택 후 확인 발급되는 key값은 따로 저장하거나 복사 해둬..

[Bash Script] Bash Script 프로젝트 : CloudUploader(AWS CLI, S3)

https://learntocloud.guide/docs/phase1/?ref=madebygps.com#capstone-project-clouduploader-cli 해당 내용 참고하였습니다. Phase 1: Linux Bash and Networking fundamentals | Learn to Cloud Author: GPS learntocloud.guide 목표 : 사용자가 지정된 클라우드 스토리지 솔루션(aws s3) 에 파일을 빠르게 업로드 할 수 있게 해주는 script 를 만든다. - Ubuntu 에 AWS CLI 설치 후 Shell을 통해 Ubuntu에 있는 파일을 Amazone S3 에 파일 업로드 설정 및 인증: 클라우드 공급자(예: AWS S3, Google Cloud Storage,..

[Bash Script] 산술연산 및 looping(while,until,for)

산술연산 expr /usr/bin/expr command로 지원. bash shell 에 종속되지 않음. 정수형 산술연산(+,-,*,/,%), 논리연산( |,& ), 관계연산(=,!=,>,>=, 8 sum = `expr $x + 10` type expr let bash shell 안에 포함되어 있음. 정수형 산술연산, bit 연산 ( , &, |), 논리연산 (&&, ||), 단항연산 (++,+=,-=) let sum=x+5 let x++ let x+=1 type let ((sum=x+5) ((x++)) ((x-=1)) 조건부 loop while while 다음의 command가 성공하는 동안 do~done 사이의 명령어를 반복 실행 while 조건명령어 do 반복명령어 done Ex) num 변수에 1..

[Bash Script] Branching(exit, test, if-then-fi, case)

1. exit 실행된 프로그램이 종료된 상태를 전달 0 프로그램 또는 명령이 성공으로 종료했음을 의미 1-255 프로그램 또는 명령이 실패로 종료했음을 의미 1 일반에러 2 Syntax error 126 명령을 실행할 수 없음 127 명령(파일)이 존재하지 않음 128+N 종료 시그널+N(kill -9 PID 로 종료 시 128+9=137) $? 종료 값 출력 Ex) $ cp file1 : file1 파일이 없어서 error 발생 $ echo $? 일반에러 이므로 1 출력 2. test 비교연산자 test or [명령어] 명령어 실행결과를 true(0) 또는 false(1)로 리턴 한다. test 명령어는 다양한 연산자를 지원한다. x -eq y : x=y true x -gt y : x > y true ..

[Bash Script] Input & output(echo, read)

1. echo Shell 에서 작성한 내용을 출력해준다. echo -n : 메세지 출력후 newline 문자를 추가하지 않는다. -e : backslash escapes 문자를 해석하여 특별한 의미를 지정한다. /t TAP키 /n 줄 바꿈 /a alert(bell) Ex) echo "Your time is up" : Your time is up 화면 출력 echo "Your time is up" > time.txt : Your time is up 내용을 time.txt 에 삽입 2. read Shell 에서 작성한 내용을 입력받는다. read -n 지정한 문자수만큼 입력 받는다. -t 지정한 시간안에 입력 받는다. -s silent mode로 입력받는 글자가 보이지 않는다. Ex) read name : ..

[Bash Script] Bash shell의 Rule

https://youtu.be/UlQ-xu-koR0?si=RDY-uD3Ae7YeKuYd 해당 강의 참고하였습니다. Metacharacters Shell에서 특별히 의미를 정해 놓은 문자들 \ ? ( ) $ ... * {} [] 등 1. Quoting Rule 메타문자의 의미를 제거하고 단순 문자로 변경 Backslash (\) : \ 바로 뒤의 메타 문자는 특별한 의미를 제거한다 touch * : *은 와일드카드 문자로서 현재 디렉토리에 일치하는 파일을 나타낸다. 그러므로 * 이름의 파일 생성이 안된다touch \* : 메타 문자 의미를 제거하여 * 이름의 파일 생성 Double Quotes(" ") : " " 내의 모든 메타문자의 의미를 제거. 단 $, "은 제외한다 Single Quotes(' ') ..

[Bash Script] 환경변수 및 Bash script

환경변수 란? 리눅스 환경 변수(Linux environment variables)는 리눅스 운영 체제에서 프로세스와 프로그램들이 작동할 때 사용하는 설정 값들을 담고 있는 것으로 생각 할 수 있다. 이러한 환경 변수는 프로그램이 동작할 때 필요한 설정, 동작 방식 또는 환경을 정의하기 위한 정보를 포함하고 있다 Bash script는 Unix 및 Linux 운영체제의 Shell을 기반으로 하는 스크립트 이다. Bash script 사용목적 자동화: 자동 작업 수행을 위해 명령어들을 연속적으로 실행하고, 특정 이벤트에 대응하는 명령을 실행하는 데 사용됩니다. 시스템 관리: 파일 시스템 조작, 프로세스 관리 및 다양한 시스템 관리 작업을 자동화하는 데 활용됩니다. 사용자 지정 작업: 사용자가 필요한 특정 ..

[Ubuntu] 사용자 추가,삭제,변경 및 파일권한 설정

useradd : 사용자추가 sudo useradd dragon : dragon 이라는 계정 생성 cat /etc/passwd 경로에서 계정 생성된 정보 확인 dragon:x:1001:1001::/home/dragon:/bin/sh : 밑줄 친 1001번은 group을 나타낸다. sudo passwd dragon : dragon 계정 패스워드 설정 보통은 계정 로그인하면 home 디렉토리로 이동하게 되는데 신규 계정은 home 디렉토리가 없으므로 home 디렉토리를 만들어준다. 만들어준 home 디렉토리 권한은 root로 되어있다. $ ls -l /home drwxr-xr-x 2 root root 4096 Oct 28 09:19 dragon : 권한이 root(소유자) root(소유그룹) 으로 되어있다 ..

리눅스/ubuntu 2023.10.28

[Ubuntu] 파일 압축 관리(tar)

압축 하기 tar -cf name.tar a b c : 파일a b c를 압축한다 tar -zcf name.tar.gz a b c : a b c 파일을 보통 z옵션을 추가해서 많이 사용하고 z옵션을 통해 압축했다는 의미로 tar 뒤에 .gz를 붙인다 압축 풀기 tar -zxf name.tar : name.tar의 압축을 푼다 tar -zxvf name.tar : v 옵션을 줄 경우 압축해제 풀리는 내용이 나온다 wget(webget) : HTTP, HTTPS, FTP 프로토콜을 통해 내려받기를 지원한다

리눅스/ubuntu 2023.10.28

[Ubuntu] 파일 관리 관련 명령어

해당 내용은 리눅스 강좌를 참고하였습니다. - https://www.youtube.com/watch?v=TZjB94sA3IU&list=PLq8wAnVUcTFU9zLWK-dHWrvTJ0PF8Y0Sf&index=1&ab_channel=%EB%89%B4%EB%A0%89%EC%B2%98 파일 탐색을 위한 명령어들 pwd(print working directory) : 현재 디렉토리 경로를 출력 ls(list) : 디렉토리 목록 나열 ls -l : 디렉토리 상세목록 나열 ls workspace/ : 절대경로를 통해 해당 디렉토리 목록 확인 cd(change directory) : 디렉토리를 변경 상대경로 : cd var 또는 cd ./var 현재경로에서 하위경로로 이동. cd ~ : home으로 바로 이동 cd ..

리눅스/ubuntu 2023.10.27