일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- loop
- scss
- dotenv
- BOJ
- leetcode
- security
- vue.js
- JavaScript
- Clone
- git
- TypeScript
- webpack
- Python
- nginx
- docker
- C++
- bash
- generic
- 앙상블
- VUE
- property
- var
- C#
- 보안
- condition
- machine learning
- npm
- type
- vuetify
- AI
- Today
- Total
목록Development/Scripts (6)
ice rabbit programming
윈도우 환경에서 PowerShell 스크립트를 사용할 때, 한글 깨짐이 발생하는 경우가 있다. 인코딩 문제로 발생되는 이슈인데, PowerShell CLI에서는 보통은 다음과 같이 처리하면 된다. $env:LC_ALL='C.UTF-8' 이렇게 입력하면 보통은 해결이 된다. 하지만 ps1로 스크립트를 작성해서 사용할 경우에는, PowerShell 환경에 값을 넣어줄 수가 없다. 스크립트는 어디에서나 이용될 수 있기 때문이다. 이럴 때에는 파일 저장 시에 'UTF-8 With BOM' 형식으로 저장해주면 된다. 리눅스 환경에서는 주로 BOM을 사용하지 않기 때문에 VS Code 등 편집기에서 주로 기본으로 UTF-8로 저장된다. 윈도우 환경에서는 BOM을 사용하는 것이 한글 인코딩에 잘 동작한다. VS Co..
최근 Jenkins에서 bash 파일을 실행하고, 그 결과 값을 이용할 필요가 있었다. 값 반환하기(기본) 값 반환(return value)은 특이하게도 echo, printf 등 stdout 출력으로 할 수 있었다(참고 : echo와 printf는 거의 동일하나, echo는 끝에 개행문자(\n)가 자동으로 붙고, printf가 좀 더 다양한 표현을 쓸 수 있다). RESULT=$(curl -X GET https://my_url) # curl 결과를 RESULT에 담음 echo "${RESULT}" # RESULT stdout에 담아 반환 모든 echo가 반환되는 이슈 문제는 보통 스크립트 파일을 작성할 때에는, 진행 과정 및 정보를 알고자 로그를 출력으로 남기는 일이 잦다는 것이다(return valu..
Apache Groovy는 Java에서 파생되어 파이썬, 루비 등의 특징을 더한 동적 OOP 언어이다. 그렇기 때문에 JVM 위에서 동작하며, 자바의 웬만한 함수들을 가져다가 쓸 수도 있다. 스크립트 자체를 바로 사용할 수도 있는 등의 장점이 있고, 자바에 익숙한 프로그래머들에게 많은 학습이 필요하지 않다는 점도 있다. 자세한 내용은 추후에 기회가 있다면.. 본인은 클라이언트 프로그램을 빌드할 때 groovy를 사용하고 있어서 종종 다루고 있는데, 여러 가지를 사용하고 있지만 이번 포스팅에서는 간단한 것으로 시작하려고 한다. OS 환경변수 사용하기 OS의 환경 변수를 가져오는 것은 이미 제공하는 메소드가 있고, 정말 간단하고 사용할 수 있다. def env = System.getenv() // 모든 환경..
아마 CI/CD나 여타 자동화 등을 위해서 bash 스크립트나 파워쉘 스크립트를 많이 이용할 것이다. 본인도 실행하는 서버가 윈도우냐 리눅스냐에 따라서 파워쉘과 bash를 번갈아서 사용하는데, 이번 포스팅에서는 bash quote(따옴표) 내에서 변수를 사용하는 것에 대해 포스팅하고자 한다. bash shell에서 quote는 꽤나 중요한 개념인데, 우선 따옴표는 숫자/문자의 구분을 위한 용도가 아니다. 12345, '12345', "12345"는 모두 같은 스트링 문자열이다. 공백으로 나누어진 문자를 합치거나, 공백을 유지하거나, 특수 문자 등을 스트링으로 사용하고 싶을 때와 같은 경우에 사용하는데, '문자'로서 좀더 명확히 묶는다고 생각하면 좋을 것 같다. 참고로 따옴표로 묶었을 경우에 shell에서..
#!/bin/bash value=1 if[ $value -ne 0 ]; then echo "good" else echo "bad" fi bash 쉘 스크립트에서 if문은 위와 같이 사용한다. ==은 -eq, !=은 -ne이고 if와 elif(else if, 파이썬과 같다)에는 then을 사용한다. 그런데 간혹 [: missing `] 와 같은 에러가 발생한다. 어떤 문제일까 하고 찾아봤더니 if[$value -ne 0]; 과 같이 쓰면 발생하는 현상이었다. 즉 조건 구문과 대괄호[] 사이에는 공백이 있어야 한다는 것. 또 겪었던 오류는 Error : unary operator expected 오류였다. 이는 크게 두 가지 문제였다. 하나는 $1 -eq "hi"로 적었을 때, $1이 비어있다면 -eq "h..