دستور Wget چیست؟ آموزش کامل نصب + مثال کاربردی

Wget یک ابزار خط فرمان است که به شما این امکان را میدهد تا فایلها را به طور مستقیم از اینترنت در دایرکتوری فعال خود دانلود کنید. این دستور در پسزمینه اجرا میشود و به شما اجازه میدهد تا حتی اگر آنلاین نباشید، به انجام کارهای دیگر بپردازید. نام این ابزار ترکیبی از عبارت “World Wide Web” (وب جهانی) و کلمه “get” (دریافت) است. Wget از دانلود فایلها از طریق پروتکلهای FTP، SFTP، HTTP و HTTPS پشتیبانی میکند.
Wget به زبان C نوشته شده که قابل حمل است، به این معنی که میتوان آن را روی هر سیستم یونیکس استفاده کرد. علاوه بر این، این ابزار میتواند روی سیستمعاملهای مختلفی مانند Mac OS X، Microsoft Windows، AmigaOS و دیگر پلتفرمهای محبوب نیز اجرا شود.
چگونه wget را نصب کنیم؟
برای نمایش دستور wget، ما از سیستم Ubuntu 22.04 استفاده میکنیم. اما این دستور بر روی هر توزیع دیگری از لینوکس قابل اجرا است.
ابتدا از طریق SSH به سرور خود متصل شوید:
ssh user@your_server_ip -port
برای نصب wget روی Ubuntu 22.04، دستور زیر را وارد کنید:
sudo apt-get install wget
برای نصب wget روی CentOS 9 Stream یا توزیعهای قبلی آن، از دستور زیر استفاده کنید:
sudo yum install wget
پس از اتمام نصب، شما آماده استفاده از آن هستید. همچنین، آشنایی با دستورات پایه SSH میتواند کار شما را سادهتر کند.
نمونههایی از دستورات wget
برای شروع، ما ۱۲ مثال از دستور wget را ارائه میدهیم که میتوانید از آنها برای انجام کارهای روزمره استفاده کنید. به یاد داشته باشید که میتوانید این دستور را از طریق اسکریپتها و وظایف cron نیز فراخوانی کنید!
استفاده از دستور wget برای دانلود یک فایل
یکی از سادهترین مثالهای دستور wget، دانلود یک فایل و ذخیره آن در دایرکتوری کاری فعلی شماست. به عنوان مثال، برای دریافت آخرین نسخه وردپرس، میتوانید از دستور زیر استفاده کنید:
wget https://wordpress.org/latest.zip
خروجی و نتیجه ای که خواهید دید:
--2018-02-23 12:53:10-- https://wordpress.org/latest.zip
Resolving wordpress.org (wordpress.org)... 198.143.164.252
Connecting to wordpress.org (wordpress.org)|198.143.164.252|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9332728 (8.9M) [application/zip]
Saving to: 'latest.zip'
latest.zip 100%[===================>] 8,90M 6,88MB/s in 1.3s
2018-02-23 12:53:14 (6.88 MB/s) - 'latest.zip' saved [9332728/9332728]
در این مثال، فایلی به نام latest.zip در دایرکتوری کاری فعلی شما دانلود خواهد شد. همچنین اطلاعات اضافی مانند پیشرفت دانلود، سرعت، اندازه، زمان و تاریخ نمایش داده میشود.
استفاده از دستور wget برای دانلود چندین فایل
ما میتوانیم از دستور wget برای دانلود چندین فایل به طور همزمان استفاده کنیم. برای این کار، نیاز به ایجاد یک فایل متنی داریم که URLهای دانلود در آن قرار داده شوند. در این مثال، ما نسخه آخر وردپرس، جوملا و دروپال را دانلود خواهیم کرد:
nano example.txt
این دستور یک فایل به نام example.txt ایجاد کرده و آن را در ویرایشگر متنی باز میکند. لینکهای زیر را در آن قرار دهید:
https://wordpress.org/latest.zip
https://downloads.joomla.org/cms/joomla3/3-8-5/Joomla_3-8-5-Stable-Full_Package.zip
https://ftp.drupal.org/files/projects/drupal-8.4.5.zip
پس از آن، با استفاده از دستور زیر میتوانید تمامی فایلها را دانلود کنید:
wget -i example.txt
منتظر بمانید تا فرایند تمام شود و سه سیستم مدیریت محتوای پرطرفدار را دریافت کنید.
استفاده از دستور wget برای دانلود با نامهای متفاوت
در این مثال، میخواهیم فایل را با نام متفاوتی ذخیره کنیم. از گزینه -O برای این کار استفاده میکنیم:
wget -O wordpress-install.zip https://wordpress.org/latest.zip
در این حالت، فایل دانلود شده به جای نام اصلی خود به نام wordpress-install.zip ذخیره میشود.
استفاده از دستور wget برای ذخیره فایلها در مسیر خاص
شما میتوانید از wget برای ذخیره فایلها در دایرکتوری دیگری استفاده کنید. برای این کار از عبارت -P استفاده میکنیم:
wget -P documents/archives/ https://wordpress.org/latest.zip
فایلی که با این دستور دریافت میشود در پوشه documents/archives/ قرار خواهد گرفت.
استفاده از دستور wget برای محدود کردن سرعت دانلود
با استفاده از دستور wget، شما میتوانید سرعت دانلود را محدود کنید. این ویژگی زمانی کاربرد دارد که قصد دانلود فایلهای بسیار بزرگ را دارید تا از استفاده بیش از حد پهنای باند جلوگیری شود. به عنوان مثال برای محدود کردن سرعت دانلود به ۵۰۰ کیلوبیت در ثانیه، میتوانید از دستور زیر استفاده کنید:
wget --limit-rate=500k https://wordpress.org/latest.zip
استفاده از دستور wget برای تنظیم تعداد تلاشهای مجدد
ممکن است مشکل اتصال اینترنتی باعث قطع شدن دانلود شما شود. برای حل این مشکل، میتوانیم تعداد تلاشهای مجدد را با استفاده از عبارت -tries افزایش دهیم:
wget -tries=100 https://wordpress.org/latest.zip
استفاده از دستور wget برای دانلود در پسزمینه
برای دانلود فایلهای بسیار بزرگ، میتوانید از عبارت -b استفاده کنید تا فایلها در پسزمینه دانلود شوند.
wget -b http://example.com/beefy-file.tar.gz
یک فایل به نام wget-log در دایرکتوری کاری شما ایجاد خواهد شد که میتوانید برای بررسی پیشرفت و وضعیت دانلود از آن استفاده کنید. برای مشاهده محتویات آن میتوانید از دستور tail استفاده کنید:
tail -f wget-log
استفاده از دستور wget برای دانلود از طریق FTP
دستور wget قابل استفاده برای دانلود از طریق FTP است. کافیست نام کاربری و کلمه عبور را مانند مثال زیر وارد کنید:
wget --ftp-user=YOUR_USERNAME --ftp-password=YOUR_PASSWORD ftp://example.com/something.tar
استفاده از دستور wget برای ادامه دانلودهای قطع شده
اگر دانلود شما قطع شود، میتوانید آن را با استفاده از عبارت -c ادامه دهید:
wget -c https://example/very-big-file.zip
اگر بدون عبارت -c ادامه دهید، فایل جدید با پسوند .1 ذخیره خواهد شد.
استفاده از دستور wget برای دانلود کل سایتها
شما میتوانید از دستور wget برای دانلود محتوای یک سایت به طور کامل استفاده کنید. این کار به شما اجازه میدهد که سایت را به صورت آفلاین مشاهده کنید. مثال زیر را مشاهده کنید:
wget --mirror --convert-links --page-requisites --no-parent -P documents/websites/ https://some-website.com
نتیجهگیری
با استفاده از دستور wget میتوانید به راحتی و به صورت مؤثر فایلها را از اینترنت دانلود کنید، حتی در شرایطی که نیاز به ادامه دانلودهای قطع شده یا دانلود در پسزمینه داشته باشید. این دستور ابزار قدرتمندی است که میتواند برای دانلود فایلهای تکی، چندگانه، وبسایتها یا حتی یافتن لینکهای خراب در یک سایت کاربرد داشته باشد. شما با یادگیری امکانات مختلف آن از جمله محدود کردن سرعت دانلود، تغییر نام فایلها و ذخیرهسازی در دایرکتوریهای مختلف، به یک کاربر حرفهای تبدیل خواهید شد. آشنایی با این ابزار میتواند روند کار شما را در پروژههای مختلف بسیار سادهتر و کارآمدتر کند. اگر تاکنون از wget استفاده نکردهاید، پیشنهاد میکنیم که آن را در پروژههای آینده خود امتحان کنید و از قابلیتهای منحصر به فرد آن بهرهبرداری کنید.



