ব্যাসিবক্স একটি মোটামুটি অভিনব উপায়ে ডিজাইন করা হয়েছে যা আপনি যখন আপনার / বিন ডিরেক্টরিতে চারপাশে গুঞ্জন শুরু করেন তখন বেশ বিভ্রান্তিকর হতে পারে।
এমএসএলটাররা যেমন ইঙ্গিত করেছে, ব্যাসিবক্স কেবলমাত্র কার্যকর করা যায়। এটি এটিতে প্রতিটি "কমান্ড" এর জন্য কার্যকর করা যায় এমন প্রতীকী লিঙ্কের উপর নির্ভর করে। এটি দিয়ে যে সিমলিংকের নামটি শুরু করা হয়েছিল তা জেনে, command কমান্ডের জন্য এটি সি ফাংশনটি চালাতে জানে।
সুতরাং, আমার পপিলিনাক্স 5.2.8 লুসিড / বিন ডিরেক্টরিটির সূচনাটি দেখে মনে হচ্ছে ...
sh-4.1# ls -l
total 4889
lrwxrwxrwx 1 root root 7 2011-08-17 10:49 [ -> busybox
lrwxrwxrwx 1 root root 7 2011-08-17 10:49 [[ -> busybox
lrwxrwxrwx 1 root root 7 2011-08-17 10:49 addgroup -> busybox
lrwxrwxrwx 1 root root 7 2011-08-17 10:49 adduser -> busybox
lrwxrwxrwx 1 root root 7 2011-08-17 10:49 ash -> busybox
-rwxr-xr-x 1 root root 2844 2011-08-17 11:04 autologinroot
lrwxrwxrwx 1 root root 4 2011-08-17 10:49 awk -> gawk
lrwxrwxrwx 1 root root 7 2011-08-17 10:49 basename -> busybox
-rwxr-xr-x 1 root root 805960 2011-08-17 11:04 bash
-r-xr-xr-x 1 root root 6835 2011-01-21 01:29 bashbug
lrwxrwxrwx 1 root root 7 2011-08-17 10:49 bbconfig -> busybox
-rwxr-xr-x 1 root root 30200 2011-08-17 11:04 bunzip2
lrwxrwxrwx 1 root root 7 2011-08-17 10:49 bunzip2-BB-NOTUSED -> busybox
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 busybox
-rwxr-xr-x 1 root root 30200 2011-08-17 11:04 bzcat
lrwxrwxrwx 1 root root 7 2011-08-17 10:49 bzcat-BB-NOTUSED -> busybox
নোট করুন যে বেশিরভাগ কমান্ড হ'ল প্রতিলিঙ্ক হয় busybox
। ash
এটিতে খুব সংক্ষিপ্ত শেল অন্তর্ভুক্ত রয়েছে যা বেশিরভাগ বুট অপারেশনের সময় ব্যবহৃত হয়। এছাড়াও মনে রাখবেন বন্টন লেখক স্বতন্ত্র কমান্ড অন্তর্ভুক্ত করা বেছে নেওয়া হয়েছে bunzip2
এবং bzcat
পরিবর্তে, busybox সংস্করণ ব্যবহারের। Symlinks bunzip-BB-NOTUSED
এবং bzcat-BB-NOTUSED
সত্যিই প্রয়োজনীয় কিন্তু সাহায্যের ডকুমেন্ট কোনটা মাত্র সিমবলিক লিঙ্ক খরচ হচ্ছে না।
এও লক্ষ্য করুন যে একটি ডিরেক্টরি তালিকা যা সিমলিংকের পরিবর্তে সিমলিংকের ( ls -lL
বা ls -l --dereference
) লক্ষ্যমাত্রার জন্য মাপের প্রতিবেদন করে, প্রতিটি কমান্ডের আকারের মতোই প্রতিবেদন করবে busybox
। এই -L
বিকল্পগুলির সাথে একই তালিকাটি দেখায় ...
sh-4.1# ls -lL
total 60402
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 [
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 [[
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 addgroup
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 adduser
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 ash
-rwxr-xr-x 1 root root 2844 2011-08-17 11:04 autologinroot
-rwxr-xr-x 1 root root 317880 2011-08-17 11:04 awk
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 basename
-rwxr-xr-x 1 root root 805960 2011-08-17 11:04 bash
-r-xr-xr-x 1 root root 6835 2011-01-21 01:29 bashbug
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 bbconfig
-rwxr-xr-x 1 root root 30200 2011-08-17 11:04 bunzip2
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 bunzip2-BB-NOTUSED
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 busybox
-rwxr-xr-x 1 root root 30200 2011-08-17 11:04 bzcat
-rwxr-xr-x 1 root root 637960 2011-08-17 11:04 bzcat-BB-NOTUSED
ব্যাসিবক্সের উদ্দেশ্য হ'ল একটি সাধারণ কমান্ডের কমান্ডের জন্য মেমরি এবং ডিস্কের স্থান কমিয়ে আনার জন্য নিজের মধ্যে কোডটির সর্বাধিক পুনঃব্যবহার (যার অর্থ "পদচিহ্ন") নিজেই শেল ছাড়াই প্রয়োজন requ
বাশ এবং অন্যান্য শেল একই জিনিস সম্পাদন করে। তবে এটি করার জন্য, তারা তাদের নিজস্ব কমান্ডলাইন পরিবেশ বাস্তবায়ন করে। অনেকগুলি শেল কার্যকারিতার জন্য কিছু প্রত্নতাত্ত্বিক বাক্য গঠনের জন্য এই উদ্দেশ্যটিও একটি কারণ।
আমি বর্তমানে এই "ব্যাসিবক্স কৌশল" ব্যাশ ফাংশনগুলির একটি লাইব্রেরির জন্য ব্যবহার করছি এবং বিভিন্ন বাশমের জন্য মোড়ক ব্যবহার করা সহজ । এটি আমাকে --help
অপশন সহ সহজেই "প্রসারিত" কমান্ড দেয় এবং যখন উপলব্ধ হয় তখন জিইআইআই সংস্করণ বন্ধ করে দেয়।