আমি আইসডব্লিউএম-এরusr/share/applications
জন্য একটি মেনু তৈরি করতে / ফাইল পড়তে বাশ স্ক্রিপ্ট তৈরি করছি । এখানে আমার কোডের কয়েকটি:
file = nm-connection-editor.desktop
name = $((grep -m 1 "Name=" $file) | sed 's/Name=//g')
icon = $ ((grep Icon= $file) | sed 's/Icon=//g')
execu = $ ((grep -m 1 Exec= $file) | sed 's/Exec=//g')
commandline = "prog $name $icon $execu"
cate = $(grep -m 1 Categories $file)
echo $cate result in:
Categories=GNOME;GTK;Settings;X-GNOME-NetworkSettings;
if [ $(echo $cate |grep Network) ]; then echo $commandline >> menu.Network; fi
if [ $(echo $cate |grep Settings) ]; then echo $commandline >> menu.Settings; fi
সমস্যাটি $commandline
উভয় বিভাগে প্রদর্শিত হয়।
আমি এটি কেবল সেটিংসে প্রদর্শিত হতে চাই
আমি শব্দের একটি তালিকাতে ভাবি: গেমস নেটওয়ার্ক ইউটিলিটি সেটিংস অফিস সিস্টেম ...
এবং $cate
লাইনের শুরুতে সবচেয়ে কাছেরটি (থেকে ) নির্বাচন করুন , তবে কীভাবে?
প্রদত্ত কোডটিতে সিনট্যাক্স ত্রুটি রয়েছে - অ্যাসাইনমেন্টের মধ্যে ফাঁকা স্থান, যদি স্টেটমেন্টগুলিতে ব্র্যাকেটের আগে ফাঁকের অভাব থাকে। সম্ভবত এটিতে আটকানো ত্রুটির কারণে, তবে এটি পরীক্ষা করার জন্য এটি আরও কাজ করে।
—
আর্গনাউটস
| গ্রেপ নেটওয়ার্ক থেকে | গ্রেপ নেটওয়ার্ক | থেকে শেষ লাইনে এই বিভাগটি সংশোধন করার চেষ্টা করুন grep -v "$ কমান্ডলাইন"
—
আর্গনোট
নির্দিষ্ট ইনপুট সরবরাহ করতে পারে (আপনার কোডের প্রাথমিক অ্যাসাইনমেন্টগুলিতে আপনি কী মানগুলি পান) এবং আউটপুটটি আপনি কী চান তা প্রদান করতে পারে (হুবহু)। আপনার প্রদত্ত স্পষ্টতা আমাকে এটিকে কম বোঝে; আমি মনে করি একটি ভাষার বাধা আছে। এছাড়াও, আপনি যদি কোডটি চালাচ্ছেন তবে আপনি কিছু খারাপ ডেটা পাবেন-স্পেসগুলি অপসারণ করতে হবে যেমন ব্যবহার করুন: আইকন = $ ((... নয়: আইকন = $ ((...
—
আর্গনোটস
আসলে, স্পেসগুলি সম্পর্কিত ফিক্সটিকে উপেক্ষা করুন। পুরো বিবৃতি ত্রুটিযুক্ত। এটি অন্যান্য অনেক সমস্যার মধ্যে গ্রেপ থেকে ফলাফলটি কার্যকর করার চেষ্টা করবে to
—
আর্গনাউটস
elif
আপনার দ্বিতীয়টির জন্য একটি ব্যবহার করতে পারেনif
? এই ভাবেNetworkSettings
উভয় লাইনের সাথে মেলে না