목록Operating System (61)
우노
string to int 변환 방법 #!/bin/bash # string 선언 STRING="80" # string 을 int 로 변환 INT=$((STRING))
압축 tar 압축 tar -cvf "파일명.tar" "폴더명" tar.gz 압축 tar -zcvf "파일명.tar.gz" "폴더명" zip 압축 zip "파일명.zip" "폴더명" # 해당 폴더의 하위 폴더까지 모두 압축 zip "파일명.zip" -r "폴더명" 압축 해제 tar 압축 해제 tar -xvf "파일명.tar" tar.gz 압축 해제 tar -zxvf "파일명.tar.gz" zip 압축 해제 unzip "파일명.zip" # 특정 폴더에 압축 해제 unzip "파일명.zip" -d "폴더명" 참고 https://brownbears.tistory.com/161
문자열 Index Slice #!/bin/bash str1="abcde" # 1번째 index 부터 마지막 index 까지 Slice echo "${str1: 1}" # 뒤에서 2번째 index 부터 마지막 index 까지 Slice echo "${str1: -2}" bcde de
파일 쓰기 방법 #!/bin/bash # 결과 파일 선언 result_file="./result_file.txt" # 문자열 선언 string="a b c d" # 문자열 공백 분리 후, 배열 생성 array=(${string}) # 배열 요소들을 결과 파일에 쓰기 for element in ${array[@]}; do echo ${element} >> ${result_file} done
문자열 포함 여부 확인 방법 #!/bin/sh # 문자열 선언 string="aa bb cc dd" substring="cc" # string 에 substring 이 포함되는지 확인 if [[ "${string}" == *"${substring}"* ]];then echo "substring is in string" fi
문자열 공백 분리 및 배열 선언 #!/bin/bash # 문자열 string="a b c" # 문자열을 공백 분리한 뒤, 배열로 선언 array=(${string}) 배열 요소 접근 각각의 배열 요소 접근 echo ${array[0]} echo ${array[1]} echo ${array[2]} 전체 배열 요소 접근 for element in ${array[@]}; do echo ${element} done
프로세스 확인 Linux 에서는 ps 명령어를 통해 프로세스를 확인할 수 있습니다. 다양한 옵션들이 존재하며, 가장 많이 쓰는 옵션은 -l, -e, -f 입니다. -l : 자세한 형태의 정보를 출력한다. -e : 모든 프로세스를 보여줍니다. -f : 모든 정보를 출력합니다. 옵션에 따라 아래와 같은 정보들을 확인할 수 있습니다. PID : 프로세서 ID, 각 프로세서를 구분하기 위한 고유의 ID RSS : 프로세서에 의해 사용되는 실제 메모리의 용량(K byte 단위) USER : 프로세서를 실행시킨 소유자의 계정을 보여준다. SZ : 프로세서의 자료와 스텍 크기의 (K byte 단위) TIME : 현재까지 사용된 CPU의 시간(분,초) TTY : 프로세서의 제어 터미널(t3=/dev/tty3) %CPU..
C언어의 메모리 구조 프로그램을 실행시키면, 운영체제는 우리가 실행시킨 프로그램을 위해, 메모리 공간을 할당해줍니다. 프로그램이 운영체제로부터 할당받는 대표적인 메모리 공간은 4가지입니다. 코드(code) 영역 데이터(data) 영역 스택(stack) 영역 힙(heap) 영역 메모리 영역 시각화 코드(Code) 영역 코드(Code) 영역은, 실행할 프로그램의 코드가 저장되는 영역으로, 텍스트 영역이라고도 부릅니다. CPU 는 코드 영역에 저장된 명령어를 하나씩 가져가서 처리하게 됩니다. 데이터(Data) 영역 전역 변수와 static 변수가 할당되는 영역입니다. 프로그램의 시작과 동시에 메모리에 할당되고, 프로그램이 종료되면 메모리에서 소멸됩니다. 예제 코드 #include int a = 10; // 데..
들어가기 앞서, 보통 SSH 명령어를 통해 서버에 접근할 경우, 암호를 입력해야 접근이 가능합니다. 하지만, 매 접근마다 암호를 입력하는 것은 매우 귀찮습니다. 따라서, 공개키 인증을 통해, SSH 암호 없이 서버에 접근하는 방법을 다뤄보겠습니다. 진행 순서 1. Client 의 SSH 공개키 생성 2. Server 에 SSH Server 설치 3. Server 에서 SSH 접속 허용 설정 4. Client 에서 Server 로 SSH 접속 테스트 5. Server 에 암호 없이 접근하기 위해, Client 의 SSH 공개키를 Server 에 저장 6. SSH 를 사용해 암호 없이 Server 에 접속 1. Client 의 SSH 공개키 생성 Client 에 SSH 공개키가 존재하는지 확인 cat ~/...
진행 환경 MacOS 진행 순서 Ubuntu 18.04 LTS iso 파일 다운로드 부팅 USB 제작을 위한 Etcher 툴 다운로드 부팅 디스크 설정 Ubuntu 18.04 LTS 설치 1. Ubuntu 18.04 LTS iso 파일 다운로드 아래 링크에 접속합니다. https://releases.ubuntu.com/18.04.4/ 링크 접속 후, Ubuntu 18.04 LTS iso 파일 [64-bit PC (AMD64) desktop image] 을 다운로드합니다. (약 2G) Desktop 버전과 Server 버전의 차이는 GUI (graphic user interface) 차이입니다. Desktop 버전이 사용하기에 좀 더 직관적이고, 필요에 따라 cmd 방식의 Terminal 을 사용가능하기에..