ใช้ PSFTP เพื่อส่งไฟล์ไปยังเซิร์ฟเวอร์ระยะไกล


0

ฉันมีไฟล์แบ็ตฉันโทรทุกคืนเพื่อถ่ายโอนไฟล์บางไฟล์

ฉันต้องการนำไฟล์จากคอมพิวเตอร์ไปยังเซิร์ฟเวอร์ระยะไกลของฉัน ฉันติดตั้ง PSFTP แล้วและฉันไม่รู้วิธีการใช้ในลักษณะแบทช์

ฉันใส่สิ่งนี้:

CD /D C:\Users\Vincent\Desktop
psftp user@99.99.99.99 -pw password -P port
put file.csv /remote/folder/file.csv

แต่เมื่อฉันเรียกไฟล์ BAT ของฉันมันติดอยู่ที่:

psftp > _

ฉันจะใช้เป็นโหมดอัตโนมัติได้อย่างไร

คำตอบ:


0

ก่อนอื่นให้วินิจฉัยว่าทำไมมันไม่ทำงาน

  1. ไฟล์แบตช์เริ่มต้น อาจเป็น C: \ users \ vincent \
  2. ไดเรกทอรีทำงานได้รับการเปลี่ยนแปลงโดยคำสั่งแรก คำสั่งนี้เสร็จสิ้นและการประมวลผลย้ายไปยังคำสั่งถัดไป
  3. psftp user@99.99.99.99 -pw password -P portเริ่มต้น. มันกำลังทำงานและรอการป้อนข้อมูลของผู้ใช้
  4. คำสั่งถัดไปไม่สามารถเข้าถึงได้จนกว่าคำสั่งก่อนหน้าจะจบลง หากคุณเป็นผู้อ่านด่วนคุณสามารถพิมพ์quitและดูข้อความแสดงข้อผิดพลาดที่put is not a recognised internal or external commandก่อนปิดหน้าต่าง

ตกลงดังนั้นตอนนี้เราพบว่าเรากำลังออกคำสั่งที่สามมากกว่าการป้อนสำหรับ psftp คำถามตอนนี้คือวิธีที่คุณสามารถออกคำสั่งไปยังโปรแกรม psftp ที่ทำงานอยู่

บทที่ 6 , ส่วน 6.1.5 ของ psftp หมายถึง-bตัวเลือก อ้างว่า:

ในการทำงานปกติ PSFTP เป็นโปรแกรมแบบโต้ตอบซึ่งแสดงบรรทัดคำสั่งและรับคำสั่งจากแป้นพิมพ์ หากคุณต้องการทำงานอัตโนมัติกับ PSFTP คุณอาจต้องการระบุชุดคำสั่งล่วงหน้าและสั่งให้ทำงานโดยอัตโนมัติ อ็อพชัน -b อนุญาตให้คุณทำสิ่งนี้ คุณใช้กับชื่อไฟล์ที่มีคำสั่งแบทช์ ตัวอย่างเช่นคุณอาจสร้างไฟล์ชื่อ myscript.scr ที่มีบรรทัดดังนี้:

จากนั้นจะแสดงตัวอย่าง ในกรณีของคุณไฟล์น่าจะมี:

put file.csv /remote/folder/file.csv
quit
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.