
1. blast 다운로드하기
1) https://ftp.ncbi.nlm.nih.gov/blast/executables/LATEST/ 접속
2) 최신 버전인 ` ncbi-blast-#.#.#+-win64.exe`를 다운로드

3) 설치

"I Agree" 클릭

"Next" 클릭

위치는 기본적으로 C 드라이브에 "Program Files"에 위치하게 됩니다.

설치가 완료되었습니다.
설치 위치를 가보면 파일들을 확인할 수 있습니다.

3) 설치 확인
(1) Win+R 에서 "cmd"검색
(2) cmd 창에서 아래 스크립트 입력
cd C:\Program Files\NCBI\blast-2.15.0+\bin #이건 본인 설치 위치에 따라 다름
blastx -h # 실행 확인하기

잘 실행되는 것을 확인했다.
2. Reference 다운로드하기
1) 다운 위치 정하기
- 저는 " C:/Program Files/NCBI/blast-2.15.0+/bin" 아래에 에 db폴더를 만들고, 그 안에 Bacteria, Fungi 폴더를 만들었습니다.
2) Reference 다운로드하기

다운로드 후 압축을 해제합니다(반디집으로 tar.gz파일 압축 풀기가 가능합니다).

저는 ITS도 다운로드하겠습니다.

3. 외부 fasta로 db 만들기
cd C:\Program Files\NCBI\blast-2.15.0+\bin #이건 본인 설치 위치에 따라 다름
makeblastdb -in DB.fa -dbtype nucl -out DB
NCBI기본 database가 아닌 외부 fa로 만들려면, makeblastdb 명령어로 수행 가능하다.
3. BLAST 수행하기
1) fas 파일 준비
예제로 bacteria V1 V3에서 얻어진 ASV 3개를 담고 있는 fas 파일을 가져왔습니다.
2) blast 돌리기
cd C:\Program Files\NCBI\blast-2.15.0+\bin
blastn -db db\Bacteria\16S_ribosomal_RNA\16S_ribosomal_RNA -query {예제 파일이 들어있는 위치}\seq.fas -outfmt "7 delim=, qacc sacc evalue bitscore qcovus pident sscinames" -max_target_seqs 5 -out {예제 파일이 들어있는 위치}\blast_out.txt
🚨 Error: Too many positional arguments (1), the offending value
스크립트 내의 "-"을 cmd 안에서 삭제 후 재 입력하기. 복사할 때 '-'가 '–'로 변환되어 입력된다.
🚨 Warning: [blastn] Taxonomy name lookup from taxid requires installation of taxdb database with ftp://ftp.ncbi.nlm.nih.gov/blast/db/taxdb.tar.gz
a. http://ftp.ncbi.nlm.nih.gov/blast/db/taxdb.tar.gz을 인터넷 브라우저의 주소창에 입력 -> 자동으로 다운로드된다
b. 이를 blast의 bin 위치(나의 경우에는 "C:\Program Files\NCBI\blast-2.15.0+\bin") 에 이동해 놓고 압축을 푼다.

3) 결과 확인하기

이렇게 ASV에 따른 BLAST결과를 확인할 수 있었습니다.
그런데 Top 1만 정렬해서 보고 싶다면?
-max_target_seqs 를 5에서 1로 바꾸면 됩니다.
blastn -db db\Bacteria\16S_ribosomal_RNA\16S_ribosomal_RNA -query {예제 파일이 들어있는 위치}\seq.fas -outfmt "7 delim=, qacc sacc evalue bitscore qcovus pident sscinames" -max_target_seqs 1 -out {예제 파일이 들어있는 위치}\blast_out2.txt

4) 결과 요약하기
ASV3개를 blast 했을 뿐인데, 부가적인 내용이 많은 결과를 얻었습니다. 이때 우리는 #을 뺸 나머지 정보만을 필요로 합니다.
Linux의 grep과 같은 기능은 windows에서 findstr로 사용할 수 있습니다.
findstr /V "#" {예제 파일 위치}\blast_out2.txt > {예제 파일 위치}\blast_out2_sum.txt

이를 응용하면 window의 R이나 python에서 바로바로 blast가 가능합니다.
이제 윈도우에서 Linux로 갈 필요 없이 편하게 blast 하세요!
참고
- https://www.youtube.com/watch?v=d_WMep3Q9ec&t=124s
- https://www.ncbi.nlm.nih.gov/books/NBK52637/
- https://www.metagenomics.wiki/tools/blast/error-too-many-positional-arguments

1. blast 다운로드하기
1) https://ftp.ncbi.nlm.nih.gov/blast/executables/LATEST/ 접속
2) 최신 버전인 ` ncbi-blast-#.#.#+-win64.exe`를 다운로드

3) 설치

"I Agree" 클릭

"Next" 클릭

위치는 기본적으로 C 드라이브에 "Program Files"에 위치하게 됩니다.

설치가 완료되었습니다.
설치 위치를 가보면 파일들을 확인할 수 있습니다.

3) 설치 확인
(1) Win+R 에서 "cmd"검색
(2) cmd 창에서 아래 스크립트 입력
cd C:\Program Files\NCBI\blast-2.15.0+\bin #이건 본인 설치 위치에 따라 다름
blastx -h # 실행 확인하기

잘 실행되는 것을 확인했다.
2. Reference 다운로드하기
1) 다운 위치 정하기
- 저는 " C:/Program Files/NCBI/blast-2.15.0+/bin" 아래에 에 db폴더를 만들고, 그 안에 Bacteria, Fungi 폴더를 만들었습니다.
2) Reference 다운로드하기

다운로드 후 압축을 해제합니다(반디집으로 tar.gz파일 압축 풀기가 가능합니다).

저는 ITS도 다운로드하겠습니다.

3. 외부 fasta로 db 만들기
cd C:\Program Files\NCBI\blast-2.15.0+\bin #이건 본인 설치 위치에 따라 다름
makeblastdb -in DB.fa -dbtype nucl -out DB
NCBI기본 database가 아닌 외부 fa로 만들려면, makeblastdb 명령어로 수행 가능하다.
3. BLAST 수행하기
1) fas 파일 준비
예제로 bacteria V1 V3에서 얻어진 ASV 3개를 담고 있는 fas 파일을 가져왔습니다.
2) blast 돌리기
cd C:\Program Files\NCBI\blast-2.15.0+\bin
blastn -db db\Bacteria\16S_ribosomal_RNA\16S_ribosomal_RNA -query {예제 파일이 들어있는 위치}\seq.fas -outfmt "7 delim=, qacc sacc evalue bitscore qcovus pident sscinames" -max_target_seqs 5 -out {예제 파일이 들어있는 위치}\blast_out.txt
🚨 Error: Too many positional arguments (1), the offending value
스크립트 내의 "-"을 cmd 안에서 삭제 후 재 입력하기. 복사할 때 '-'가 '–'로 변환되어 입력된다.
🚨 Warning: [blastn] Taxonomy name lookup from taxid requires installation of taxdb database with ftp://ftp.ncbi.nlm.nih.gov/blast/db/taxdb.tar.gz
a. http://ftp.ncbi.nlm.nih.gov/blast/db/taxdb.tar.gz을 인터넷 브라우저의 주소창에 입력 -> 자동으로 다운로드된다
b. 이를 blast의 bin 위치(나의 경우에는 "C:\Program Files\NCBI\blast-2.15.0+\bin") 에 이동해 놓고 압축을 푼다.

3) 결과 확인하기

이렇게 ASV에 따른 BLAST결과를 확인할 수 있었습니다.
그런데 Top 1만 정렬해서 보고 싶다면?
-max_target_seqs 를 5에서 1로 바꾸면 됩니다.
blastn -db db\Bacteria\16S_ribosomal_RNA\16S_ribosomal_RNA -query {예제 파일이 들어있는 위치}\seq.fas -outfmt "7 delim=, qacc sacc evalue bitscore qcovus pident sscinames" -max_target_seqs 1 -out {예제 파일이 들어있는 위치}\blast_out2.txt

4) 결과 요약하기
ASV3개를 blast 했을 뿐인데, 부가적인 내용이 많은 결과를 얻었습니다. 이때 우리는 #을 뺸 나머지 정보만을 필요로 합니다.
Linux의 grep과 같은 기능은 windows에서 findstr로 사용할 수 있습니다.
findstr /V "#" {예제 파일 위치}\blast_out2.txt > {예제 파일 위치}\blast_out2_sum.txt

이를 응용하면 window의 R이나 python에서 바로바로 blast가 가능합니다.
이제 윈도우에서 Linux로 갈 필요 없이 편하게 blast 하세요!
참고
- https://www.youtube.com/watch?v=d_WMep3Q9ec&t=124s
- https://www.ncbi.nlm.nih.gov/books/NBK52637/
- https://www.metagenomics.wiki/tools/blast/error-too-many-positional-arguments