שמירת הורדה שהופעלה ב-SSH לקובץ מקומי
בחרו בין הורדה מקומית דרך פרוקסי לבין שליפה מרחוק שלאחריה העברה, והפרידו את פלט הפקודה מבייטי הקובץ.
הרצת מוריד דרך SSH והרצת מוריד מקומי דרך פרוקסי מרוחק מציבות את ההורדה במקומות שונים:
| סידור | מי מביא את האתר? | היכן הקובץ נכתב |
|---|---|---|
| מוריד מקומי דרך פרוקסי מרוחק | לקוח ה-HTTP המקומי מחזיק בבקשה; הפרוקסי נושא אותה | נתיב הפלט של המוריד המקומי |
| מוריד שהופעל ב-SSH | תוכנית במכונה המרוחקת | הנתיב המרוחק שלו, אלא אם הנתונים מועברים בחזרה במפורש |
עם חשבון SSH מורשה ו-curl מותקן מרחוק, אפשר להעביר את התוצר חזרה בפלט התקני:
ssh -T [email protected] 'curl --fail --silent --show-error https://downloads.example/file.bin' > file.partהחליפו את חשבון הדוגמה ואת הכתובת. ההפניה נמצאת מחוץ לפקודה המרוחקת שבמרכאות, ולכן המעטפת המקומית פותחת את file.part. אם תניחו אותה בתוך הפקודה המרוחקת, הנתיב יהיה שייך לסביבה המרוחקת.
השתמשו בנתיב זמני חדש: המעטפת המקומית עלולה ליצור או לקצר את הקובץ לפני שהפעולה המרוחקת תצליח. בדקו את תוצאת היציאה של SSH ואת התוצר לפני שתנו לו את שמו הסופי.
הפלט התקני חייב להכיל רק את בייטי התוצר. ברכות, כרזות התקדמות או הודעות עטיפה עלולות לשבש אותו; אבחון שייך לשגיאה התקנית. פקודה מרוחקת ששומרת לשם קובץ משלה עשויה שלא להחזיר בייטים כלל. שמרו על תוצאת היציאה של המוריד דרך כל עטיפה.
אפשר במקום זאת לשמור מרחוק ולהעביר את הקובץ ב-SFTP. אם SSH כבר משתמש בעוזר פרוקסי, השתמשו שוב ברשומת מארח ה-SSH הזו להעברה. אם המטרה היא תהליך עבודה עם פרוקסי מקומי, השאירו את המוריד מקומי והגדירו את ממשק הפרוקסי הנתמך שלו.
בכל מקרה, קובץ שצריך להגיע למחשב הנייד שלכם עדיין חייב לחצות את חיבור הרשת שלו. הבחירה משנה את החיבור שפונה לאתר ואת התהליך שמבצע את ההורדה.