본문 바로가기
  • 개발 삽질 블로그

분류 전체보기89

[Linux] Shell Scipt(쉘 스크립트) 작성 오늘은 쉘 스크립트 기초 문법에 대한 블로그를 작성해보겠습니다...옛날에 찍먹으로 배워서 까먹었는데 이것이 리눅스다 책과 검색을 통해 복습했습니다..  반복적인 작업을 수동으로 수행하는 것은 시간이 많이 걸리고 실수를 유발할 수 있습니다. 이러한 문제를 해결하는 강력한 도구 중 하나가 바로 쉘 스크립트입니다. 쉘 스크립트는 시스템의 다양한 작업을 자동화하고, 복잡한 명령어를 간편하게 실행할 수 있게 도와주는 도구입니다. 리눅스는 대부분 C언어로 작성했기 때문에 C언어와 유사한 방법으로 프로그래밍 가능일반 프로그래밍 언어와 비슷하게 변수, 반복문, 제어문 등 사용 가능별도의 컴파일 과정 필요 없이 바로 셸에서 실행 가능주로 vi eitor나 gedit으로 작성 실행 방법sh 명령어sh {scriptFile.. 2024. 9. 7.
소켓의 동작 방식: 블로킹 vs 논블로킹 네트워크 프로그래밍을 하다 보면 "블로킹"과 "논블로킹"이라는 개념을 접하게 됩니다. 특히 소켓 프로그래밍에서 이 두 개념을 알고 가는게 중요한 것 같아서 이 글에서는 블로킹과 논블로킹을 정리해보려고 합니다.   블로킹과 논블로킹 소켓은 각각의 상황에 따라 장단점이 존재합니다. 네트워크 프로그래밍에서 이 두 개념을 잘 이해하고 활용하면, 더 안정적이고 효율적인 애플리케이션을 설계할 수 있습니다.   블로킹(Blocking)요청한 작업이 성공하거나 에러가 발생하기 전까지는 응답을 돌려주지 않는 것이전 게시물에서 C 코드에서 socket() 함수로 생성된 소켓은 기본적으로 블로킹 모드임. 즉, read()나 write() 호출 시, 데이터가 준비될 때까지 함수 호출이 블로킹입니다.int n = read(so.. 2024. 9. 2.
TCP/IP Socket 통신 프로그래밍 네트워크 통신의 기초를 이해하는 것은 모든 개발자에게 중요한 단계입니다. TCP 소켓 통신은 데이터 전송의 신뢰성과 순서를 보장하는 핵심 기술입니다. 이번 블로그에서는 TCP와 소켓의 기본 개념에 대해 작성하였습니다.  1. TCP(Transmission Control Protocol) TCP(Transmission Control Protocol)는 네트워크 통신에서 데이터 전송의 신뢰성을 보장하는 프로토콜로, 주로 인터넷과 같은 네트워크에서 데이터 패킷을 송수신하는 데 사용됩니다. TCP/IP 소켓 통신은 서버와 클라이언트 모델을 기반으로 합니다. TCP의 특징은 다음과 같습니다  주요 특징연결 지향성 (Connection-Oriented)데이터 전송 전에 송신 측과 수신 측 간의 연결을 설정연결이 설.. 2024. 9. 2.
[Linux] 파일 검색 및 조작 명령어 오늘은 코드를 너무 많이 본 것 같아 퇴근 후 또 코드보면 눈이 무리일 것 같아서 짧게 리눅스 공부한거 정리파일 검색 및 조작 명령어 1. find특정 조건에 맞는 파일이나 디렉토리를 검색할 때 사용 find [경로] [조건] [액션]검색 범위를 디렉토리나 파일명, 수정 시간, 크기 등으로 제한할 수 있어 매우 유연옵션-name: 파일 또는 디렉토리 이름으로 검색-type: 파일 유형으로 검색 (f는 파일, d는 디렉토리)-size: 파일 크기로 검색-mtime: 파일의 마지막 수정 시간으로 검색find /home/gaeun -name "*.txt" # gauen 홈 디렉토리에서 *.txt 검색find /var/log -type f -name "*.log" # /var/log에서 파일 중 find / .. 2024. 8. 27.
[Linux] 사용자 및 그룹 관리 분명 운영체제 시프 과목에서 1등도 했었고 많이 까먹었지만 꽤 기초는 잘 안다고 생각했는데,음...실무에서 제 리눅스 지식은 0.1%에 불과했다는 느낌을 받았습니다...어쩌겠나요...스스로 부족함을 느끼면 공부를 해야겠죠  시간이 날 때 '이것이 우분투 리눅스'다 라는 책도 간간히 읽고 있습니다.공부하면서 원래 알던 내용도 있고 몰랐던 내용도 있지만....기록하면 안하는 것 보다는 좋으니깐(?)블로그 중독자인 저는  매일 공부한 부분을 기록해보려고 합니다 사용자 관리adduser(useradd): 새로운 사용자 추가adduser를 하면 아래 파일들에 새로운 행이 추가됨 (*사용자 관련 파일들)/etc/passwd: 사용자 계정의 기본 정보를 저장/etc/shadow: 사용자 암호와 암호 관련 보안 설정을.. 2024. 8. 22.
[Database] DB Lock의 종류와 DeadLock DB Lock여러 트랜잭션이 동시에 동일한 데이터를 액세스할 때 데이터 무결성을 유지하고 충돌을 방지하는 매커니즘종류는 아래와 같습니다LS-Shared Lock : 공유락LX-Exclusive Lock: 배타락 1. Lock의 종류공유 락(LS-Shared Lock)여러 트랜잭션이 동시에 동일한 리소스를 읽을 수 있도록 허용함공유 락이 걸린 데이터는 읽기 전용임, 변경 불가데이터 일관성을 유지하기 위해 주로 사용, SELECT 쿼리에서 사용(락 걸리니깐 무작정 사용하지는 말기...)--Transaction 1: 공유 락 설정SELECT * FROM member WHERE last_name = 'Kim' LOCK IN SHARE MODE;--Transaction 2: 공유 락 설정SELECT * FROM .. 2024. 8. 19.