분류 전체보기 78

깃(GIT) 명령어

[현업에서 주로 사용했던 git 명령어들] git이란 형상관리(분산 버전 관리 시스템) 툴중 하나이다. 형상관리란 소프트웨어의 변경사항을 체계적으로 추적하고 관리를 가능하게 해주는 것을 말한다. (되돌리기가 가능해서 과거 소스 사용도 가능) 또한 git에는 3가지 영역이 존재한다. Working Directory : Git이 추적 중인 파일들이 위치하는 영역 Staging Area : commit 할 준비가 된 파일들이 위치하는 영역 Git Directory : commit되어 버전을 관리하는 파일들이 위치하는 영역 git pull 과정에서 충돌시 대처 방법 (여러 사람이 함께 작업하는 만큼 충돌이 자주 발생한다) git reset --hard (충돌이 발생한 이전으로 커밋 되돌린다) git pull (..

기타 2023.12.20

포인터 심화

시작전 포인터란 포인터는 메모리 주소를 저장하는 변수로, 변수의 주소를 포인터에 할당하여 메모리에 접근할 수 있다. (다른 변수와 달리 다른 변수의 주소값을 변수로 가진다) 이중 포인터 포인터를 가리키는 포인터로 포인터 변수의 주소값을 가진다. int i = 10; int* p = &i; int** p2 = &p; -> 결론적으로 **p2 = *p = i 가 된다 **p2 = 10 2차원 자료를 처리할 때 사용한다 데이터를 전부 넘겨주기 보다 그 데이터를 가진 주소값을 념겨주면 속도와, 리소스 사용면에서 유리하다 포인터를 함수의 매개변수로 사용시 다른 함수에 있는 포인터 변수에 저장된 메모리 주소를 제어할 수 있고 이를 통해 함수와 함수 사이에서 데이터를 원할하게 관리할 수 있다 함수 포인터 함수를 가리..

C 2023.12.14

Message Queue 통신(IPC)

Message Queue 통신이란 프로세스간 데이터를 주고받는 통신 방식인 IPC 매커니즘중 하나로 1~2KB 이하의 짧은 메세지를 주고 받는데 효율적이다 큐 자료구조로 구성되어 있다. 비동기적 통신 방식 프로세스A에서 메시지큐에 데이터를 복사하고 이를 프로세스B가 읽어오는 과정으로 통신하며 접근을 위해서는 동일한 key값이 필요하다. 이벤트가 발생한 것을 다른 프로세스에게 알릴때도 사용 msgget() 함수로 메시지큐를 생성 msgsnd(), msgrcv() 함수로 메시지를 전송, 수신한다. msgctl() 함수로 메시지를 제어할 수 있다

통신 2023.12.08

해킹 커리큘럼 정하기

1. 해킹에도 분야가 있어? 나한테는 어떤 해킹이 맞을까? 시청하면 해킹 방향을 잡는데 도움이 될 거 같아 가져왔습니다 한번씩 꼭 보세요. https://www.youtube.com/watch?v=Y5MbMsJEjz8 2. 문제를 풀면서 실력을 기르자 1) bandit 워게임 리눅스 기초 지식들을 활용하여 해킹을 공부하기 원한다면 bandit 추천 OverTheWire: Bandit We're hackers, and we are good-looking. We are the 1%. Bandit The Bandit wargame is aimed at absolute beginners. It will teach the basics needed to be able to play other wargames. If..

Python (파이썬) 2023.11.22

파이썬 활용 - RPG 게임 만들기

한번 따라 해보세요 노노 - 주인 폴렌 - 노노의 몬스터 나나 - 야생의 몬스터 nam = "nana" nanahp = 100 polenhp = 100 pk = 20 nanapk = 10 name = "nono" poket = "polen" print(nam, "가 나타났다") b = input("도망=1, 싸운다=2") if b == "1": print("무사히 도망쳤다") else: while nanahp != 0 and polenhp != 0: e = input("공격=1, 막기=2") if e == "1": print(name, "공격!") nanahp -= pk # 체력 업데이트 print("nana의 체력:", nanahp) input() print(nam, "가 공격했다") polenhp -..

Python (파이썬) 2023.11.20

파이썬 활용 - 간단한 대화

print("hi") input() name=input("이름이뭐야?:") print("너의 이름은", name, "이구나") input() m = "" # 변수 m을 초기화 while m not in ["1", "2", "3", "4"]: print("어디로 갈래?") m = input("1, 2, 3, 4 중에서 선택하세요: ") if m == "1": print("늪으로 잘가!") elif m == "2": print("심해로 잘가!") elif m == "3": print("산으로 잘가!") elif m == "4": print("집으로 잘가!") print("프로그램을 종료합니다.")

Python (파이썬) 2023.11.20

해킹 리눅스 기초 - vi 에디터

시작 전 문제 1.파일 하나 생성후 권한을 확인해보세요 해당 상태의 권한 정보를 숫자로 표현해보세요. 2. 그리고 해당 파일의 그룹 사용자들에게 수정 권환을 주려면 어떻게 해야할까요. CLI 환경인 리눅스에도 vi 에디터라는 윈도우와 똑같이 텍스트 편집기가 있다 그리고 vi에는 '입력모드', '명령모드' 이렇게 2가지 모드가 있다. 처음 vi 에디터를 키면 '명령 대기 상태'로 '입력모드' or '명령모드'로 넘어가야한다 그리고 ESC 버튼을 누르면 다시 '명령 대기 상태'로 넘어간다 입력모드 글씨를 입력하기 위한 모드 -> i,a,o,I,A,O 입력시 입력 모드로 전환된다 명령 의미 명령 의미 i 자기 자리에서 편집 I 문장의 가장 앞 a 한칸 오른쪽 A 문장의 가장 끝 o 아래줄에서 편집 O 위줄에서..

Linux (리눅스) 2023.11.15