아나콘다 명령어를 다룬 포스트롤 보면 게시글을 너무 나누어 놓은 글이 많아서 직접 정리하여 사전처럼 사용하기 위하여 작성하게 되었습니다.
$
가 붙은 줄은 명령줄을 의미하고, 없는 줄은 명령줄의 출력 행입니다.
명령어는 운영체제와 무관하게 동일합니다.
다음 명령어를 통하여 현재 anaconda가 생성한 환경 목록들을 볼 수 있습니다.
$ conda env list
다음 명령어를 입력하면 현재 환경에 설치 된 패키지 목록을 볼 수 있습니다.
$ conda list
다음 명령어를 입력하면 현재 활성화 되어 있는 환경 외에 특정 환경에 설치 된 패키지 목록을 볼 수 있습니다.
대부분의 다른 명령에도-n
또는--name
을 입력하면 특정 환경을 선택할 수 있습니다.$ conda list -n "환경이름"
다음 명령어를 통해 새로운 환경을 생성할 수 있습니다.
$ conda create -n "생성할_환경_이름"
이렇게 생성하면 내부가 완전히 비어 있는 환경이 생성됩니다.
다음 명령어를 통해 특정 파이썬 버전이 포함 된 환경을 생성할 수 있습니다.
$ conda create -n "생성활_환경_이름" python="버전"
아래는 파이썬3.9를 포함하는 test라는 이름의 환경을 생성하는 예제입니다.
다음 명령어로 존재하는 환겨을 삭제할 수 있습니다. 직접 디렉토리로 이동해서 환경 폴더를 지워도 가능하지만, 가능한 명령어를 사용하는 것을 추천합니다.
$ conda env remove -n "환경이름"
다음 명령을 통하여 특정 이름의 환경을 활성화 합니다. 물론
-n
대신--name
이라고 입력하여도 같습니다.$ conda activate -n "환경이름"
다음 명령을 통하여 특정 이름의 환경을 비활성화 합니다.
$ conda deactivate -n "환경이름"
다음 명령어로 현재 활성화 되어 있는 환경에 설치된 패키지 목록을 yaml 형식으로 현재 경로에 저장할 수 있습니다.
$ conda env export >> "파일이름".yaml
다음 명령어로 활성화 되어 있지 않은 다른 환경을 백업할 수 있습니다.
$ conda env export -n "환경이름" >> "파일이름".yaml
$ conda create -n "환경이름" -f "백업_yaml_파일이름"
아래 예제는 test2라는 이름으로 test_env.yaml 파일을 이용하여 test2라는 이름의 새 환경을 생성하는 예제입니다.
- 만약
-n
아규먼트가 없으면 원래 환경의 이름으로 환경을 생성합니다.(yaml 파일에 경로와 이름이 포함되어 저장되어 있음.)- 아래 사진에서 보이는 유니코드 오류는 윈도우에서 파일을 CP949 인코딩으로 저장하면서 생기는 문제입니다. 환경 생성은 성공적으로 가능합니다.
- 리눅스 환경에서 export한 환경을 윈도우에서 import 하거나 그 반대의 경우 모두 잘 작동하지 않습니다. OS마다 패키지 의존성이 다르기 때문입니다.
다음 명령어로 현재 활성화 되어 있는 가상 환경에 패키지를 설치할 수 있습니다.
$ conda install "패키지이름"
패키지 이름을 여러개 공백으로 구분하여 이어 쓰면 모두 설치 가능합니다.
$ conda install "패키지이름1" "패키지이름2" ...
-n
을 통하여 환경 이름을 명시하면 활성화 되지 않은 다른 환경에 패키지를 설치할 수 있습니다.
아나콘다를 다루다보면 다음 사진처럼 분명 있다고 하는 패키지가 설치가 되지 않는 경우가 있습니다. 이는 기본 채널 외 다른 채널에 패키지가 존재하는 경우입니다.
그럴 땐anaconda "패키지이름"
으로 구글에 검색하면 Anaconda.org의 페이지가 뜹니다.
아래로 내려보면 conda install 명령어가 몇 개 나와 있습니다. 이 중에 하나를 실행시키면 설치를 할 수 있습니다.
conda install 시-c
argument를 사용하면 특정 채널을 명시하여 줄 수 있습니다. 웬만하면 conda-forge 채널에서 설치가 가능합니다.$ conda install -c "채널이름" "패키지이름"
저는 수십개에서 많게는 백개까지의 패키지가 설치되어 있습니다. 이 중에서 어떤 패키지가 이미 설치되어 있는지 확인 하는 것은 매우 귀찮은 일입니다. 이 때 좋은 방법이 있습니다.
$ conda list | find "패키지이름"
|
기호는 엔터 위의 백슬래쉬 기호를 shift를 누르고 타이핑 하였을 때 나타나는 기호입니다.- 위의 명령어들과 다르게 여기서 패키지 이름은 큰따옴표로 둘러싸야 합니다.
- 리눅스에서는 보통
grep
명령어로 해결합니다.$ conda list | grep "패키지이름"
존재하는 패키지는 목록이 뜨고 존재하지 않는 패키지는 출력이 없습니다. 위 예제는 numpy를 검색했을 때 numpy, numpy-base가 설치된 것을 확인할 수 있고, matplot을 검색했을 때는 설치 된 패키지가 없는 것을 확인할 수 있습니다.