블로그 배경: Liunx 시스템, sshpass 및 scp 명령을 사용하여 Linux 시스템 간에 파일을 전송합니다.
기사 디렉토리
1. SSH패스 설치
sshpass가 없으면 먼저 다음 명령을 사용하여 설치해야 합니다.
sudo apt-get install sshpass
2. sshpass+scp 파일 전송
기본 전송 명령은 다음과 같습니다.sshpass -p 密码 scp 本地路径文件 登录用户名@服务器地址:服务器保存路径
2.1 폴더 전송
test1은 전송할 폴더, root는 서버에 로그인하는 사용자, 그 뒤에 IP 주소와 저장할 경로, -p 뒤의 123456은 서버에 로그인하기 위한 비밀번호~
sshpass -p 123456 scp -r test1 root@10.10.255.100:/home/test/
2.2 파일 전송
home/test1/test.txt는 전송할 파일, root는 서버에 로그인하는 사용자, IP 주소와 저장할 경로, -p 뒤의 123456은 서버에 로그인하기 위한 비밀번호 ~
sshpass -p 123456 scp home/test1/test.txt root@10.10.255.100:/home/test/
2.3 파일의 첫 번째 줄은 서버에 연결하기 위한 비밀번호를 읽습니다.
home/test1/test.txt는 읽어올 파일이고, root는 서버에 로그인한 사용자이고, 그 뒤에 IP 주소가 옵니다~
sshpass -f home/test1/test.txt ssh root@10.10.255.100
2.4 원격 폴더 삭제
/home/test는 삭제할 폴더, root는 서버에 로그인하는 사용자, 그 뒤에 IP 주소, -p 뒤의 123456은 서버에 로그인하기 위한 비밀번호~
sshpass -p 123456 ssh root@10.10.255.100 -tt rm -rf /home/test
2.5 원격으로 파일 압축 풀기
명령: sshpass -p 密码 ssh root@ip -tt tar -xzf 远程文件.tar包 -C 解压路径
/home/test1/test.tar는 압축을 풀 파일입니다. /home/test2는 압축을 푼 경로입니다. root는 서버에 로그인하는 사용자이고 그 뒤에 IP 주소가 옵니다. -p 뒤의 123456은 비밀번호입니다. 서버에 로그인합니다~
sshpass -p 123456 ssh root@10.10.255.100 -tt tar -xzf /home/test1/test.tar -C /home/test2