এই গাইড আপনাকে ধাপে ধাপে শিখাবে কীভাবে লিনাক্স, উইন্ডোজ বা macOS-এ কমান্ড লাইন থেকে ফাইল ডাউনলোড করতে হয় ওপেন সোর্স (ফ্রি) সফ্টওয়্যার — wget ব্যবহার করে। Wget লিনাক্স এবং UNIX এনভায়রনমেন্টের জন্য একটি খুব কুল কমান্ড-লাইন ডাউনলোডার যেটি উইন্ডোজ এবং macOS-এও পোর্ট করা হয়েছে। এটি কমান্ড লাইন টুল হলে ফlerden দাওয়া ম ولن। এটি খুব পাওয়ারফুল এবং ভার্সেটাইল এবং আজকের সেরা গ্রাফিক্যাল ডাউনলোডারদের সাথে মেলে। এতে রিসাম করা ফিচার আছে যেমন ডাউনলোড রিজিউম, ব্যান্ডউইডথ কন্ট্রোল, এটি অথেন্টিকেশন হ্যান্ডেল করতে পারে, এবং আরও অনেক কিছু। আমি wget-এর বেসিকস দিয়ে আপনাকে শুরু করাব এবং তারপর দেখাব কীভাবে আপনি আপনার ওয়েবসাইটের একটি কম্প্লিট ব্যাকআপ অটোমেট করতে পারেন wget এবং cron ব্যবহার করে।
চলুন wget ইনস্টল করে শুরু করি। অধিকাংশ লিনাক্স ডিস্ট্রিবিউশন wget প্রি-ইনস্টলড থাকে। আপনি যদি কোনো লিনাক্স মেশিন পান wget ছাড়া, নিচের চেষ্টা করুন। রেড হ্যাট লিনাক্স ভিত্তিক সিস্টেম যেমন ফেডোরা-এ আপনি ব্যবহার করতে পারেন:
# yum install wget
অথবা আপনি যদি ডেবিয়ান ভিত্তিক সিস্টেম যেমন উবুন্টু ব্যবহার করেন:
# sudo apt-get install wget
উপরের যেকোনো একটি আপনার জন্য কাজ করবে। অন্যথায়, আপনার লিনাক্স ডিস্ট্রিবিউশনের ম্যানুয়াল চেক করুন প্যাকেজ কীভাবে পাওয়া ও ইনস্টল করা যায়। উইন্ডোজ ইউজাররা এই ওয়েবসাইট থেকে wget এক্সেস করতে পারেন, এবং ম্যাক ইউজারদের জন্য আমাদের macOS-এ wget ইনস্টল করার একটি ফুল গাইড আছে।
একটি ডাউনলোড ম্যানেজার যে সবচেয়ে বেসিক অপারেশন করতে হয় সেটি হচ্ছে একটি URL থেকে ফাইল ডাউনলোড করা। এখানে wget ব্যবহার করে ফাইল ডাউনলোড করার পদ্ধতি:
# wget https://www.simplehelp.net/images/file.zip
হ্যাঁ, এটি একদম সিম্পল। এখন কিছুটা মজার কিছু করি। একটি পুরো ওয়েবসাইট ডাউনলোড করি। এখানে wget-এর পাওয়ারের একটু স্বাদ। আপনি যদি একটি ওয়েবসাইট ডাউনলোড করতে চান, আপনি স্পেসিফাই করতে পারেন wget কত গভীরে যাবে ফাইল ফেচ করার জন্য। বলুন আপনি Yahoo!-র হোম পেজের ফাস্ট লেভেল লিংকগুলো ডাউনলোড করতে চান। এখানে কীভাবে করবেন:
# wget -r -l 1 https://www.yahoo.com/
এখানে প্রতিটি অপশন কী করে। -r রিকারসিভ রিট্রিভাল অফ ফাইলস এক্টিভেট করে। -l মানে লেভেল, এবং এর পাশের নম্বর 1 wget-কে বলে কত লেভেল ডিপ যাবে ফাইল ফেচ করার সময়। লেভেলের নম্বর দুই করুন এবং দেখুন wget কত বেশি টাইম নেয়।
এখন আপনি যদি একটি ওয়েবসাইট থেকে সকল "jpeg" ইমেজ ডাউনলোড করতে চান, লিনাক্স কমান্ড লাইনसे পরিচিত একটি ইউজার حدস করতে পারে "wget https://www.sevenacross.com*.jpeg" এর মত কমান্ড কাজ করবে। দুর্ভাগ্যবশত, এটি কাজ করবে না। আপনাকে এমন কিছু করতে হবে:
# wget -r -l1 –no-parent -A.jpeg https://www.yahoo.com
wget-এ আরেকটি খুব উপকারী অপশন হচ্ছে ডাউনলোড রিজিউম। বলুন আপনি একটি বড় ফাইল ডাউনলোড শুরু করলেন এবং ডাউনলোড কমপ্লিট হওয়ার আগে আপনার ইন্টারনেট কানেকশন হারিয়ে ফেললেন। আপনি -c অপশন ব্যবহার করে আপনার ডাউনলোড वहाँ থেকে কন্টিনিউ করতে পারেন যেখান থেকে আপনি ছেড়ে দিয়েছিলেন।
# wget -c https://www.example_url.com/ubuntu-live.iso
এখন চলুন একটি ওয়েবসাইটের ডেইলি ব্যাকআপ সেট আপ করার দিকে যাই। নিচের কমান্ডটি আপনার লোকাল ডিস্কে একটি সাইটের মিরর তৈরি করবে। এই উদ্দেশ্যে wget-এ একটি স্পেসিফিক অপশন আছে, –mirror। নিচের কমান্ডটি ট্রাই করুন, sevenacross.com-কে আপনার ওয়েবসাইটের অ্যাড্রেস দিয়ে রিপ্লেস করে।
# wget –mirror https://www.sevenacross.com/
কমান্ডটি রানিং শেষ হলে আপনার লোকাল ডিস্কে আপনার ওয়েবসাইটের একটি মিরর থাকবে। এটি ব্যাকআপের জন্য একটি খুব হ্যান্ডি টুল। এখন এই কমান্ডকে একটি কুল শেল স্ক্রিপ্টে রূপান্তর করি এবং এটিকে প্রতিরাত মিডনাইটে রান করার জন্য শিডিউল করি। আপনার প্রিয় টেক্সট এডিটর খুলুন এবং নিচের টেক্সট টাইপ করুন। আপনার প্রয়োজন অনুযায়ী ব্যাকআপ পথ এবং ওয়েবসাইট URL অ্যাডাপ্ট করুন মনে রাখবেন।
#!/bin/bash
YEAR=`date +”%Y”`
MONTH=`date +”%m”`
DAY=`date +”%d”`BACKUP_PATH=`/home/backup/` # replace path with your backup directory
WEBSITE_URL=`https://www.sevenacross.net` # replace url with the address of the website you want to backup# Create and move to backup directory
cd $BACKUP_PARENT_DIR/$YEAR/$MONTH
mkdir $DAY
cd $DAYwget –mirror ${WEBSITE_URL}
এখন এই ফাইলটি কিছু কিনো website_backup.sh হিসেবে সেভ করুন এবং এক্সিকিউটেবল পারমিশন দিন:
# chmod +x website_backup.sh
আপনার cron কনফিগারেশন crontab কমান্ড দিয়ে খুলুন এবং নিচের লাইনটি শেষে যোগ করুন:
0 0 * * * /path/to/website_backup.sh
আপনার /home/backup/YEAR/MONTH/DAY-এ আপনার ওয়েবসাইটের একটি কপি থাকবে প্রতিদিন। cron এবং crontab ব্যবহার করার আরও সাহায্যের জন্য, এই টিউটোরিয়াল দেখুন।
এখন আপনি কমান্ড লাইন থেকে ফাইল ডাউনলোড করার বেসিকস জানলেন, আপনি wget-এর ম্যান পেজ পড়ে অ্যাডভান্সড স্টাফে যেতে পারেন — শুধু কমান্ড লাইন থেকে man wget টাইপ করুন।