본문 바로가기
반응형

프로그래밍482

Bash 셸 스크립트(Shell Script)에서 리다이렉션 사용하기 리다이렉션(Redirection)리다이렉션은 셸에서 표준 입출력 스트림을 다른 방향으로 전환하는 기능을 말한다. Bash 셸에서는 기본적으로 세 가지 주요 스트림이 존재한다.표준 입력(stdin) : 파일 디스크립터 번호 0표준 출력(stdout) : 파일 디스크립터 번호 1표준 오류 출력(stderr) : 파일 디스크립터 번호 2리다이렉션을 사용하면 이러한 스트림을 파일이나 다른 스트림으로 변경할 수 있다.리다이렉션 연산자(Redirection Operator)리다이렉션은 명령어의 입력과 출력을 파일이나 다른 명령어로 연결하는 데 사용된다. 리다이렉션은 셸에서 제공하는 강력한 기능으로, 표준 입출력을 다루는 중요한 도구이다.출력 리다이렉션(Output Redirection)echo "Hello, wor.. 2025. 1. 20.
Bash와 셸 스크립트(Shell Script)의 관계 Bash란?Bash(Bourne Again Shell)는 유닉스 및 리눅스 운영체제에서 가장 널리 쓰이는 셸(Shell) 중에 하나이다.셸(Shell)은 사용자가 운영체제와 상호작용할 수 있도록 명령을 해석하고 실행하는 명령줄 인터페이스(CLI)를 말한다.Bash는 기존 Bourne Shell(sh)를 확장한 버전으로, 다양한 기능(배열, 명령 히스토리, 명령 라인 편집 등)을 추가로 제공한다.Bash는 명령 실행뿐만 아니라, 스크립트를 실행을 실행하기도 한다.셸 스크립트(Shell Script)란?셸 스크립트는 셸 명령어와 제어 구문(if, for while 등)을 조합하여 작성한 스크립트 파일이다. 미리 작성해 둔 스크립트 파일을 통해서 단순 반복 작업을 자동화하거나, 복잡한 시스템 관리 작업을 효율.. 2025. 1. 20.
SSH 키 생성을 위한 두 가지 방법 PuTTYgen vs OpenSSH PuTTYgen vs OpenSSH보통 SSH 키를 생성하는 방법에는 PuTTYgen을 사용하거나 OpenSSH를 사용하는 방법이 있다. 생성한 키는 본질적으로 동일한 알고리즘(예: RSA, Ed25519, ECDSA 등)을 기반으로 생성되므로 암호학적 속성은 동일하다. 그러나 키의 형식과 표현 방식에서 차이가 있다. 하지만 걱정하지 말자 두 결과물 간에 호환이 가능하기 때문에 어느 쪽으로 만들던지 상관은 없다.파일 형식PuTTYgen 키 형식PuTTYgen은 기본적으로 PPK(PuTTY Private Key) 형식을 사용한다.PPK는 PuTTY 및 관련 도구에서 사용하기 위해 설계된 독자적인 바이너리 형식이다.개인 키와 공개 키 정보를 함께 저장하며, OpenSSH에서 바로 사용할 수 없다.OpenSS.. 2025. 1. 17.
PuTTYgen으로 SSH 키 발급해서 우분투 로그인하기 PuTTYgen으로 SSH 키 발급하기Putty를 이용해서 리눅스에 접근하기 위해서는 SSH 키를 통한 보안 연결이 필요하다. 이를 위해서는 우선 PuTTYgen을 이용해서 SSH 키를 발급받도록 하자. PuTTY를 설치했다면 PuTTYgen도 같이 설치되어 있을 것이다. 해당 프로그램을 실행하도록 하자.Key comment 항목 입력하면 키에 대한 구분자로 사용할 수 있다. 입력하면 키 맨 뒤에 해당 문자열이 추가된다.이제 'Save private key' 버튼을 눌러서 해당 키를 저장해 주자. private key는 절대 외부에 공개되서는 안 되는 중요한 키다. 이에 반해서 public key는 외부에 공개되어도 문제없고 오히려 공개되어야 하는 키이다.RSA 암호화 방식에 대한 자세한 설명은 아래의 .. 2025. 1. 17.
C# StackExchange 사용해서 redis에 객체 저장하고 불러오기 Nuget에서 StackExchange 설치하기.Net 개발환경에서 제공하는 패키지 관리 시스템인 Nuget을 이용해서 간단하게 .Net 환경에서 레디스를 사용할 수 있다. 아래의 과정을 따라서 진행해 보자. 프로젝트 선택 -> 오른쪽 마우스 클릭 -> Nuget 패키지 관리 선택 -> 찾아보기에서 'StackExchange.Redis'로 검색해서 해당 패키지를 다운로드 및 설치해 주자.appsettings.json에 redis 세팅 저장하기이제 StackExchange 패키지를 사용하면 레디스를 쉽게 사용하는 게 가능하다. StackExchange를 초기화하는 부분에서 redis의 위치를 지정해줘야 한다. 이때 직접 문자열로 해당 위치를 지정할 수도 있지만 appsettings.json을 읽어서 해당 .. 2025. 1. 13.
더 나쁜 것이 더 좋습니다? Worse is better Worse is betterRichard P.Gabriel이 1989년 에세이에서 소프트웨어 수용의 역학을 설명하기 위해 고안한 용어이다. 이는 소프트웨어 품질이 기능성에 따라 반드시 증가하는 것은 아니라는 주장, 즉 실용성과 유용성 측면에서 기능이 적은 것("더 나쁜")이 더 나은 옵션("더 나은")인 지점이 있다는 주장이다. 제한적이지만 사용이 간편한 소프트웨어는 그 반대의 경우보다 사용자와 시장에 더 매력적일 수 있다는 이야기이다. 더 나은 옵션이 항상 최선의 선택이 아닐 수 있다는 이야기이다. 즉, 더 나쁜 옵션이 더 나은 경우가 존재한다.MIT/Standford style (Common Lisp, CLOS)Simplicity : the design must be simple, both in im.. 2025. 1. 13.