CS 9

[Linux] vi 명령어 정리

vi 편집기의 모드(command, Edit, LastLine 모드)동작명령어vi 시작vi [경로]명령 모드esc편집 모드i, a, ovi 종료 :wq(w저장 q종료)Last Line 모드:Command 모드(esc)커서이동방향키동작 명령어G가장 마지막 줄로 이동gg첫번째 즐로 이동[n]Gn번째 줄로 이동$커서가 위치한 줄의 맨 끝으로 이동0커서가 위치한 줄의 맨 앞으로 이동w커서가 한 단어씩 오른쪽으로 이동b커서가 한 단어씩 왼쪽으로 이동 (2) 삭제명령어동작x한 문자 삭제, 또는 Edit모드에서 백 스페이스나 Delete 키로 삭제dd커서가 위치한 한 줄을 삭제 d[커서 이동]커서 이동하는 만큼 삭제 (3) 수정명령어 동작r커서가 위치한 부분의 문자 하나를 입력하는 문자로 대체uCtrl + z 처럼 ..

CS/Linux 2025.03.11

이진 탐색 트리(Binary Search Tree, BST)

이진 탐색 트리(Binary Search Tree, BST)이진 탐색 트리(BST)는 이진 트리의 한 종류로, 특정 규칙에 따라 데이터를 저장하여 탐색, 삽입, 삭제 등의 연산을 효율적으로 수행할 수 있습니다.특징구조:각 노드는 최대 2개의 자식 노드를 가질 수 있습니다.노드에는 키(key)와 데이터가 저장됩니다.속성 (Binary Search Property):왼쪽 서브트리의 모든 노드 값은 현재 노드 값보다 작습니다.오른쪽 서브트리의 모든 노드 값은 현재 노드 값보다 큽니다.이 규칙은 모든 서브트리에서도 동일하게 적용됩니다.중위 순회(Inorder Traversal):BST를 중위 순회하면 항상 오름차순으로 정렬된 값을 얻을 수 있습니다.효율성:일반적으로 연산의 시간 복잡도는 O(h) (h는 트리의 ..

CS/알고리즘 2025.01.17

[Linux] 윈도우에서 Linux 우분투(aws)로 파일 옮기기(다른 컴퓨터에서 다른 컴퓨터로 파일 옮기기)-termius, scp,ppk->pem

프론트엔드 배포를 위해서 aws 우분투 인스턴스 생성 후에 nginx를 설치했다.그리고 윈도우 powershell에서 scp 명령어를 써서nginx에서 vue 파일을 받아서 복사 붙여넣기 하고 싶었는데 자꾸Permission denied (publickey)Received message too long이런 오류들이 떴다.일단 해결 방법을 먼저 말하자면scp -r [복사할 파일 경로] [계정@ip주소:붙여넣기 할 경로]이렇게 하니 Permission denied (publickey)오류가 나서  pem 키를 추가해주었고scp -i [pem키 경로] -r [복사할 파일 경로] [root@ip주소:붙여넣기 할 경로]그러고 나니Received message too long이런  메세지가 떠서 우분투 root계정..

CS/Linux 2024.12.27

[mariadb] 가상머신으로 db 서버 만들기

1. 먼저 VMware에서 가상머신 1개 생성후에 고정 ip 주소를 할당한다.저번 글 참고!!https://s-j-hyun.tistory.com/13 리눅스 고정 IP 설정하는 법💡 모르면 바보 (나만)리눅스: 윈도우랑 비슷한 거명령어: 프로그램서버: 서비스를 제공하는 프로그램클라이언트: 서비스를 이용하는 프로그램IP주소: 멀리 있는 컴퓨터를 찾아가는 주소포트s-j-hyun.tistory.com  1. mariadb 클라이언트 프로그램 설치apt install mariadb-server 2. mariadb 설정우리는 리눅스 서버를 윈도우 컴퓨터에서 접속하고 싶기 때문에 bind 주소를 바꾸어주어야한다.vi /etc/mysql/mariadb.conf.d/50-server.cnf#27번 라인에 있는 설정을..

CS/DB 2024.12.24

[cs] 그냥 기본 외워야 하는 cs(계속 추가)

리눅스: 윈도우랑 비슷한 거 명령어: 프로그램 서버: 서비스를 제공하는 프로그램 클라이언트: 서비스를 이용하는 프로그램 IP주소: 멀리 있는 컴퓨터를 찾아가는 주소 포트 번호 : 컴퓨터에서 실행 중인 특정 프로그램을 찾아가는 번호 웹서비스 : 서버 컴퓨터에 있는 파일을 클라이언트에 보낼 수 있는 프로그램 개체: 현실세계의 것을 컴퓨터 세상으로 옮긴 것 추상화: 공통적인 것만 뽑음 프론트 엔드: 클라이언트의 컴퓨터에서 실행되는 코드 백 엔드: 서버 컴퓨터에서 실행되는 코드 웹 서버(프론트) : 서버에 저장된 파일을 클라이언트가 다운로드 할 수 있도록 해준다. 웹 클라이언트(ex 웹브라우저): URL을 이용해서 서버에게 특정 파일을 달라고 요청하고 서버로 부터 받은 파일을 화면에 보여준다 WAS(웹 어플리케..

CS 2024.12.16

리눅스 기본 명령어 정리

리눅스 기본 명령어디렉토리 관련 명령어pwd : 현재 작업 디렉토리 확인cd : 작업 디렉토리 변경ls : 디렉토리 내용 확인ls -al 자세한 디렉토리 보기mkdir : 디렉토리 생성rmdir : 디렉토리 제거mv : 디렉토리 이름 변경mv : 디렉토리 이동cp : 디렉토리 복사파일 관련 명령어touch : 내용에 아무것도 없는 빈 파일을 생성rm : 파일을 제거하는 명령어rm -rf 경로mv : 파일 이름 변경mv : 파일 이동cp : 파일 복사cat, head, tail, more : 파일 내용 확인모든 폴더와 파일에는 권한이 설정되어있음/(root 디렉토리- 윈도우에서 c드라이브) :리눅스의 루트/root(루트 사용자의 내 문서)root user(관리자 계정)cd /절대 경로: 최상위 경로인 /에..

CS/Linux 2024.12.16

리눅스 고정 IP 설정하는 법

💡 모르면 바보 (나만)리눅스: 윈도우랑 비슷한 거명령어: 프로그램서버: 서비스를 제공하는 프로그램클라이언트: 서비스를 이용하는 프로그램IP주소: 멀리 있는 컴퓨터를 찾아가는 주소포트 번호 : 컴퓨터에서 실행 중인 특정 프로그램을 찾아가는 번호   **IP주소**0.0.0.0~255.255.255.25500000000.00000000.00000000.0000000011111111.11111111.11111111.11111111 IP주소 00000000.00000000.00000000.00000000서브넷 11111111.11111111.00000000.00000000(보통 앞에서 3번째까지 네트워크 구분 주소) IP 주소의 앞 쪽은 네트워크를 구분하는 주소IP 주소의 뒤쪽은 특정 네트워크에서 컴퓨터를 ..

CS/Linux 2024.12.16

리눅스

리눅스리눅스의 역사유닉스개발자들이 유닉스라는 운영체제를 기계어로 만듦기계어로 만들었던 유닉스를 C언어로 개발하였고 완성된 유닉스의 소스코드를 무료로 대학기관이나 연구소에 배포배포된 유닉스를 여러 기관에서 개발유료인 유닉스에 반발하여 무료로 배포하려는 기관들이 등장리눅스리누스 토발즈라는 대학생이 GNU시스템에 적합한 커널을 개발이후 계속해서 발전해가며 여러 리눅스 종류 탄생리눅스의 종류안녕 리눅스: 우리나라에서 개발중우분투: 개발자 또는 일반 유저가 사용하기 좋음CentOS: 서버로 사용하기 알맞음~~(지금은 망했다고 들었다..)~~리눅스의 특징높은 이식성과 확장성(C언어 기반이기 때문!!)안전성과 신뢰성(국제적이고 개방적으로 개발되었기 때문에 문제점에 대한 대처가 빠름)계층적 파일 시스템 (최상위 디렉토..

CS/Linux 2024.12.16

서버와 클라이언트

💡 이거 안 외우면 컴공아님 (나만)서버: 서비스를 제공하는 프로그램클라이언트: 서비스를 이용하는 프로그램IP주소 : 멀리 떨어진 컴퓨터를 찾아가기 위한 주소포트 번호 : 컴퓨터에서 실행중인 특정 프로그램을 찾아가는 번호서버란?서비스를 제공하는 프로그램클라이언트란?서비스를 이용하는 프로그램서버의 종류와 예시- 웹 서버: nginx, httpd(특정 회사에서 만든 프로그램)- 게임 서버: agar.io- 메세지 서버: kafka, rabbitmq, redis, mosquitto- 파일 서버: 베리즈 웹 쉐어, 파일 질라- 메일 서버: Postfix,Exim DNS 서버: bind즉, 서버 프로그램이란 특정회사에서 만든 특정 프로그램(클라우드: 남의 컴퓨터 서버 쓰는 것)클라이언트의 종류와 예시- 웹 클라..

CS/SW 아키텍쳐 2024.12.16