728x90

기타 26

[Python] 일요일 시작 달력 기준으로 week number 가져오기

안녕하세요. python으로 week number 가져오는 코드 공유드립니다. 구글에 검색하면 week number 가져오는 코드는 되게 많은데요. 대부분 1년을 기준으로 몇 번째 주인지 계산하거나 월요일을 달력 시작일로 잡고 계산하는 코드가 많아요. 하지만 제가 공유드리는 코드는 달력 기준 & 일요일 시작으로 해서 몇 번째 주인지 계산하는 코드입니다. 참고해 주세요! 이번 글은 여기서 마무리.

기타 2023.09.26

아이폰으로 Github Two-factor 인증 활성화

안녕하세요. 이번엔 아이폰으로 Github의 Two-factor 인증 활성화하는 방법 소개해 볼게요. 1) 'Github > Settings > Password and authentication > Two-factor authentication'에서 'Enable two-factor authentication' 버튼 눌러주세요. 2) 아래와 같은 화면이 나올 텐데, 저흰 QR 코드를 스캔하는 방법으로 해볼게요. 3) '아이폰 설정 > 암호'로 가서 상단에 '+' 버튼을 누르고 웹 사이트에 github.com를 입력하고 id/pw를 입력합니다. 4) '확인 코드 설정... > QR 코드 스캔' 버튼을 눌러서, Github 화면에서 보여주고 있는 QR 코드를 스캔합니다. 5) QR 코드를 스캔하면 생성된 확..

기타 2023.08.17

웹뷰에서 원하는 타입의 파일만 첨부하는 방법

안녕하세요. 오늘도 즐거운(?) 웹뷰 얘기입니다.. HTML에서 input 태그를 사용해서 파일 첨부를 하게 되면, iOS 웹뷰에서 자동으로 아래와 같은 팝업을 보여줍니다. 근데, 난 사진만 첨부하고 싶어!! 라고 하는 경우엔 어떻게 해야 할까요? 웹 내에서 첨부된 파일의 확장자를 보고 필터링해 줄 수도 있지만, accept라는 속성을 사용하면 사용자가 사진만 첨부하게끔 제한시킬 수 있습니다. 동시에 웹뷰 팝업에서는 'Take Photo or Video' 라는 문구가 'Take Photo' 라고 바뀌게 됩니다. 만약 이미지 말고 txt 파일만 받고 싶어!! 하는 경우엔 accept에 .txt 확장자만 넣어주면 되겠죠?? 이 경우엔 웹뷰에서 팝업이 뜨지 않고 바로 '파일' 앱이 실행되고 '파일' 앱 내에서..

기타 2023.07.23

Apple 기기별 os 최대 지원 버전 볼 수 있는 사이트

안녕하세요. 업무에 도움이 될 것 같은 사이트를 하나 발견했습니다. https://iosref.com/ios iOS Ref Quick reference tables, tools, and links for iOS developers. iOS Ref has iOS compatibility tables, a beautiful Swift cheatsheet, a hex code to UIColor converter, device screen resolution tables, and more. iosref.com 아이폰 기기별로 베타 버전 포함해서 iOS 최대 지원 버전을 알 수 있는 사이트예요. 아이폰 뿐만 아니라 iPad, 애플워치, Apple TV의 os 최대 지원 버전 같은 것도 알 수 있어서 요즘 애용하..

기타 2023.07.20

Bundle 통째로 복사하기

안녕하세요. cp 명령어로 bundle을 통째로 복사해서 새로운 폴더 안에 넣으려고 했는데.. bundle 안에 있는 파일들만 복사가 되더라구요.. cp -rf Settings.bundle ./new ㅠㅠ.. 내가 원한건 이게 아닌데..;; # 해결방법 첫번째 방법은 cp 명령어를 사용하기 전에 타겟 폴더를 미리 만들어두면 두는 것입니다. (이미 존재하고 있는 폴더 안에 복사해서 넣으면 bundle 통째로 들어갑니다.) 오홓..ㅎㅎ 두번째 방법은 rsync 명령어를 사용하는 것입니다. rsync 명령어를 사용하면 타겟 폴더가 없어도 알아서 폴더를 만든 후에 bundle 통째로 넣어줍니다. rsync -a Settings.bundle ./new # 요약 - cp 명령어를 사용해서 A 폴더를 통째로 폴더 B..

기타 2023.07.14

맥북에서 LoC 계산

안녕하세요. 혹시 LoC가 뭔지 아시나요?? 전 오늘 처음 알게 된 용어인데 Lines of Code, 즉 코드가 몇 줄인 지를 의미하는 용어라고 합니다. cloc 라는 모듈을 사용하면 맥북에서 파일 또는 폴더 단위로 여러 수치들(언어별로 파일이 몇 개인지, 빈 줄이 몇 개인지 등)을 쉽게 알 수 있습니다. brew로 설치해 주고요. brew install cloc 원하는 파일 또는 폴더 위치로 이동해서 cloc 명령어를 호출해 주면 됩니다. cloc . 언어별로 파일을 분류하고 분류한 파일이 몇 개인지, 빈 줄이 몇 줄인 지, 주석이 몇 줄인지, 코드가 몇 줄인 지를 표로 보여줘서 되게 좋더라구요. cloc 명령어에 옵션을 넣어서 추가 필드를 넣거나 필요 없는 필드를 뺄 수도 있습니다. 이번 글은 여..

기타 2023.07.11

launchctl로 주기적으로 프로그램 실행시키기

안녕하세요. 최근에 원하는 시간마다 스크립트를 실행시키고 싶은 적이 있었습니다. 그걸 위해 서버를 띄우기는 귀찮았어서... 이런저런 방법을 찾던 중에 launchctl 이란 것을 알게 되었습니다ㅎㅎ 한번 알아볼까요? # 개요 macOS에서 사용 가능합니다. (윈도우에서도 쓸 수 있는지는 잘 모르겠어요...) 대략적인 사용법은 아래와 같습니다. 1) plist 파일을 생성해서, 그 plist 파일 안에 주기적으로 프로그램을 실행시키는데 필요한 정보들을 입력해 줍니다. (여기서 말하는 정보란, 몇 분마다 실행시킬지, 어떤 프로그램을 실행시킬지 같은 정보를 의미합니다.) 2) launchctl 명령어로 plist 파일을 LaunchAgents라는 곳에 등록(load)시킵니다. 3) 등록한 plist 정보를 바..

기타 2023.03.25

Python 크롤링으로 CGV 가장 마지막 예매 가능한 날짜 가져오기

안녕하세요. Python을 이용한 크롤링으로 CGV 특정 영화관에서 가장 마지막 예매 날짜를 가져오는 스크립트를 공유드리려고 합니다. 몇 분마다 실행시켜서 예매날짜가 새로 오픈되면 알림을 주는 알리미 처럼 이것저것 활용하세요^^ 참고로 빌드 환경은 macOS 입니다. 참고해주세요! 아래 명령어를 터미널에 입력해서 스크립트를 실행시킵니다. $ python3 cgv_crawler.py 결과는 아래처럼 나옵니다. (2023년 3월 11일 CGV 용산아이파크몰 기준) (스크립트 실행하면 크롬이 자동으로 실행될 건데 스크립트 종료될 때까지 가만히 냅둬주세요ㅎㅎ) # 의존성 Selenium 4.8.2 # 다른 영화관을 하고 싶으면? 스크립트에서는 CGV 용산아이파크몰(일명 용아맥)로 설정해 뒀는데, 만약 다른 지역..

기타 2023.03.11

jenkins branch 설정방법

안녕하세요. 많은 분들이 jenkins로 빌드 많이 하시죠? 그리고 작업은 feature branch로 나눠서 작업하시구요. jenkins에서 특정 branch로 checkout 해서 빌드하려면 어떤 branch 인지 알아야겠죠? 이번에는 그 branch를 설정하는 방법에 대해 알아볼게요. # github branch 설정 방법 branch 결정하는 방법은 크게 2가지 방법이 있습니다. branch 명 직접 입력 branch 목록 중 선택 ## 1. branch 명 직접 입력 첫 번째 방법은 빌드할 때 branch 명을 직접 입력해 주는 방법입니다. 아래처럼 jenkins에 String 파라미터를 추가해 주고 매개변수 명은 GIT_BRANCH로 넣어주세요. (환경변수로 사용할 거라 매개변수 명은 꼭 GI..

기타 2023.02.07

스크립트로 Swift 변수값 변경하기

안녕하세요. 이번에는 shell command로 swift 파일의 특정 변수(상수)값을 바꿔보는 시간을 가져볼게요. # 이게 왜 필요해...? swift 파일의 값을 바꾸고 싶으면 직접 바꾸면 되지 왜 shell command까지 쓰면서 바꿔야 해...? 이런 의문이 들 수 있는데요. 맞는 말씀입니다. 근데 만약 전체 로직하고는 크게 연관 없지만 빌드(또는 배포)할 때 값이 바뀌어야 하는 경우라면 shell command로 자동화시키는 게 편할 수 있습니다. 예를 들어, 어떤 framework가 있고 framework 안에는 framework의 버전값을 출력해 주는 API가 있다고 해볼게요. 개발자가 직접 버전값을 수정하면 머지할 때 협업하는 사람하고 충돌이 발생할 가능성이 높으며, 버전값을 까먹고 수정..

기타 2023.02.03