“ප්‍රභවය” සහ “.” අතර වෙනස කුමක්ද?


154

ස්ක්‍රිප්ට් එකක් (උදා / සමහර / ස්ක්‍රිප්ට්) බාෂ් සමඟ source /some/scriptසහ ක්‍රියාත්මක කිරීමේදී ඇති වෙනස . /some/scriptකුමක්ද?

Answers:


138

sourceහා .තුල්යාර්ථ වේ බෑෂ් .

විධාන හුදෙක් සමාන පද සහ තවත් කිසිවක් නොවන බව තහවුරු කර ගැනීමට කැමති ඕනෑම කෙනෙකුට, ප්‍රභව කේතය දෙස බලන්න , 4.3 අනුවාදය සඳහා කියන්න, සහ ගොනුව පරීක්ෂා කරන්න builtins/source.def. සාදන ලද විධාන දෙකම ඔබ කියවනු ඇත, sourceසහ ., එකම ශ්‍රිතය භාවිතා කරන්න : source_builtin.


මෙය අර්ථ දක්වන්නේ කොහේද? මම කිව්වේ. ප්‍රභවය සඳහා අන්වර්ථයක්ද? නැතහොත් මෙය වෙනත් දෙයක්ද?
binW

හරියටම එකම දෙය

13
inbinW: .යනු පුරාණ බෝර්න් කවචයෙන් උරුම වූ සාම්ප්‍රදායික ප්‍රභව විධානයයි . sourceඑය හරියටම .කියවිය හැකි නිසා ( .කුඩා අකුරු සමඟ තනිවම හඳුනා ගැනීම දුෂ්කර විය හැක) හරියටම සමාන වන බාෂ් බිල්ඩින් ය . ඔබ දකීවි help sourceසහ help .එම තොරතුරු පෙන්වයි.
geirha

3
inbinW: ඔබ ඇතුළට man bashගොස් සොයා බැලුවහොත් එය සමාන පදයක් sourceබව ඔබට පෙනෙනු ඇත. source filename [arguments]. filename [arguments]
මැතිව් රැන්කින්

47

.යනු Bash සමඟ සමපාත sourceවන නමුත් POSIX sh හි නොවේ, එබැවින් .ඔබේ ස්ක්‍රිප්ට් / bin / sh මඟින් ක්‍රියාත්මක වන්නේ නම් ඔබ භාවිතා කළ යුතුය . / Bin / sh ලෙස හැඳින්වූ විට බාෂ් POSIX sh මෙන් ධාවනය වන බව ප්‍රකාශ කරන නමුත් sourceපැමිණිල්ලක් නොමැතිව පිළිගනී .

මෙම හැසිරීම මට දෂ්ට කර ඇත, උදාහරණයක් ලෙස අළු යට ධාවනය වන විට / bin / sh ලෙස බාෂ් සමඟ පරීක්ෂා කළ ස්ක්‍රිප්ට් අසමත් වේ.


17
POSIX කවචය සීමා නොකරයි. පොසික්ස් දැන් කියනවා; කවචය අවම වශයෙන් මෙම සහ එම අංගයට සහාය විය යුතුය. එබැවින් POSIX විසින් විස්තර කරන ලද ඒවා ක්‍රියාත්මක කරන තාක් කල් අමතර විශේෂාංග ක්‍රියාත්මක කිරීමට POSIX shell එකක් නොමිලේ. ෂෙබාං පවසන විට #!/bin/shඔබ කවදාවත් ෂෙල් එක POSIX විශේෂාංග හැර වෙනත් කිසිවක් සඳහා සහය නොදක්වන බව නොසිතිය යුතුය. pubs.opengroup.org/onlinepubs/9699919799/utilities/…
geirha

නම් බැලීමේ අනුපිළිවෙලින් ඔබට බලපෑම් ඇති විය හැකිය: unix.stackexchange.com/q/17815/8250
Lekensteyn

3
Sh බොහෝ විට ක්‍රෝන් වල භාවිතා වන බැවින් මෙම පිළිතුර මට උදව් විය.
dfrankow
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.