Programming

Programming/Python

Dictionary 데이터에서 키 값만 추출하기

최근 지인 부탁으로 파이썬으로 자막을 변환하는 gui 프로그램을 만들고 있는데, 그러다가 알게 된 사실을 메모해본다. 파이썬을 제대로 깊게 공부해본적은 없고 목적에 따라 필요한 부분만 배워서 쓰고 있다. 참고로 파이썬3를 쓰고 있다. dictionary 객체에 keys() 함수를 호출한 것을 list()로 감싸주면 키 값만 담긴 리스트가 생긴다. 이후 적절한 인덱스 값을 통해 키값을 가져오면 된다.

Programming/Server

[AWS, SSH] Jump Host, Bastion Server 경유해서 다른 서버 접속

회사에서는 aws를 통해 서비스를 배포 운영하고 있는데, 실제 서비스들은 외부에서 접근이 불가능한 private subnet에 위치해있다. 그리고 외부에서 이 서비스를 접근하기 위해서 반드시 거쳐가야 하는 일종의 게이트웨이 역할을 하는 서버가 있는데 바로 베스천 서버이다. 베스천 서버는 public subnet에 위치하며, 여러 보안적인 이슈를 담당한다. 특정 IP만 특정 subnet에 접근가능하도록 강제를 하거나, 서버 접근 이력 정보를 남기는 등 보안적으로 많은 이점이 있다. 베스천 서버를 통해 실제 서버로 접속을 하려면 ssh 터널링을 통해 로컬 호스트에 포트를 띄우고 해당 포트로 접근을 해야했다. ssh -fnNT -L ::22 @ -i 위와 같이 타겟 서버에 맞게 입력을 해보면 아래와 같이 성공..

Programming/ETC

Intellij 단축키 꿀팁

Generate (Ctrl + Insert) → 소스 에디터에서는 getter, setter, override, 등등 여러 가지를 생성 가능하도록 도와줌 → 프로젝트 창에서는 class, enum 등 여러 가지 파일을 생성 가능하도록 도와줌 Delete Line ( Ctrl + Y ) → 현재 커서가 위치한 줄을 삭제함, shitf + 방향키 (위, 아래)로 영역을 잡고 누르면 영역 단위로 삭제됨 Duplicate Line ( Ctrl + D ) → 현재 커서가 위치한 줄을 복제함, shift+ 방향키 (위, 아래)로 영역을 잡고 누르면 영역 단위로 복제됨 Action ( Alt + Enter ) → 상황에 맞추어 액션을 추천해줌 (삭제, 코드 최적화, 오류 찾기 등..) Error Code Jump (..

Programming/Spring

[SpringBoot] Spring Boot 2.3.8 도커 컨테이너 만들기 (BuildPack)

Spring Boot 2.3 버전부터 내장 애플리케이션을 Docker Image로 만드는 라이브러리가 포함되어 배포되었다. 내 기억에 초기에는 Jib를 사용했었던 것 같은데, 2.3.8 버전을 사용해보니 BuildPack을 사용하도록 변경되어있었다. BuildPack에 대한 내용은 아래 사이트를 참고하자. buildpacks.io/ Cloud Native Buildpacks Cloud Native Buildpacks transform your application source code into images that can run on any cloud. buildpacks.io 백문이불여일견 기존에 개발하고 있던 프로젝트(2.2.6)를 한번 2.3.8로 버전을 올리고, 내장된 BuildPack 라이브러리..

Programming/Server

[Vim] 여러 줄 복사 붙여넣기

난 까만 터미널 화면을 좋아한다. 심리적으로 안정감을 느끼는데 왠지 모르겠다 ㅋㅋ;; IDE도 모두 High Contrast Mode로 쓰고 있어서 아무래도 나는 검은 화면에 하얀 텍스트가 뜨는 걸 좋아하나 보다. 터미널 작업을 자주 하다 보면 에디터 프로그램을 사용하게 되는데 나는 주로 Vim을 사용한다. Vim으로 텍스트를 작성하다가 특정 줄을 포함해서 복사해야 할 일이 생겼다. 기존에 한 줄 복사 붙여 넣기는 대상 줄에 커서를 옮기고, y 누르고 붙여놓을 곳에 p 누르면 됐었는데 , 여러 줄은 어떻게 해야 할지 Vim 초보라서 고민이었다. 해결방법은! 비주얼 모드로 복사할 라인을 감싸고, 복사를 하면 된다. 가장 먼저 v를 눌러 비주얼 모드를 킨다. 그러면 Vim 하단에 Visua이란 문구가 뜨게 ..

Programming/Java

[Java] CMD 또는 Shell 환경에서 Java 컴파일 및 Jar 파일 만들기

보통 프로그래밍 언어를 통해 프로그램을 만들 때, IDE를 사용하여 소스를 컴파일하고 빌드하며 실행시킨다. 이러한 경험(?) 혹은 시간이 길어질수록 어쩌면, 어떤 사람은 IDE에서 자동으로 프로그램을 실행시키기까지의 과정 및 방법에 대하여 잊는 경우도 생기게 된다. 그런 사람(==나)을 위하여 Java 언어로 작성된 소스파일을 컴파일하고 실행 가능한 Jar 파일을 명령어를 통해 만드는 방법을 공유해본다. 내가 작성한 Java 소스 파일은 매우 간단하다. 심심풀이로 CPU Load Simulcast 프로그램을 만들어봤다. [CPULoadThread.java] package com.tistory.johnmark; public class CPULoadThread extends Thread { private f..

Programming/Server

[PowerShell] Response Content 전부 확인하기

회사 서비스 특성상 B2B 고객이 많고 대부분 고객들이 폐쇄망을 구축하고 있는 경우가 많다. 원래 출장을 잘 가지 않지만, 고객사 인사 시스템과 회사 서비스 간의 SSO 연동 요구건이 발생해서 출장을 가게 되었다 내가 인증 서버와 계정 서버 및 라이선스 서버를 개발하고 관리하고 있어서 출장이 불가피했었는데 너무 슬펐다... 개인적으로는 윈도우 서버 보단 리눅스 서버를 더 잘 알고 다룰 줄 알고 있는데, 출장 가서 환경을 보니 윈도유 서버 환경이었다. 폐쇄망에 위치한 특정 서버에 요청을 날려보고 응답 데이터를 확인해봐야 하는데, 리눅스의 경우 Curl 명령어를 사용할 텐데 윈도우 파워쉘에서는 뭘 써야 할지 몰라서 막막했었다. 구글링 해보니 파워셀에서는 Invoke-WebRequest 명령어를 사용한다고 한..

Programming/Server

[Shell Script] Ctrl + 방향키 (Left or Right) 가 안먹힐 때

나는 터미널에서 명령어를 작성하거나, 특정 작업을 할 때 커서 이동을 위해서 Ctrl + 방향키 (Left or Right)를 눌러서 이동하는 경우가 있다. Ctrl + 방향키(Left or Right)로 이동을 하면 커서가 블록단위로 이동되기 때문에 빠르게 커서를 이동할 수 있는 장점이 있었다. 최근에 터미널을 zsh + oh-my-zsh + starship 조합에서 zsh + powerlevel10k 로 변경을 변경했는데 Ctrl + 방향키(Left or Right) 가 먹히지 않고 다음과 같이 출력되는 문제가 있었다. 특수문자로만 찍히고, 커서 이동이 하나도 되지 않았고, 커서를 한 글자 단위로 이동시키려니 답답하고 암 걸릴 것 같았다. 그래서 방법을 찾았는데, 다음과 같은 구문을 본인의 .bash..

JohnMark
'Programming' 카테고리의 글 목록 (3 Page)