কীভাবে ব্যাশ স্ক্রিপ্টে পোস্টগ্র্যাস্কেল ব্যবহারকারী পাসওয়ার্ড সেট করবেন


12

আমি ডিফল্ট Postgresql সার্ভার ব্যবহারকারীর জন্য একটি পাসওয়ার্ড সেট করতে চাই postgres। আমি এটি ব্যবহার করে করেছি:

sudo -u postgres psql
# \password postgres

আমি অনেক মেশিনে এই পদক্ষেপটি করতে চাই, তাই আমি bashএটির জন্য একটি স্ক্রিপ্ট তৈরি করতে চাই । বাশ এ কীভাবে সম্পাদন করবেন?


উত্সাহিত করা প্রশ্নটি: সার্ভার ফল্টের অনেকগুলি প্রশ্ন ডকুমেন্টেশন, বই, ওয়েবসাইটগুলি থেকে শেখা যায় ... যে ব্যক্তি আপনাকে হ্রাস করেছে তাকে আপনাকে manআদেশটি ব্যবহার করতে শেখাবে না । man psqlভবিষ্যতে চেষ্টা নিশ্চিত করুন ।

উত্তর:


9

নথি হিসাবে আপনি --commandবিকল্পের মাধ্যমে মেটা-কমান্ডগুলি চালাতে পারেন ।

sudo -u postgres psql --command '\password postgres'

একক উদ্ধৃতি নিশ্চিত করে যে শেলটি ব্যাকস্ল্যাশকে একটি পালানোর চরিত্র হিসাবে বিবেচনা করবে না।


ধন্যবাদ, আমি ঠিক একই করেনি, কিন্তু একটি ছোটখাট পার্থক্য সঙ্গে sudo -u postgres psql --command "\password"। ভাবছি, কেন আমার প্রশ্নটি নিম্নচাপে ছিল?
saji89

@ সাজি ৯৯: এটি আমার উপন্যাস নয়, তবে আমি অনুমান করি কারণ ডকুমেন্টেশন পড়ে এটি সহজেই শিখতে পারে।
সোভেন

@ saji89 আপনি যখন ডাবল উদ্ধৃতি ব্যবহার করেন, তখন শেলটি ব্যাকস্ল্যাশকে একটি পালিয়ে যাওয়া চরিত্র হিসাবে বিবেচনা করে, অর্থাৎ পরবর্তী চরিত্রটিকে একটি বিশেষ চরিত্রের পরিবর্তে আক্ষরিক হিসাবে বিবেচনা করার নির্দেশ হিসাবে। আক্ষরিক ব্যাকস্ল্যাশ পেতে ডাবল কউউটের ভিতরে আপনাকে ব্যবহার করতে হবে "\\..."
আনসগার ওয়াইচার্স

@ অ্যাঙ্গারওয়াইচার্স, সেই সংশোধনের জন্য ধন্যবাদ। তবে মজার বিষয়টি হ'ল সেই লাইনটি আমার পক্ষে কাজ করছে। আমি gnu.org/software/bash/manual/html_node/Double-Quotes.html এ যা পড়েছি তা থেকে এটি বলেছে: The backslash retains its special meaning only when followed by one of the following characters: ‘$’, ‘`’, ‘"’, ‘\’, or newline.আমি মনে করি সে কারণেই এটি ভাল "\password"কাজ করেছে।
saji89

22

\passwordএকটি ইন্টারেক্টিভ টার্মিনাল আশা করে, যা psql কমান্ড ব্যবহার করার পরিবর্তে , আপনি ব্যবহার করতে পারেন:

ALTER USER postgres WITH PASSWORD 'newpassword';

বলুন, একটি psql -cআদেশের মাধ্যমে :

sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'newpassword';"

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.