Liunx-sshpass 및 scp 명령은 Linux 시스템 간 파일 전송, 폴더 전송, 원격으로 폴더 삭제, 원격으로 파일 압축 풀기, 원격으로 서버에 연결

블로그 배경: 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

추천

출처blog.csdn.net/weixin_44436677/article/details/128474837