ฉันต้องการท่อโดยทั่วไปwgetคำสั่งไปยังไฟล์บนเซิร์ฟเวอร์ระยะไกลผ่าน SSH ฉันจะทำสิ่งนี้ได้อย่างไร ฉันรู้ว่าฉันสามารถsshเข้าไปในเซิร์ฟเวอร์และดาวน์โหลดไฟล์ได้ แต่ฉันต้องการใช้เครื่องในท้องถิ่นเพื่อดาวน์โหลดและส่ง
ฉันต้องการท่อโดยทั่วไปwgetคำสั่งไปยังไฟล์บนเซิร์ฟเวอร์ระยะไกลผ่าน SSH ฉันจะทำสิ่งนี้ได้อย่างไร ฉันรู้ว่าฉันสามารถsshเข้าไปในเซิร์ฟเวอร์และดาวน์โหลดไฟล์ได้ แต่ฉันต้องการใช้เครื่องในท้องถิ่นเพื่อดาวน์โหลดและส่ง
คำตอบ:
ดังนั้นคุณจะถูกบันทึกลงในเครื่องmyclientและมีการเข้าถึงไปยังเครื่องอื่นssh myserverคุณต้องการที่จะดาวน์โหลดไฟล์ผ่าน HTTP จากเซิร์ฟเวอร์เอาwww.example.comไปmyclientแต่ข้อมูลที่จะต้องมีการบันทึกไว้myserverใน สิ่งนี้ควรทำ:
wget -O - http://www.example.com/whatever | ssh myserver 'cat >/path/to/remote/destination'
หรือคุณสามารถติดmyserverระบบแฟ้ม 's ผ่าน SSH กับsshfs นี่อาจเป็นเรื่องยุ่งยากเกินไปสำหรับการใช้งานครั้งเดียว แต่สะดวกถ้าคุณทำสิ่งนี้บ่อย ๆ
mkdir ~/myserver
sshfs myserver:/ ~/myserver
wget -O ~/myserver/path/to/remote/destination http://www.example.com/whatever
Aแต่คัดลอกไฟล์ผ่าน SSH ไปBโดยไม่ต้องเก็บไฟล์Aไว้ ชนะ!