서로 다른 컴퓨터 간의 파일이나 디렉토리를 복사하기 위해서는 scp 명령어를 사용한다. scp 는 secure copy의 약자(acronym) 이며, 사용법은 다음과 같다.
만약 directory 를 복사하고자 할 때는 -r 옵션을 주어야 한다. 실제 사용 예를 살펴 보자.
229 번을 기준으로 설명해 보자.
위에서 source, 즉 복사할 파일들은 scp bioism:/home/adnoctum/Research/microarray/analysis_code/transpose* . 에서 붉은 색으로 밑줄 친 파일들이다. 즉, 내 홈 경로의 Research/microarray/analysis_code 경로에 있는 transpose 로 시작하는 모든 파일들을 복사해 올 것이다. 파일을 복사해서 저장할 목적 경로는 . 으로, 즉 내가 저 명령어를 실행했던 바로 그 경로가 된다. 만약 위와 같은 상황에서 transpose로 시작하는 디렉토리가 있었다면 229 번 명령어는 r 옵션이 없이 실행되었기 때문에 그 디렉토리는 복사되지 않는다.
리눅스에서는 다른 서버에 접속을 해야 할 필요가 있는 명령어의 경우 사용자를 지정하지 않으면 그 명령어를 사용하는 사용자 계정으로 실행이 된다. 현재 어떤 사용자 계정으로 사용되고 있는지를 보기 위해서는 whoami 명령어를 사용한다.
만약 내가 현재 adnoctum 계정을 사용하고 있는데, 다른 서버에 있는 파일을 복사해 오기 위해 접속할 계정이 root 등의 다른 계정이었다면 목적지를 표시할 때
형식을 사용한다. 예를 들면,
와 같은 형식이다. scp 나 ssh 명령어도 모두 같은 형태를 따른다. (이것은 윈도우즈 탐색기에서 ftp 를 접속할 때도 같은 형식이다).
scp [-r] [source] [dest]
만약 directory 를 복사하고자 할 때는 -r 옵션을 주어야 한다. 실제 사용 예를 살펴 보자.
[adnoctum@csbi ~]$ history | grep scp
299 scp bioism:/home/adnoctum/Research/microarray/analysis_code/transpose* .
335 scp -r bioism:/home/adnoctum/Research/microarray/all_std_mat_gse .
337 scp bioism:/home/adnoctum/Research/microarray/analysis_code/resample* .
461 scp make_edge_pcc_rank_list.cpp bioism:/home/adnoctum/Research/microarray/analysis_code/
462 scp make_gene_gene_corr_matrix.cpp bioism:/home/adnoctum/Research/microarray/analysis_code/
510 scp HPRDID2.PMID.txt bioism:/home/adnoctum/Research/pubmed_article/
625 scp bioism:/home/adnoctum/Research/pubmed_article/count_article* .
716 scp bioism:/home/adnoctum/Research/microarray/analysis_code/dense_graph2.cpp .
751 scp bioism:/home/adnoctum/Research/pubmed_article/HPRD.PMID.txt .
754 scp bioism:/home/adnoctum/Research/pubmed_article/HPRD_ID* .
837 scp -r bioism.kaist.ac.kr:/home/adnoctum/SW/EndNode\ v10.0 .
1001 history | grep scp
[adnoctum@csbi ~]$
299 scp bioism:/home/adnoctum/Research/microarray/analysis_code/transpose* .
335 scp -r bioism:/home/adnoctum/Research/microarray/all_std_mat_gse .
337 scp bioism:/home/adnoctum/Research/microarray/analysis_code/resample* .
461 scp make_edge_pcc_rank_list.cpp bioism:/home/adnoctum/Research/microarray/analysis_code/
462 scp make_gene_gene_corr_matrix.cpp bioism:/home/adnoctum/Research/microarray/analysis_code/
510 scp HPRDID2.PMID.txt bioism:/home/adnoctum/Research/pubmed_article/
625 scp bioism:/home/adnoctum/Research/pubmed_article/count_article* .
716 scp bioism:/home/adnoctum/Research/microarray/analysis_code/dense_graph2.cpp .
751 scp bioism:/home/adnoctum/Research/pubmed_article/HPRD.PMID.txt .
754 scp bioism:/home/adnoctum/Research/pubmed_article/HPRD_ID* .
837 scp -r bioism.kaist.ac.kr:/home/adnoctum/SW/EndNode\ v10.0 .
1001 history | grep scp
[adnoctum@csbi ~]$
229 번을 기준으로 설명해 보자.
scp bioism:/home/adnoctum/Research/microarray/analysis_code/transpose* .
위에서 source, 즉 복사할 파일들은 scp bioism:/home/adnoctum/Research/microarray/analysis_code/transpose* . 에서 붉은 색으로 밑줄 친 파일들이다. 즉, 내 홈 경로의 Research/microarray/analysis_code 경로에 있는 transpose 로 시작하는 모든 파일들을 복사해 올 것이다. 파일을 복사해서 저장할 목적 경로는 . 으로, 즉 내가 저 명령어를 실행했던 바로 그 경로가 된다. 만약 위와 같은 상황에서 transpose로 시작하는 디렉토리가 있었다면 229 번 명령어는 r 옵션이 없이 실행되었기 때문에 그 디렉토리는 복사되지 않는다.
리눅스에서는 다른 서버에 접속을 해야 할 필요가 있는 명령어의 경우 사용자를 지정하지 않으면 그 명령어를 사용하는 사용자 계정으로 실행이 된다. 현재 어떤 사용자 계정으로 사용되고 있는지를 보기 위해서는 whoami 명령어를 사용한다.
[adnoctum@csbi ~]$ whoami
adnoctum
[adnoctum@csbi ~]$ su
암호:
[root@csbi adnoctum]# whoami
root
[root@csbi adnoctum]#
adnoctum
[adnoctum@csbi ~]$ su
암호:
[root@csbi adnoctum]# whoami
root
[root@csbi adnoctum]#
만약 내가 현재 adnoctum 계정을 사용하고 있는데, 다른 서버에 있는 파일을 복사해 오기 위해 접속할 계정이 root 등의 다른 계정이었다면 목적지를 표시할 때
ID@dest
형식을 사용한다. 예를 들면,
scp -r . root@some.where:/home/root/test
와 같은 형식이다. scp 나 ssh 명령어도 모두 같은 형태를 따른다. (이것은 윈도우즈 탐색기에서 ftp 를 접속할 때도 같은 형식이다).
'컴퓨터 > 리눅스' 카테고리의 다른 글
iconv : 파일 내용의 encoding 을 변환 (4) | 2010.10.18 |
---|---|
vnc 설치 및 사용 (5) | 2010.10.15 |
리눅스에서의 > 와 >> (0) | 2010.09.17 |
프로세스 관련 명령어들 (0) | 2010.09.06 |
mv : 파일 이동 및 파일 이름 변경 명령어 (0) | 2010.08.31 |