আমি ইতিমধ্যে এখানে জিজ্ঞাসিত প্রচুর প্রশ্নগুলি পড়ছি, তবে কোনওভাবেই আমার পক্ষে কাজ করছে না। আমার একটি বাশ স্ক্রিপ্ট রয়েছে যেখানে আমাকে পাসওয়ার্ড পাঠাতে হবে যা দূরবর্তী মেশিনে ডেটাবেস ডাম্প করে, তাই এটির মতো:
!/bin/sh
/usr/bin/ssh -p 91899 user@remoteHost mysqldump -u db_user -p#8111*@uu( my_database | gzip -c > my_database.sql.gz
এখন কথা হ'ল এই পাসওয়ার্ডে সব ধরণের বিশেষ চরিত্র রয়েছে:
#8111*@uu(
আমি যদি উপরে কমান্ডের উপরে সরাসরি চালিত করি তবে একক উদ্ধৃতিতে পাসওয়ার্ড ব্যবহার করা উচিত তবে এটি কাজ করে: যেমন।
/usr/bin/ssh -p 91899 user@remoteHost mysqldump -u db_user -p'#8111*@uu(' my_database | gzip -c > my_database.sql.gz
একক উদ্ধৃতি ব্যতীত আমি শেষ (') এর জন্য ত্রুটি পেয়েছি।
আমি পাসওয়ার্ডে অক্ষরগুলি এড়িয়ে যাওয়ার চেষ্টা করেছি:
!/bin/sh
/usr/bin/ssh -p 91899 user@remoteHost mysqldump -u db_user -p'\#8111\*\@uu(' my_database | gzip -c > my_database.sql.gz
তারপরে এটি অ্যাক্সেস অস্বীকার ত্রুটি দেয়।
আমি "উত্স" অর্থাত্ ব্যবহার করার চেষ্টা করেছি। অন্য ফাইলটিতে পাসওয়ার্ড সংরক্ষণ করা:
ফাইল পাস
MYPASSWORD='#8111*@uu('
তারপরে বাশ স্ক্রিপ্টে সেই ফাইলটি অন্তর্ভুক্ত করুন:
!/bin/sh
source pass.cre
/usr/bin/ssh -p 91899 user@remoteHost mysqldump -u db_user -p$MYPASSWORD my_database | gzip -c > my_database.sql.gz
এটি ফাইল থেকে Y MYPASSWORD পড়ার পরে আবার অবৈধ চরিত্রের ত্রুটি বলে মনে হচ্ছে।
কোন পরামর্শ আমি কী মিস করছি?