প্রশ্ন যদি এটি pasted কমান্ডের প্রথম অক্ষর হয় তবে ডলার চিহ্নটি সরান


শেল কমান্ডের উদাহরণ দেওয়ার সময় লোকেরা প্রায়শই প্রতিটি লাইনকে উপসর্গ করে $ এটা টার্মিনালে স্থাপিত উচিত ব্যাখ্যা করা। সম্প্রতি আমি এটা সম্মুখীন এই গীথুব পৃষ্ঠা

$ sudo apt-get install curl netcat-openbsd bc pv
$ wget https://raw.githubusercontent.com/neutronth/speedtest-lite/master/speedtest-lite

যখন এই লাইন ট্রিপল হয় ডলার চিহ্ন ক্লিক করে (যে লাইন অংশ হচ্ছে) অবশ্যই কোর্সের অংশ। আমার টার্মিনাল সেট করার একটি উপায় আছে (আমি টার্মিনেটর ব্যবহার করছি) যাতে যদি $ একটি আদেশের প্রথম চরিত্র, এটা উপেক্ষা করা?


2
2018-05-18 00:13


উত্স


শুধু আমি এই কাজটি সম্পন্ন করতে একটি উপনাম করতে পারে বুঝতে পেরেছি। তবে আমি জানতে চাই যে কীভাবে আমি আরো একটি "অফিসিয়াল" উপায় আছে যা আমি একটি কার্যকারিতা হিসাবে বিবেচনা করব - mhopkins321
আপনি প্রেস করতে পারেন ^X^E আপনার কমান্ডলাইনটি আপনার ডিফল্ট টেক্সট এডিটর খুলতে (সাথে সেট করুন EDITOR পরিবেশ পরিবর্তনশীল)। আপনি তারপর নির্বাহ করার আগে স্বাদ সম্পাদনা করতে পারেন। উদাহরণস্বরূপ, ইন vim, টেক্সট পেস্ট করুন, এবং আপনি ব্যবহার করতে পারেন :s/^$// প্রতিটি লাইন থেকে ডলারের উপসর্গ অপসারণ করতে। - DopeGhoti
আমি মনে করি মানুষকে শুধু পেস্ট কমান্ডগুলি অনুলিপি করা উচিত নয়, ব্যক্তিগতভাবে ... এটি নিজে নিজে টেনে তুলতে সবসময় নিরাপদ, এটি আপনাকে কী করছেন এবং এটির কারণে কী ঘটতে পারে সে সম্পর্কে চিন্তা করতে সহায়তা করে।


উত্তর:


আমি এই প্রশ্নের উত্তর দিতে সেট আউট, এবং তারপর আমি চিন্তা কিছুটা জড়িত আউট পরিণত। সামান্য বিশ ম্যাজিক সঙ্গে:

    cat file | while read x; do OUTPUT=$(echo $x | sed 's/^.//'); eval $OUTPUT; done

এটি কী করে প্রিন্ট ফাইলটিকে আউটপুট প্রিন্ট করে, প্রতিটি লাইন পড়ে, প্রথম অক্ষরটি মুছে ফেলে এবং ফলাফলটি $ OUTPUT এ সঞ্চয় করে, তারপর Eval এর সাথে কমান্ড হিসাবে $ OUTPUT তে লাইন চালায়। Eval ব্যবহার করার সময় সতর্ক থাকুন, এই স্ক্রিপ্ট কমান্ড হিসাবে একটি সম্পূর্ণ ফাইল চালানো হবে।


2
2018-05-18 02:22