10 פקודות wget דוגמאות שיעזרו לכם לפתור בעיות

אחד מהשירותים הנפוצים על ידי sysadmin הוא wget. זה יכול להיות מאוד שימושי במהלך פתרון בעיות הקשורות לאינטרנט.


מה הפקודה של wget?

הפקודה wget היא כלי שורת הפקודה Unix / Linux הפופולרי להשגת התוכן מהאינטרנט. זה בחינם לשימוש ומספק דרך לא אינטראקטיבית להוריד קבצים מהאינטרנט. הפקודה wget תומכת בפרוטוקולי HTTPS, HTTP ו- FTP מחוץ לתיבה. יתר על כן, אתה יכול גם להשתמש בפרוקסי HTTP איתו.

איך זה עוזר לך לפתור בעיות?

יש הרבה דרכים.

כמנהל מערכת, לרוב אתה עובד על מסוף, וכשאתה פותר בעיות הקשורות ליישומי אינטרנט, ייתכן שלא תרצה לבדוק את כל הדף אלא רק את הקישוריות. לחלופין, ברצונך לאמת אתרי אינטרנט ברשת. לחלופין, ברצונך להוריד דף מסוים כדי לאמת את התוכן.

wget אינו אינטראקטיבי, מה שאומר שאתה יכול להריץ אותו ברקע גם כשאתה מחובר. יכולים להיות מקרים רבים שבהם חיוני לך להתנתק מהמערכת גם כאשר אתה מבצע אחזור קבצים מהאינטרנט. ברקע, הווגט יפעל ויסיים את תפקידם שהוקצה.

זה יכול לשמש גם כדי לקבל את כל האתר במחשבים המקומיים שלך. זה יכול לעקוב אחר קישורים ב XHTML ו- HTML דפים ליצירת גרסה מקומית. לשם כך עליו להוריד את הדף רקורסיבי. זה שימושי מאוד מכיוון שאתה יכול להשתמש בו כדי להוריד דפים או אתרים חשובים לצפייה במצב לא מקוון.

בואו נראה אותם בפעולה. התחביר של הווגט הוא כמטה.

wget [אפשרות] [URL]

הורד דף אינטרנט

ננסה להוריד דף. דוגמה: github.com

wget github.com

אם קישוריות בסדר, היא תוריד את דף הבית ותציג את הפלט כמפורט להלן.

[מוגן בדוא”ל]: ~ # wget github.com
כתובת אתר הפכה ל- HTTPS עקב מדיניות HSTS
–2020-02-23 10: 45: 52– https://github.com/
פותר github.com (github.com) … 140.82.118.3
מתחבר ל- github.com (github.com) | 140.82.118.3 |: 443 … מחובר.
בקשת HTTP נשלחה, ממתינה לתגובה … 200 אישור
אורך: לא מוגדר [text / html]
שומר ב: ‘index.html’

index.html [ <=> ] 131.96K – .- KB / s תוך 0.04 שניות

2020-02-23 10:45:52 (2.89 מגהבייט / שניות) – ‘index.html’ נשמר [135126]

[מוגן בדוא”ל]: ~ #

הורד מספר קבצים

שימושי כשאתה צריך להוריד קבצים מרובים בו זמנית. זה יכול לתת לך מושג לגבי הורדת קבצים אוטומטיים באמצעות סקריפטים מסוימים.

ננסה להוריד קבצי Python 3.8.1 ו- 3.5.1.

wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tgz https://www.python.org/ftp/python/3.5.1/Python-3.5.1. tgz

לכן, כפי שאתה יכול לנחש, התחביר הוא כמטה.

wget URL1 URL2 URL3

אתה רק צריך להבטיח מתן מקום בין כתובות אתרים.

הגבל את מהירות ההורדה

זה יהיה שימושי כשרוצים לבדוק כמה זמן לקובץ לוקח להוריד ברוחב הפס השונה.

באמצעות אפשרות – שיעור הגבלת הגבלה, אתה יכול להגביל את מהירות ההורדה.

להלן פלט הורדת קובץ ה- Nodejs.

[מוגן בדוא”ל]: ~ # wget https://nodejs.org/dist/v12.16.1/node-v12.16.1-linux-x64.tar.xz
–2020-02-23 10: 59: 58– https://nodejs.org/dist/v12.16.1/node-v12.16.1-linux-x64.tar.xz
פותר nodejs.org (nodejs.org) … 104.20.23.46, 104.20.22.46, 2606: 4700: 10 :: 6814: 162e, …
מתחבר ל- nodejs.org (nodejs.org) | 104.20.23.46 |: 443 … מחובר.
בקשת HTTP נשלחה, ממתינה לתגובה … 200 אישור
אורך: 14591852 (14M) [יישום / x-xz]
שומר ב: ‘node-v12.16.1-linux-x64.tar.xz’

node-v12.16.1-linux-x64.tar.xz 100% [================================== ================================================== =======>] 13.92M – .- KB / s בשניות

2020-02-23 10:59:58 (272 מגהבייט לשניות) – ‘node-v12.16.1-linux-x64.tar.xz’ נשמר [14591852/14591852]

לקח 0.05 שניות כדי להוריד קבצים של 13.92 מגה בייט. כעת, ננסה להגביל את המהירות ל 500K.

[מוגן בדוא”ל]: ~ # wget – שיעור הגבלה = 500k https://nodejs.org/dist/v12.16.1/node-v12.16.1-linux-x64.tar.xz
–2020-02-23 11: 00: 18– https://nodejs.org/dist/v12.16.1/node-v12.16.1-linux-x64.tar.xz
פותר nodejs.org (nodejs.org) … 104.20.23.46, 104.20.22.46, 2606: 4700: 10 :: 6814: 162e, …
מתחבר ל- nodejs.org (nodejs.org) | 104.20.23.46 |: 443 … מחובר.
בקשת HTTP נשלחה, ממתינה לתגובה … 200 אישור
אורך: 14591852 (14M) [יישום / x-xz]
שומר ב: ‘node-v12.16.1-linux-x64.tar.xz.1’

node-v12.16.1-linux-x64.tar.xz.1 100% [================================ ================================================== =========>] 13.92M 501KB / s בשנות ה -28

2020-02-23 11:00:46 (500 KB / שניות) – ‘node-v12.16.1-linux-x64.tar.xz.1’ נשמר [14591852/14591852]

הפחתת רוחב הפס לקח זמן רב יותר להוריד – 28 שניות. דמיין שהמשתמשים שלך מתלוננים על הורדה איטית, ואתה יודע שרוחב הפס שלהם הוא נמוך. אתה יכול לנסות במהירות – שיעור הגבלה כדי לדמות את הבעיה.

הורד ברקע

הורדת קבצים גדולים יכולה לקחת את הזמן או את הדוגמא שלמעלה, שם ברצונך להגדיר גם את מגבלת התעריף. זה צפוי, אבל מה אם לא תרצו לבהות בטרמינל שלכם?

ובכן, אתה יכול להשתמש בטיעון -b כדי להפעיל את הווגט ברקע.

[מוגן בדוא”ל]: ~ # wget -b https://slack.com
ממשיך ברקע, pid 25430.
הפלט ייכתב ל- ‘wget-log.1’.
[מוגן בדוא”ל]: ~ #

התעלם משגיאת אישור

זה שימושי כשאתה צריך לבדוק יישומי אינטרנט לאינטרא-נט שאין להם את האישור הראוי. כברירת מחדל, wget תזרוק שגיאה כאשר אישור אינו תקף.

[מוגן בדוא”ל]: ~ # wget https://expired.badssl.com/
–2020-02-23 11: 24: 59– https://expired.badssl.com/
פתרון expired.badssl.com (expired.badssl.com) … 104.154.89.105
מתחבר ל- expired.badssl.com (expired.badssl.com) | 104.154.89.105 |: 443 … מחובר.
שגיאה: לא יכול לאמת את האישור שפג תוקפו .badssl.com, שהונפק על ידי ‘CN = COMODO RSA Validation Secure Server CA, O = COMODO CA Limited, L = Salford, ST = מנצ’סטר רבתי, C = GB’:
פג תוקף האישור.
כדי להתחבר אל expired.badssl.com בצורה מאובטחת, השתמש ב’-no-check-Certificate ‘.

הדוגמה שלמעלה היא עבור כתובת האתר בה פג תוקף ה- cert. כפי שאתה יכול לראות, הוא הציע להשתמש ב – אין לבדוק אישור אשר יתעלם מכל אימות אישור.

[מוגן בדוא”ל]: ~ # wget https://untrusted-root.badssl.com/ – no-check-Certificate
–2020-02-23 11: 33: 45– https://untrusted-root.badssl.com/
פותר untrusted-root.badssl.com (untrust-root.badssl.com) … 104.154.89.105
מתחבר ל- untrusted-root.badssl.com (untrust-root.badssl.com) | 104.154.89.105 |: 443 … מחובר.
אזהרה: לא ניתן לאמת את תעודת untrusted-root.badssl.com, שהונפקה על ידי ‘CN = BadSSL תעודת שורש לא אמון, O = BadSSL, L = סן פרנסיסקו, ST = קליפורניה, C = ארה”ב “:
נתקל בחתימה עצמית.
בקשת HTTP נשלחה, ממתינה לתגובה … 200 אישור
אורך: 600 [טקסט / HTML]
שומר ל: ‘index.html.6’

index.html.6 100% [=========================================== =================================================>] 600 – .- KB / s בשניות

2020-02-23 11:33:45 (122 מגהבייט לשניות) – ‘index.html.6’ נשמר [600/600]

[מוגן בדוא”ל]: ~ #

מגניב, לא??

כותרת תגובה של HTTP

עיין בכותרת התגובה HTTP של אתר נתון בטרמינל.

השימוש ב- S ידפיס את הכותרת, כפי שתוכלו לראות בהמשך קורסרה.

[מוגן בדוא”ל]: ~ # wget https://www.coursera.org -S
–2020-02-23 11: 47: 01– https://www.coursera.org/
פתרון www.coursera.org (www.coursera.org) … 13.224.241.48, 13.224.241.124, 13.224.241.82, …
מתחבר לאתר www.coursera.org (www.coursera.org) | 13.224.241.48 |: 443 … מחובר.
בקשת HTTP נשלחה, ממתינה לתגובה…
HTTP / 1.1 200 אישור
סוג תוכן: טקסט / HTML
אורך תוכן: 511551
חיבור: לשמור על החיים
בקרת מטמון: פרטית, ללא מטמון, ללא חנות, אימות חובה, מקסימום גיל = 0
תאריך: יום ראשון, 23 בפברואר 2020 11:47:01 GMT
etag: W /"7156d-WcZHnHFl4b4aDOL4ZSrXP0iBX3o"
שרת: שליח
קובץ Cookie: CSRF3-Token = 1583322421.s1b4QL6OXSUGHnRI; גיל מקסימום = 864000; פג תוקף = יום רביעי, 04 במרץ 2020 11:47:02 GMT; נתיב = /; דומיין = .coursera.org
קובץ Cookie: __204u = 9205355775-1582458421174; גיל מקסימום = 31536000; תפוג = יום שני, 22 בפברואר 2021 11:47:02 GMT; נתיב = /; דומיין = .coursera.org
תעבורה קפדנית-אבטחה: מקסימום גיל = 31536000; includeSubDomains; טעינה מוקדמת
אפשרויות X-Content-Type: nosniff
x-coursera-render-mode: html
x-coursera-render-version: v2
X-Coursera-Request-Id: NCnPPlYyEeqfcxIHPk5Gqw
X-Coursera-Trace-Id-Hex: a5ef7028d77ae8f8
זמן שירות שליח x-upstream-service: 1090
אפשרויות מסגרת X: SAMEORIGIN
מופעל על ידי x: אקספרס
הגנת X-XSS: 1; מצב = חסום
X-Cache: מיס מהענן
דרך: 1.1 884d101a3faeefd4fb32a5d2a8a076b7.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: LHR62-C3
X-Amz-Cf-Id: vqvX6ZUQgtZAde62t7qjafIAqHXQ8BLAv8UhkPHwyTMpvH617yeIbQ ==
אורך: 511551 (500K) [text / html]

נהל את המשתמש-סוכן

יכול להיות מצב שתרצה לחבר אתר באמצעות סוכן משתמש מותאם אישית. או סוכן משתמש מסוים של הדפדפן. ניתן לעשות זאת על ידי ציון משתמש-סוכן. הדוגמה להלן מיועדת לסוכן המשתמש בשם MyCustomUserAgent.

[מוגן בדוא”ל]: ~ # wget https://gf.dev – משתמש-סוכן ="MyCustomUserAgent"

כותרת מארח

כאשר יישום עדיין בפיתוח, ייתכן שלא תהיה לך כתובת URL נכונה לבדיקה. לחלופין, ייתכן שתרצה לבדוק מופע HTTP בודד באמצעות IP, אך עליך לספק את כותרת המארח כדי שהאפליקציה תעבוד כראוי. במצב זה, – שימש שימושי.

ניקח דוגמא לבדיקת http://10.10.10.1 עם כותרת המארח בתור application.com

wget – head ="מארח: application.com" http://10.10.10.1

לא סתם מארח, אבל אתה יכול להזריק כל כותרת שתרצה.

התחבר באמצעות פרוקסי

אם אתה עובד על סביבת DMZ, ייתכן שלא תהיה לך גישה לאתרי אינטרנט. אבל אתה יכול לנצל את ה- proxy כדי להתחבר.

wget -e use_proxy = כן http_proxy = $ PROXYHOST: PORT http://externalsite.com

אל תשכח לעדכן משתנה $ PROXYHOST: PORT עם אלה בפועל.

התחבר באמצעות פרוטוקול TLS ספציפי

בדרך כלל הייתי ממליץ להשתמש ב- OpenSSL לבדיקת פרוטוקול TLS. אבל, אתה יכול להשתמש גם בווגט.

wget –secure-protocol = TLSv1_2 https://example.com

האמור לעיל יאלץ את ווגט להתחבר דרך TLS 1.2.

סיכום

הכרת הפקודה הדרושה יכולה לעזור לך בעבודה. אני מקווה שהדבר לעיל נותן לך מושג מה אתה יכול לעשות עם ווגט.

תגיות:

  • לינוקס

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map