전체 글
[Linux] 실행파일 만들기 (.sh)
실행파일 (.sh 파일) 왜 쓰는지? .sh 파일을 실행하는 것의 의미는 윈도우의 exe 파일을 클릭하는 것과 같다. 사용자가 직접 코드를 돌리기 위한 길고 긴 명령어를 입력하지 않아도 클릭하나로 파일을 실행할 수 있듯이 리눅스에서도 사용자는 쉽게 실행파일의 이름만 입력해서 프로그램을 가동시킬 수 있는 것!! 실행파일 만들기 예를 들어 내가 만든 프로그램을 돌리기 위해 작성해야하는 명령어가 GPU설정부터 다양한 옵션까지 아래처럼 길다고 하면 매번 프로그램을 돌릴때마다 이 명령어를 치는 것은 번거롭다. 그래서 실행파일에 아래 명령어를 담아 사용하는 것이다! CUDA_VISIBLE_DEVICE=0 python test.py -n 2000 -b 100 -o "test1" vi exe.sh 로 exe라는 이름의..
[Pytorch] torch.manual_seed()
random seed 란 ? numpy 에서도 사용했던 random seed 5개의 난수를 생성 한다고 하면 우리는 np.random.rand(5)로 난수를 생성한다. 연달아서 np.random.rand(5)를 실행한다면 아래처럼, 생성할때마다 매번 서로 다른 5개의 숫자를 생성할 것이다. random seed를 고정한다는 말은 동일한 셋트의 난수를 생성할 수 있게 하는 것이다. seed() 괄호 안에 들어가는 숫자는 무슨 의미일까? seed value 숫자 자체는 중요하지 않고 서로 다른 시드를 사용하면 서로 다른 난수를 생성한다는 점만 알면 된다. pytorch random seed deep learning에서 random num을 사용하는 경우가 많다. (초기화를 할 때 주로 씀) random nu..
[Linux][ python] os.path module
os모듈은 OS (운영체제)와 관련된 모듈이고, 이 안에서도 os.path모듈은 폴더(디렉토리)를 조작하는 모듈이다. os.path.abspath(path) 상대 경로를 절대경로로 바꿔서 반환 os.path.basename(path) 위의 abspath와 반대되는 기능 수행, 절대 경로를 입력하면 basename 반환 os.path.dirname(path) 입력받은 파일/디렉터리의 경로를 반환 os.path.exists(path) 입력받은 경로가 존재하면 true, 존재하지 않으면 False 반환 os.path.getsize(path) 입력받은 경로에 대한 바이트 단위의 파일크기 반환 (파일 없으면 os.error 예외 발생) os.path.isfile(path), os.path.isdir(path) 해..
[YAML] Yaml파일 사용법
YAML yaml은 XML, C, python, 펄, RFC2822에서 정의된 e-mail 양식에서 개념을 얻어 만들어진 "사람이 쉽게 읽을 수 있는" 데이터 직렬화 양식이다. 최근, XML이나 JSON과 같이 데이터 직렬화 양식도 많이 사용이 되면서 YAML이 마크업형식처럼 느껴지기도 하지만 사람이 읽고 쓰기 쉽다. python에서 YAML 사용하기 (PyYAML사용) PyYAML 라이브러리 설치 법: pip install pyyaml import yaml YAML기본 문법 List --- # A LIST - apple - watermelon - mango - orange ... Hash/Dictionary # dictionary (key : value) bora: name: Bora Shin job:..
[Linux] Screen 사용 (install, 기본사용법)
서버를 사용할 때, 터미널을 종료하면 실행하고 있던 것들이 다 꺼지게 되서 '계속 화면을 켜두어야 하나...','퇴근은 어쩌지.....' 했는데 linux에서는 screen 을 사용해서 이를 해결할 수 있습니다. Screen이란? 스크린은 물리적인 터미널 (Linux SSH Terminal)을 다중화하여 사용할 수 있도록 해주는 윈도우 매니저(window manager)입니다. 우리가 한 컴퓨터에서 인터넷 창, 파일 탐색기 창, 새로운 인터넷 창 이렇게 여러개를 띄워서 작업을 하는 것처럼 Linux screen도 CLI(Command Line Interface)에서 여러 애플리케이션을 멀티로 사용할 수 있도록 관리해주는 매니저라고 이해하면 됩니다. 서버위의 스크린에서 실행하고 있던 작업들은 서버와의 통신..
[프로그래머스][파이썬] 71491. 기능개발
programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr My answer: from collections import deque def solution(progresses, speeds): answer = [] dq_progresses=deque(progresses) dq_speeds=deque(speeds) while(dq_progresses): answer_fac=0 for i in range(len(dq_speeds)..
[Linux] zip파일관리 압축 및 풀기 (zip, unzip)
zip, unzip설치하기 $ sudo apt-get install zip unzip zip (압축 하기) zip {압축파일명}.zip {압축할 file or directory 1 } {압축할 file or directory 2} .... $zip. rabo.zip ./* : 이 디렉토리 아래 있는 모든 파일을 bora.zip 이름으로 압축 $zip -r rabo.zip ./* : 이 디렉토리 아래 있는 파일 및 모든 디렉토리도 함께 bora.zip 이름으로 압축 $ zip -9 -r rabo.zip ./* -x *.md : 이 디렉토리 아래 있는 모든 파일과 디렉토리를 bora.zip이름으로 압축! 단 .md (markdown)파일은 제외하고 압축 $ zip rabo.zip path/file : rab..