در سیستمعاملهای لینوکسی، ابزارهای متنوعی برای مدیریت و انجام عملیات مختلف در وب و شبکه وجود دارد. یکی از این ابزارهای قدرتمند و مفید، که یک ابزار خط فرمان است، Wget نام دارد. Wget با ارائه قابلیتهای خاص، از جمله دانلود فایلها، انتقال امن اطلاعات، ایجاد لیست دانلودها و مدیریت صف دانلود، به یکی از ابزارهای مورد علاقه برنامهنویسان و مدیران سیستم تبدیل شده است. در این مقاله به طور جامع به آموزش نصب wget در لینوکس میپردازیم. سپس دستورات و کاربردهای متعدد آن، مانند مدیریت دانلودها، تنظیمات پیشرفته و ... را بررسی میکنیم. همچنین در صورت نیاز به داشتن سرور مجازی لینوکس میتوانید از آسمان هاست مشاوره بگیرید.
wget چیست
wget یک ابزار خط فرمان است که از آن برای دانلود فایلها از اینترنت، به صورت خودکار و بدون نیاز به مرورگر استفاده میشود. این ابزار در بسیاری از سیستمعاملهای مبتنی بر یونیکس نظیر لینوکس، ویندوز و Mac OS قابل استفاده است. ( دانلود لینوکس اوبونتو )
wget دارای ویژگیهای مهمی است که شامل موارد زیر هستند:
- دانلود فایلها:با استفاده از wget میتوان فایلها را با URL یا لینک مستقیم، از اینترنت دانلود کرد.
- ادامه دانلودها:اگر دانلود یک فایل قطع شود یا فایل ناقص دانلود شود، میتوان فایل را با wget از همان جایی که دانلود متوقف شده، دوباره دانلود کرد.
- دانلود وبسایتها:پس از نصب wget، با تنظیم گزینههای مختلفی در آن میتوان کل وبسایتها یا بخشهای خاصی از آنها را دانلود کرد.
- تنظیمات پیشرفته:با استفاده از تنظیمات پیشرفتهای که wget داراست، میتوان اتصالهای امن SSL/TLS را پیکربندی کرد و تنظیماتی مانند صرفهجویی در مصرف پهنای باند و سایر تنظیمات مرتبط با دانلود را اعمال کرد.
- استفاده در دستورات خودکار:بعد از نصب wget، میتوان از آن در اسکریپتها یا دستورات خودکار، برای اجرای دانلودها به صورت زمانبندی شده استفاده کرد.
wget یک ابزار چندکاره و قوی است که از انواع پروتکلها و دانلودها پشتیبانی میکند و میتواند در محیطهای مختلفی مورد استفاده قرار گیرد. تعدادی از دانلودها و پروتکلهایی که wget از آنها پشتیبانی میکند شامل:
- HTTP و HTTPS
- FTP و FTPS
- HTTP Proxy و FTP
- SSL/TLS
مطالب بیشتر، اطلاعات بیشتر
نصب wget در لینوکس
قبل از نصب wget باید اطمینان حاصل کرد که این ابزار از قبل روی سیستم شما نصب شده باشد. برای بررسی این مورد میتوان از دستور زیر استفاده کرد:
wget --version
با استفاده از این دستور میتوانید اطلاعات مربوط به wget را مشاهده کنید. اگر wget روی سیستم نصب باشد، اطلاعات مربوط به نسخه و سایر جزئیات نمایش داده میشود؛ در غیر این صورت یک پیغام خطا به صورت زیر نمایش داده میشود که نشان دهنده عدم نصب wget روی سیستم است.
bash: wget: command not found
برای نصب wget روی برخی از نسخههای لینوکس میتوان از دستورات زیر استفاده کرد.
- Ubuntu یا Debian:
sudo apt-get install wget
- Fedora:
bash: wget: command not found
- CentOS:
sudo yum install wget
برای نصب wget روی هر نسخه از لینوکس، باید دستور مربوط به همان نسخه را اجرا کنید. برای اطمینان از نصب، میتوانید دوباره دستور wget --version را اجرا کنید.
آشنایی با سوئیچهای کاربردی wget
قبل از توضیح در مورد دستورات کاربردی wget بهتر است با برخی از سوئیچهای آن آشنا شویم. wget دارای تعداد زیادی از سوئیچها (switches) یا گزینهها (options) برای سفارشیسازی دانلودها دارد. برخی از سوئیچهای رایج در wget شامل موارد زیر هستند:
- r- یا recursive-- دانلود فایلها و لینکهای مرتبط درون یک شبکه.
- np- یا no-parent-- عدم دانلود لینکهایی که به سطح بالاتر در ساختار وبسایت اشاره دارند.
- N- یا timestamping-- فقط فایلهایی را دانلود میکند که جدیدتر از نسخه فایلهای موجود در سیستم هستند.
- c- یا continue-- در صورت متوقف شدن دانلود یا قطع اتصال، از همان جایی که متوقف شده، دانلود فایل را ادامه میدهد.
- limit-rate=RATE--سرعت دانلود به مقدار دلخواه شما محدود میکند.(سرعت دلخواه با RATE جایگزین میشود.)
- p- یا directory-prefix=PREFIX--یک دایرکتوری برای ذخیره فایلهای دانلود شده تعیین میکند.
- i- یا input-file-=FILE-- لیست فایلها از یک فایل متنی را دانلود میکند.
- q- یا quiet-- به حالت بیصدا تغییر پیدا میکند و کمترین اطلاعات را در خروجی نمایش میدهد.
- spider--بررسی امکان دسترسی به URL بدون اینکه فایل را دانلود کنید.
دستورات کاربردی wget
با نصب wget در سیستمعامل لینوکس میتوان انواع عملیات دانلودی را انجام داد. در ادامه برخی از دستورات کاربردی wget آورده شده است.
دانلود فایل
دانلود فایلها از اینترنت با استفاده از URL یا لینکهای مستقیم، یکی از سادهترین و متداولترین کاربردهای wget است که با دستور زیر انجام میشود:
wget http://example.com/file.zip
دانلود چندین فایل
برای دانلود چند فایل با استفاده از wget میتوانید دستور زیر را استفاده کنید.
wget URL1 URL2 URL3 ...
URL1، URL2 و URL3 آدرسهای اینترنتی فایلهایی هستند که میخواهید دانلود کنید. به عنوان مثال:
wget http://example.com/file1.zip http://example.com/file2.zip http://example.com/file3.zip
در این دستور، فایلهای file1.zip، file2.zip و file3.zip از آدرس اینترنتی http://example.com دانلود میشوند. شما میتوانید به تعداد دلخواه از آدرسهای اینترنتی را برای دانلود فایلها، در این دستور استفاده کنید.
دانلود از طریق FTP
با استفاده از wget، امکان دانلود فایلها از سرورهای FTP نیز وجود دارد.
wget ftp://username:password@ftp.example.com/path/to/file
در دستور بالا:
- username نام کاربری ورود به سرور FTP
- passwordرمز عبور مربوط به نام کاربری ورود به سرور FTP
- ftp.example.com آدرس سرور FTP
- path/to/file/مسیر فایلی که میخواهید از سرور FTP دانلود کنید
دانلود وبسایت
wget، قابلیت دانلود کل وبسایت یا بخشهای خاصی از آن را داراست.
wget --recursive --no-clobber --page-requisites --html-extension --convert-links --restrict-file-names=unix --domains example.com http://example.com
پارامترهای استفاده شده در دستور بالا:
- recursive--با این پارامتر، تمامی لینکهای داخلی و خارجی وبسایت دانلود میشود.
- no-clobber--این پارامتر باعث میشود فایلهایی که قبلا دانلود شدهاند، دوباره دانلود نشوند.
- page-requisites--این پارامتر تمامی فایلها مانند فایلهای CSS و JS و تصاویر را که برای نمایش صفحات وبسایت به کار رفته است را دانلود میکند.
- html-extension--با استفاده از این پارامتر، wget به فایلهای html پسوند HTML را اضافه میکند.
- convert-links--این پارامتر لینکهای مرجع در فایلهای html را تغییر میدهد تا به فایلهای محلی ارجاع دهند.
- restrict-file-names=unix--این پارامتر فایلهایی که نامشان حاوی کاراکترهای ویژه مانند فاصله، حروف بزرگ و کاراکترهای غیرمجاز دیگر است را به کاراکترهای معتبر برای سیستمعامل لینوکس تغییر میدهد.
- domains example.com--با این پارامتر فایلهایی که از دامنه مشخص شده (به عنوان مثال example.com) هستند دانلود میشوند و فایلهای مرتبط با دامنههای دیگر نادیده گرفته میشوند.
http://example.com آدرس وبسایت مورد نظر شماست. با اجرای این دستور، محتوای سایت به طور کامل دانلود میشود و در دایرکتوری فعلی شما ذخیره میشود.
ادامه دانلود
بسیار رایج است که هنگام دانلود فایلهای بزرگ، دانلود متوقف یا قطع شود. در صورت قطع شدن دانلود، میتوان با استفاده از این ابزار دانلود را از جایی که متوقف شده، دوباره ادامه داد.
wget --continue http://example.com/largefile.zip
یا
wget -c http://example.com/largefile.zip
آدرس اینترنتی فایل مورد نظر است.
محدود کردن سرعت دانلود
برای محدود کردن سرعت دانلود با wget، میتوان از پارامتر --limit-rate یا -Q استفاده کرد. این پارامتر اجازه میدهد تا حداکثر سرعت دانلود را بر اساس یک واحد مشخص مانند K/s، M/s و G/s محدود کرد.
به عنوان مثال برای محدود کردن سرعت دانلود به 100 کیلوبایت بر ثانیه، میتوان از دستور زیر استفاده کرد:
wget --limit-rate=100k http://example.com/file.zip
به همین صورت میتوانید از واحدهای مگابایت و گیگابایت نیز استفاده کنید.
wget -Q 1M http://example.com/largefile.zip
این دستورات به wget میگویند که سرعت دانلود را به 100 کیلوبایت بر ثانیه یا 1 مگابایت بر ثانیه محدود کند. این دستورات در مواقعی که نمیخواهید کل پهنای باند شبکه را برای دانلود یک فایل به اشتراک بگذارید و یا تاثیر دانلود بر سایر فعالیتهای شبکه را کاهش دهید، بسیار کاربردی هستند.
دانلود در بکگراند
برای دانلود فایل در بکگراند میتوانید از پارامتر background-- یا b- استفاده کنید، به طوری که دانلود در حالت پسزمینه انجام میشود و میتوان به استفاده از ترمینال ادامه داد.
wget -b http://example.com/file.zip
دانلود و ذخیره با نامی متفاوت
برای دانلود یک فایل و ذخیره آن با نامی متفاوت میتوان از پارامتر output-document-- یا O- استفاده کرد.
wget -O newfile.zip http://example.com/oldfile.zip
در مثال بالا، فایل oldfile.zip از آدرس http://example.com/ دانلود و با نام newfile.zip ذخیره میشود.
دانلود و ذخیره در دایرکتوری مشخص
پارامتر directory-prefix-- یا P- فایل دانلود شده را در دایرکتوری مورد نظر شما ذخیره میکند.
wget -P /path/to/directory http://example.com/file.zip
در دستور بالا، file.zip دانلود شده و در مسیر /path/to/directory ذخیره میشود. البته توجه داشته باشید که مسیر دایرکتوری باید از قبل وجود داشته باشد، زیرا wget به طور خودکار آن را ایجاد نمیکند.
دانلود با استفاده از فایل متنی
برای دانلود فایلهای لیستی از URLها که در یک فایل متنی قرار دارند از پارامتر input-file-- یا i- استفاده میشود. این پارامتر فهرستی از URLها که در یک فایل متنی قرار دارند را خوانده و URLها را دانلود میکند.
wget -i urls.txt
در این دستور wget فهرست URLها را از فایل متنی به نام urls.txt میخواند و هر URL را دانلود میکند. البته توجه داشته باشید که هر URL باید در یک خط جداگانه در فایل متنی قرار داشته باشد.
دانلود با اطلاعات بیشتر
پارامتر verbose-- اطلاعات بیشتری در مورد عملیات دانلود نمایش میدهد. اطلاعاتی نظیر اطلاعات مربوط به پیشرفت دانلود، اطلاعات HTTP، وضعیت مرتبط با دریافت فایل و ... . این اطلاعات برای مشاهده جزئیات دانلود و بررسی مشکلات احتمالی میتواند مفید باشد.
wget --verbose http://example.com/file.zip
بدون دیدگاه