আমি একটি বাশ স্ক্রিপ্ট লিখছি যা ব্যাপকভাবে উইজেট ব্যবহার করে। সমস্ত সাধারণ পরামিতি এক জায়গায় সংজ্ঞায়িত করতে আমি সেগুলি ভেরিয়েবলগুলিতে সঞ্চয় করি। এখানে কোডের একটি অংশ রয়েছে:
useragent='--user-agent="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0"'
cookies_file="/tmp/wget-cookies.txt"
save_cookies_cmd="--save-cookies $cookies_file --keep-session-cookies"
load_cookies_cmd="--load-cookies $cookies_file --keep-session-cookies"
function mywget {
log "#!!!!!!!!!# WGET #!!!!!!!!!# wget $quiet $useragent $load_cookies_cmd $@"
wget $useragent $load_cookies_cmd "$@"
}
দুঃখজনকভাবে কাজ করছে না। কোনওভাবে আমি ভেরিয়েবল $ ইউজারেজেন্ট, $ সেভ_কুকিজ_সিএমডি, $ লোড_কুকিজ_সিএমডি এবং ক্যালিং উইজেটগুলিকে পরামিতি হিসাবে পাস করার সঠিক উপায়টি অনুপস্থিত।
আমি ফলাফল কমান্ডলাইনটি এটি হিসাবে চাই:
wget --user-agent="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0" --load-cookies /tmp/wget-cookies.txt --keep-session-cookies http://mysite.local/myfile.php
সম্পাদনা: আমার চূড়ান্ত সমাধান:
শেষ পর্যন্ত আমার স্ক্রিপ্টটি এটি সহ সঠিকভাবে কাজ করছে:
useragent="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0"
useragent_cmd="--user-agent=$useragent"
cookies_file="/tmp/wget-cookies.txt"
save_cookies_cmd="--save-cookies $cookies_file --keep-session-cookies"
load_cookies_cmd="--load-cookies $cookies_file --keep-session-cookies"
function mywget {
log "#!!!!!!!!!# WGET #!!!!!!!!!# wget $load_cookies_cmd $useragent_cmd $@"
wget $load_cookies_cmd "$useragent_cmd" "$@"
}
সব আপনার প্রতিক্রিয়ার জন্য ধন্যবাদ।