일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 스프링부트
- blog code 관리
- 개발 강의
- intellij 플러그인
- 알고리즘사이트
- 프로그래밍
- JMeter
- 프로그래밍 발표
- 가발자 인사이드아웃
- 알고리즘분류
- 좋은 멘토란
- 커스텀단축키
- 문서 따라하기
- aws
- Java
- spring boot example
- 코딩
- 알고리즘초보
- spring boot
- 대규모 시스템 설계
- 개발자 자존감
- mac 화면분할
- 주식기본기
- 알고리즘 추천
- github 부분 가져오기
- Spring 문서 따라하기
- 알고리즘
- 코드트리
- 초년생
- 개발 flow
- Today
- Total
영감을 (inspire) 주고픈 개발 블로그
못생긴 windows Powershell 예쁘고 쓸만하게 만들기 본문
맥을 5년 동안 쓰다가 최근에 회사에서 윈도우로 개발을 하게 되었습니다.
맥을 쓰는 이유는 터미널과 brew 같은 패키지 매니저 등의 간편함과 예쁜 디자인 때문이었는데요
wsl를 쓰는 경우도 있었지만 윈도우에서 만든 (/mnt 이하 path) 파일을 읽고 쓰는데 속도 이슈가 있어서 잘 안 쓰게 되었는데요;
이번에 윈도우로 넘어가면서 알아보니 powershell 자체가 많이 좋아졌습니다.
1. powershell 용 명령어를 맥 같은 (Unix 기반) 명령어로 쉽게 매핑해서 사용하는 걸 제공해 줍니다.
2. scoop 이란 패키지로 설치와 관리를 쉽게 할 수 있게 되었습니다.
3. windows terminal 앱을 통해 터미널을 예쁘게 꾸밀 수 있게 되었습니다.
완성 모습
1. 터미널 설치
Microsoft Store > 검색 (터미널) > Windows Terminal 혹은 Windows Terminal Preview 설치
Windows Terminal Preview는 터미널의 다음 업데이트 버전을 미리 써볼 수 있는 것으로 둘 중 하나만 깔아도 됩니다.
2. 파워셀 7 설치
기본 powershell 은 5 버전입니다. 5에선 cd - 같은 명령어가 먹지 않으니 powershell7으로 설치해 주세요
powershell에서 아래의 명령어로 설치를 하거나
# powershell install
winget search Microsoft.PowerShell
winget install --id Microsoft.Powershell --source winget
Microsoft Store에서 검색 후 설치 하시면 됩니다.
설치 위치
설치 위치입니다. 위의 powershell 이 기존 5 버전이고 아래가 7 버전의 위치입니다.
이 위치를 확인하시고 나중에 intellij 내에서 기본 터미널 설정을 바꿔주시거나 하기 쉽습니다.
which라는 커멘드라인 툴을 설치하시면 설치 경로를 확인할 수 있습니다. 이건 아래 scoop 설치에서 설명드리겠습니다.
3. 터미널 기본 설정
터미널을 켜고 창 옆에 + > 설정 혹은 ctrl +, 버튼으로 설정창으로 들어갑니다.
그리고 좌측의 시작 > 기본프로필을 PoswerShell로 변경해 줍니다. 이제 터미널 시작 시 powershell을 기본으로 쓸 수 있습니다.
배경, 글씨 바꾸기
좌측 프로필 > Powershell > 추가 설정, 모양 > 배경 이미지 경로
여기서 이미지를 바꾸면 됩니다. 배경 이미지가 너무 밝은 색이라 글씨가 잘 안 보이시다면 배경이미지 불투명도를 낮춰보시면 글씨가 잘 나타나게 됩니다. 아니면 글씨 색을 바꿔주실 수도 있습니다.
그리고 적당히 투명성 > 배경 불투명도를 살짝 낮춰주시면 완성입니다.
개인적으로 박보영의 팬이라 적당한 이미지를 가져왔습니다. (출처 https://by900212.tistory.com/115)
무료 배경이미지는 아래 사이트를 추천합니다.
3. scoop 설치 및 추천 패키지와 설정
powershell에서 진행합니다.
scoop 설치
# scoop
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex
추천 설치 도구들입니다.
scoop bucket add extras
scoop bucket add java
scoop bucket add nerd-fonts
scoop install aria2
scoop install which fzf jq zoxide fd nerd-fonts bat FiraMono-NF
scoop install sudo curl grep gzip tar touch vim neovim 7zip powertoys bottom ntop
# 안써봤는데 좋아보여서 넣어봄
scoop install coretemp cpu-z crystaldiskinfo aria2 crystaldiskmark filezilla honeyview hwmonitor hxd postman putty unlocker vscode python everything openjdk17 python nvm mysql yarn docker
scoop install kubectx k9s
소개를 몇 개 해보면
zoxide는 path를 저장해 주는 도구입니다.
저는 폴더를 문서 폴더에 workspace라는 폴더를 만들어서 관리하기 때문에 z workspace로 설정해 두었습니다.
scoop install zoxide
Invoke-Expression (& { (zoxide init powershell | Out-String) })
sudo는 터미널에서 껐다 키는 것 없이 관리자권한으로 변경해 줍니다
which는 환경변수에 저장된 위치를 확인할 수 있습니다.
ntop 은 top을 예쁘게 볼 수 있습니다.
4. oh-my-posh 설정
폰트 설정과 oh-my-posh 설정 값입니다. 테마는 마음에 드는 것으로 바꾸셔도 됩니다.
Install-Module Terminal-Icons -Repository PSGallery -Force
Install-Module posh-git -Scope CurrentUser -Force
Install-Module oh-my-posh -Scope CurrentUser -Force
oh-my-posh init pwsh --config 'https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/atomic.omp.json' | Invoke-Expression
scoop install https://github.com/JanDeDobbeleer/oh-my-posh/releases/latest/download/oh-my-posh.json
5. bash 설정입니다.
notepad $profile을 하면 터미널을 시작하면 자동으로 실행되는 스크립트를 편집할 수 있습니다. (scoop으로 vi 설치하시면 vi 로도 가능합니다.)
# notepad $profile
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\easy-term.omp.json" | Invoke-Expression
Import-Module -Name Terminal-Icons
Invoke-Expression (& { (zoxide init powershell | Out-String) })
Set-Alias vim nvim
Set-Alias ll ls
Set-Alias grep findstr
Set-Alias k kubectl
Set-PSReadLineOption -EditMode Emacs
Set-PSReadLineOption -BellStyle None
Set-PSReadLineKeyHandler -Chord 'Ctrl+d' -Function DeleteChar
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -PredictionViewStyle ListView
function historyfunc{
type $env:APPDATA\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt
}
Set-Alias history historyfunc
10~14 라인 세팅이 되어있으면 자동완성을 지원해 줍니다.
아래 function 부분은 powerhsell의 기본 history (혹은 h)는 현제 터미널에서 쓴 것만 보이기 때문에 함수로 오버로딩해서 history가 전체를 볼 수 있도록 했습니다.
참고
- https://github.com/janikvonrotz/awesome-powershell
- d001 windows 데스크탑에 제일먼저 설치하는 것은 Scoop 입니다
- How to set up PowerShell prompt with Oh My Posh on Windows 11
- PowerShell 꾸미기
- PowerShell module | Oh My Posh
- https://velog.io/@ehrbs2021/PS7-custom
- https://www.adamcouch.co.uk/powershell-history-and-aliases/
- https://learn.microsoft.com/ko-kr/windows/terminal/tutorials/custom-prompt-setup
'개발 > 세팅' 카테고리의 다른 글
AI 기반 개발 / 생활 도구 추천 사이트 정리 (0) | 2024.09.22 |
---|---|
코드트리 (Code Tree): 알고리즘 테스트 준비를 위한 사이트 추천 (2) | 2024.02.25 |
라이브 코딩 혹은 강의를 하게된 개발자를 위한 intellij 개발 발표 세팅 팁 (2) | 2024.01.11 |
git sparsecheckout 으로 github에서 spring-projects example 들 중 원하는 프로젝트만 가져오기 (2) | 2023.12.20 |
간편하게 백엔드 서버 성능 테스트 시스템 세팅하기: docker-compose를 성능 테스트를 쉽게 모니터링하는 방법 (2) | 2023.12.14 |