আমি গ্রাব কনফিগারেশন ফাইলগুলি বোঝার চেষ্টা করছি। সুতরাং, এই প্রক্রিয়া চলাকালীন আমি ফাইল /etc/grub.d/40_custom নিয়ে এসেছি । আমার ফাইলটিতে নিম্নলিখিত লাইন রয়েছে:
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
menuentry "Windows 10" --class windows --class os {
insmod part_msdos
savedefault
insmod ntfs
insmod ntldr
set root='(hd0,msdos1)'
ntldr ($root)/bootmgr
}
যেহেতু আমার সিস্টেমটি দ্বৈত বুট এবং স্পষ্টতই এটি উইন্ডোজ 10 এর বুট লোডার।
আমার প্রশ্ন যদিও এই অংশ exec tail -n +3 $0।
যদি আমি এটি সঠিকভাবে ডিক্রিফার করছি তবে এর অর্থ হ'ল +3ফাইলের তৃতীয় লাইন ( ) থেকে শুরু হওয়া শেষ লাইনগুলি মুদ্রণ করা $0। $0অবশ্যই এই ক্ষেত্রে আসল ফাইল /etc/grub.d/40_custom ।
সুতরাং, আমরা কেন এই আদেশটি 40_ কাস্টম ফাইলটিতে ব্যবহার করব ? আমি যেমন এটি পেয়েছি আউটপুট একই হবে যদি এটি পুরোপুরি বাদ দেওয়া হয়। আমি কেবল ভিন্ন ভিন্ন হিসাবে ভাবতে পারি প্রথম লাইন যা দোভাষীকে সনাক্ত করে:
#!/bin/sh
তবে তারপরে আবার এটি কার্যকর করা exec tail -n +3 $0হয়। সুতরাং, এটি কি কেবল একটি (অকেজো) কনভেনশন?
#!/bin/tail -n +2শেলব্যাং হিসাবে লিখব? এটি কি ফাইলের বাকী মুদ্রণ করবে?