উবুন্টু সার্ভারে 18.04.2 এলটিএসে শেল চালানো যায় না তবে এটি উবুন্টু ডেস্কটপ 18.04 এলটিএসে চলে


0

আমি উবুন্টু ডেস্কটপে একটি শেলের সাথে কাজ করছি, আমি এটির জন্য একটি বিশদ স্পেল চেকও করেছি, তারপরে আমি এটি পরীক্ষা করেই রেখেছি এবং নিশ্চিত করেছি যে প্রতিটি এক লাইন লক্ষ্য হিসাবে কাজ করছে, কয়েকটি ডিরেক্টরি ভুল ছাড়াও (এটি পরিবর্তন করার প্রয়োজন হবে) সার্ভারে), সবকিছু ঠিক আছে বলে মনে হচ্ছে

এবং এখন আমি এটি ওবুন্টু সার্ভারের সাথে একটি পরিষ্কার ভার্চুয়াল মেশিনে চালানোর চেষ্টা করছি, তাই আমি আমার শেলটিতে অ্যাক্সেস পেতে একটি ভাগ করা ফোল্ডার লাগিয়েছি, সমস্ত ব্যবহারকারীর মৃত্যুদন্ড কার্যকর করার অনুমতি দিয়েছি, এবং এটি চালানোর চেষ্টা করেছি এবং অবাক করে দিয়েছি, এটি হয় না মোটেই চালাও

স্ক্রিপ্টটি চালানোর জন্য দোভাষীকে পেতে আমাকে প্রথম লাইন #! / বিন / বাশ মুছে ফেলতে হবে এবং শেলটি চালানোর জন্য ./ এর পরিবর্তে উত্স ব্যবহার করতে হবে (নামযুক্ত মাস্টার.শ)

এবং এখন যে আমি এটি চালাতে পারি আমি এই ত্রুটিটি পেতে থাকি

এখানে চিত্র বর্ণনা লিখুন

বিবৃতি যদি ভুল সিনট্যাক্সের জন্য একটি সাধারণ ত্রুটি , আমি জানি যে এটি আমার দ্বারা স্থির করা হয়েছে এবং বানান চেক ব্যবহার করে এটি পরীক্ষা করা হয়েছে

এর পরে আমি ইউনিক্স অক্ষর ব্যবহার করে অন্য কোনও শুদ্ধ করার চেষ্টা করেছি

এখানে চিত্র বর্ণনা লিখুন

আমি একটি বাস্তবতার জন্য জানি যে উভয় ওএসই ব্যাশকে দোভাষী হিসাবে ব্যবহার করছে (আমি যাচাই করেছি)

এখানে 2 "আইএফ শর্তাদি" কোডের একটি ন্যূনতম উদাহরণ যা আমি স্ক্রিপ্ট থামানো সনাক্ত করতে পারি, যদি কেউ এটি দেখতে চায়

#!/bin/bash
if [ -e DB_conf ]
    then
            read -p "Use DB_conf settings? [y/n]: " -n 1 -r
                if [[ $REPLY =~ ^[Yy]$ ]]
                then
                    STUFF
                else           #This is line 39
                    STUFF2 
                fi
    else        
        MORE STUFF
    fi

উবুন্টু সার্ভার কেন এই ত্রুটিটি প্রদর্শন করছে তবে ডেস্কটপটি নয় (যেখানে এটি আসলে কাজ করে)?


1
sedকমান্ড এলএফ শেষা w শ হবে সঙ্গে CRLF লাইন শেষা w শ প্রতিস্থাপনsed -i 's/\r$//' 02_master.sh
steeldriver

@ স্টিল্ড্রাইভার কেবল পরীক্ষিত sed -i 's/\r$//' 02_master.shবলে মনে হচ্ছে আসলে আমি কিছু করতে চাইছি তবে আমি সেড পেয়ে যাচ্ছি: একটি অস্থায়ী ফাইল খুলতে পারেনি //sedC35t0D: ফোল্ডারের সমস্ত স্ক্রিপ্টে chmod 777 এর পরেও অনুমতি অস্বীকার করা হয়েছে , আমি মনে করি এটির সাথে কিছু করতে হবে ভার্চুয়াল মেশিন ব্যবহারকারীর ভাগ করা ফোল্ডারের প্রকৃত মালিক হচ্ছেন না
GoatZero

উত্তর:


2

আমার কাছে দেখে মনে হচ্ছে সেড কমান্ডটির অনেক বেশি বা খুব কম / রয়েছে, আরও ভাল সেড কমান্ডের জন্য @ স্টাইলড্রাইভারের মন্তব্য দেখুন।

বিকল্পভাবে, আপনি কোনও ভিড়ের মধ্যে স্ক্রিপ্টটি খুলতে পারেন এবং [এসিএস] সহ প্রিন্টযোগ্য অক্ষরগুলি :set listদেখতে পারেন আপনার কোনও গাড়ীর রিটার্ন রয়েছে কিনা তা দেখতে। যদি এটি সমস্যা না হয় তবে ব্যাশের ত্রুটিটি সমাধান করার জন্য আমাদের আরও প্রসঙ্গে প্রয়োজন।


সম্মত - যদি vimঅপশন না হয় তবে ওপি cat -A 02_master.shলাইন-
এন্ডিংস

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