ෂා යනු කුමක්ද
sh
(හෝ ෂෙල් විධාන භාෂාව) යනු පොසික්ස් ප්රමිතියෙන් විස්තර කරන ක්රමලේඛන භාෂාවකි . එය බොහෝ නිර්මාණයන් ඇත ( ksh88
, dash
, ...). bash
ක්රියාත්මක කිරීමක් ලෙස ද සැලකිය හැකිය sh
(පහත බලන්න).
මන්දයත් sh
පිරිවිතරයක් මිස /bin/sh
ක්රියාත්මක කිරීමක් නොව බොහෝ POSIX පද්ධතිවල සත්ය ලෙස ක්රියාත්මක කිරීම සඳහා වන සම්බන්ධකයක් (හෝ දෘ link සබැඳියක්) වේ.
බාෂ් යනු කුමක්ද
bash
sh
අනුකූල නොවන ක්රියාත්මක කිරීමක් ලෙස ආරම්භ විය (එය වසර කිහිපයකින් පොසික්ස් ප්රමිතියට පෙරාතුව වුවද), නමුත් කාලය ගෙවී යත්ම එය බොහෝ දිගු ලබා ගෙන ඇත. මෙම දිගු වලින් බොහොමයක් වලංගු POSIX shell පිටපත් වල හැසිරීම වෙනස් කළ හැකිය, එබැවින් එයම bash
වලංගු POSIX shell එකක් නොවේ. ඒ වෙනුවට, එය පොසික්ස් ෂෙල් භාෂාවේ උපභාෂාවකි.
bash
--posix
ස්විචයකට සහය දක්වයි , එමඟින් එය වඩාත් POSIX- අනුකූල වේ. එය ආයාචනා කරන්නේ නම් POSIX අනුකරණය කිරීමට ද උත්සාහ කරයි sh
.
sh = බාෂ්?
දීර් G කාලයක් තිස්සේ බොහෝ GNU / Linux පද්ධති /bin/sh
වෙත යොමු කිරීමට /bin/bash
භාවිතා කරයි. එහි ප්රති As ලයක් වශයෙන්, මේ දෙක අතර වෙනස නොසලකා හැරීම පාහේ ආරක්ෂිත වී තිබේ. නමුත් එය මෑතකදී වෙනස් වීමට පටන් ගත්තේය.
/bin/sh
පෙන්වා නොදෙන පද්ධති සඳහා සමහර ජනප්රිය උදාහරණ /bin/bash
(සහ සමහර /bin/bash
ඒවා නොපවතින):
- Symlink නවීන ඩේබියන් හා උබුන්ටු පද්ධති,
sh
කිරීමට dash
පෙරනිමියෙන්;
- කාර්යබහුල පෙට්ටිය , සාමාන්යයෙන් ලිනක්ස් පද්ධති ඇරඹුම් කාලය තුළ ක්රියාත්මක වේ
initramfs
. එය ash
ෂෙල් ක්රියාත්මක කිරීම භාවිතා කරයි .
- BSDs සහ පොදුවේ ඕනෑම ලිනක්ස් නොවන පද්ධති.
pdksh
කෝර්න් කවචයෙන් පැවත එන OpenBSD භාවිතය . FreeBSD sh
යනු මුල් යුනික්ස් බෝර්න් කවචයෙන් පැවත එන්නකි. සොලාරිස් සතුව තමන්ගේම දෑ sh
ඇති අතර එය දීර් P කාලයක් තිස්සේ පොසික්ස් අනුකූල නොවීය. උරුමක්කාර ව්යාපෘතියෙන් නොමිලේ ක්රියාත්මක කිරීමක් ලබා ගත හැකිය .
/bin/sh
ඔබේ පද්ධතියේ ඇති කරුණු මොනවාදැයි ඔබ සොයා ගන්නේ කෙසේද ?
සංකූලතාව වන්නේ /bin/sh
එය සංකේතාත්මක සම්බන්ධකයක් හෝ දෘ link සබැඳියක් විය හැකිය. එය සංකේතාත්මක සබැඳියක් නම්, එය විසඳීමට අතේ ගෙන යා හැකි ක්රමයක් වන්නේ:
% file -h /bin/sh
/bin/sh: symbolic link to bash
එය දෘ link සබැඳියක් නම්, උත්සාහ කරන්න
% find -L /bin -samefile /bin/sh
/bin/sh
/bin/bash
ඇත්ත වශයෙන්ම, -L
ධජය සිම්ලින්ක් සහ දෘඩ සබැඳි යන දෙකම ආවරණය කරයි, නමුත් මෙම ක්රමයේ අවාසිය නම් එය අතේ ගෙන යා නොහැකි වීමයි - පොසික්ස් විකල්පයට සහය දැක්වීමට අවශ්ය නොවේ, නමුත් GNU සොයා ගැනීම සහ FreeBSD යන දෙකම එයට සහාය දක්වයි.find
-samefile
ෂෙබාං රේඛාව
අවසානයේදී, පිටපතෙහි පළමු පේළිය ලෙස «ෂෙබාං» රේඛාව ලිවීමෙන් කුමන එකක් භාවිතා කළ යුතුද යන්න තීරණය කිරීම ඔබ සතුය.
උදා
#!/bin/sh
භාවිතා කරනු ඇත sh
(සහ පෙන්වා දීමට සිදු වන ඕනෑම දෙයක්),
#!/bin/bash
/bin/bash
එය තිබේ නම් භාවිතා කරනු ඇත (සහ එය නොමැති නම් දෝෂ පණිවිඩයක් සමඟ අසමත් වේ). ඇත්ත වශයෙන්ම, ඔබට තවත් ක්රියාත්මක කිරීමක් නියම කළ හැකිය, උදා
#!/bin/dash
භාවිතා කළ යුතු එක
මගේම ස්ක්රිප්ට් සඳහා, මම sh
පහත සඳහන් හේතු සඳහා කැමැත්තෙමි :
- එය ප්රමිතිගත කර ඇත
- එය වඩාත් සරල හා ඉගෙනීමට පහසුය
- එය POSIX පද්ධති හරහා අතේ ගෙන යා හැකි ය - ඒවා නොතිබුණත් ඒවා
bash
තිබිය යුතුයsh
භාවිතා කිරීමේ වාසි bash
ද ඇත. එහි විශේෂාංග මඟින් ක්රමලේඛනය වඩාත් පහසු සහ අනෙකුත් නවීන ක්රමලේඛන භාෂාවල වැඩසටහන්කරණයට සමාන කරයි. විෂය පථයට අයත් දේශීය විචල්යයන් සහ අරා වැනි දෑ මෙයට ඇතුළත් ය. සරල sh
යනු ඉතා අවම ක්රමලේඛන භාෂාවකි.