전체 글

Data Engineering과 Cloud Native 기술에 대해 Dive Deep 하는 플랫폼 엔지니어가 되는 것을 목표로 하고 있습니다. 경험과 공부한 내용을 기록하며 지속가능한 엔지니어가 되는 것이 꿈입니다.
1. vi 편집기로 들어가는 명령어 vi 파일이름 vim 파일이름 2. 종료하기 :q , :q! 저장하지 않고 종료 :wq, :wq! 저장하지 않고 종료 3. 이동하기 h j k l 좌 하 상 우 키보드의 화살표로도 이동할 수 있다. ^ 현재 라인의 가장 앞으로 이동 $ 현재 라인의 가장 끝으로 이동 4. 화면 이동 H 보고 있는 화면의 가장 위쪽으로 이동 M 보고 있는 화면의 중간으로 이동 L 보고 있는 화면의 아래로 이동 gg 파일 맨 위로 이동 G 파일 맨 아래로 이동 5. 파일 라인을 지정하기 :set nu 라인 넘버를 보이게 설정하는 명령어 :set nonu 라인 넘버를 보이지 않게 설정하는 명령어 :n 이동하고자 하는 라인넘버를 n에 써주면 해당 라인으로 이동함 (ex :30 ) 6. 파일 편..
1. Link Layer 하는 역할 Link Layer 는 error detection 및 correction 을 한다. 또한 broadcast channel 에서 각각의 패킷이 충돌하지 않고 다음 hop 으로 전송될 수 있도록 control 해준다. 2. Link Layer의 구조 link layer 에서 host들과 router들을 node로 보고, 이 node들을 잇는 communication channel들을 link 라고 한다. node들을 잇는 communication path로는 wired links(유선 통신), wireless links(무선 통신), LAN 이 있다. link layer 는 컴퓨터의 network interface card (NIC) 에 구현되어 있다. 3. MAC pr..
/bin : binary directory 사용자 명령어가 존재하는 디렉토리 /sbin : system binary directory 시스템이 사용할 수 있는 명령어가 존재하는 디렉토리 /home : 사용자 홈 디렉토리 /proc : proc 파일 시스템으로 매핑되어 있으며, 주로 커널의 파라미터와 동작중인 프로세스와 관련된 정보를 제공하는 디렉토리 →커널이 메모리상에 만들어 놓은 것으로 디스크상에 존재하지 않는다. /tmp : 응용 프로그램 동작 시 각 프로그램 동작 중 발생하는 임시 파일을 load 하는 디렉토리 /var : 시스템 운영 중 발생하는 프로세스 (프로세스 관련 정보, 시스템 로그, 시스템 메일 저장 정보, 프린트, spool 정보 등 ) /boot : 부팅 이미지 정보가 있는 부팅 관련..
1. 현재 작업 디렉토리 확인 pwd 2. 쉘 출력된 내용 지우기 clear 3-1. 디렉토리 내용 확인 [root@localhost ~]# ls aaaa anaconda-ks.cfg initial-setup-ks.cfg 3-2. 디렉토리 내용 자세히 확인하기 [root@localhost ~]# ls -l 합계 12 -rw-r--r--. 1 root root 4 12월 26 14:17 aaaa -rw-------. 1 root root 1923 12월 26 11:17 anaconda-ks.cfg -rw-r--r--. 1 root root 1971 12월 26 11:26 initial-setup-ks.cfg 여기서 각 필드의 의미를 알아보자. d rwx r-x r-x 5 root root 5 Dec 27 ..
virtual box 의 CentOS를 켠다. CentOS에서 터미널을 연다. 이더넷 연결이 되어있는지 확인하고, 이더넷이 연결되어 있지 않다면 켜주자 ! ip a 명령어를 통해 현재 나의 ip 주소를 확인할 수 있다. 196 번대 ip주소를 기억해둔다. 다음으로 systemctl start sshd systemctl enable sshd 두 명령어를 터미널에 입력한다. CentOS를 켜둔 채로 리눅스 터미널에서 작업을 진행한다. virtual box 밖인 실제 운영체제인 리눅스 (우분투) 터미널에서 ssh root@196.x.x.x.x 를 입력하고 root 계정의 패스워드를 친다. root@localhost ~ 로 계정이 바뀐 것을 확인할 수 있다. 이것으로 CentOS를 리눅스 터미널에서 사용하기 셋..
·Algorithm (PS)
https://school.programmers.co.kr/learn/courses/30/lessons/72412?language=python3# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Hash 자료구조와 이진탐색을 이용하여 효율성을 맞혀야 하는 문제이다. 어려웠따.. 백준 환경에 익숙해져있는 상태인데, 기업 코딩 테스트를 위해 프로그래머스 환경에서 좀 연습을 해야겠다 딱봐도 for문으로 빡빡 돌려서 구하면 시간 초과날 것 같다 ㅎㅎ i) dictionary 구성하기 이 딕셔너리를 구성하는 것이 문제해결의 포인트이다. info 값으로 , java ..
·Algorithm (PS)
https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 구현을 열심히 해주면 되는 문제~~ 뱀의 위치표현을 정확하게 하는 방법이 관건이라 생각한다. 사과를 먹으면 뱀의 현재까지 위치는 그대로 + 사과가 있던 위치(= 새로 이동한 칸)를 append 해준다. 칸에 사과가 없는 경우 뱀은 꼬리좌표를 pop 시키고, 새로 이동한 칸을 append해준다. + 그리고 rotate할 때 꿀팁 -1 %4 == 3 이다. 마이너스도 % 연산을 할 수 있다..!! 굉장히 간..
·Algorithm (PS)
https://www.acmicpc.net/problem/17070 17070번: 파이프 옮기기 1 유현이가 새 집으로 이사했다. 새 집의 크기는 N×N의 격자판으로 나타낼 수 있고, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 (r, c)로 나타낼 수 있다. 여기서 r은 행의 번호, c는 열의 www.acmicpc.net 이거 DP로도 풀수있다는데 방법의 수가 1억개 보다는 작으니까 그래프 구현으로 풀었다 n = int(input()) array = [] answer = 0 dp = [[0] * n for _ in range(n)] for i in range(n): array.append(list(map(int, input().split()))) def move(x1, y1, x2, y2,..
minjiwoo
minji's engineering note