MacãšLinuxã®ã³ãã³ãã¯åãããã§éã£ãŠãã
LinuxãšMacã¯ãã©ã¡ããUNIXç³»ã®æè¡ãå©çšããOSã§ãããæåãããããã€ãããŠããã³ãã³ãã¯ãã䌌ãŠãããããã®åäœã䌌ããããªãã®ã ããããã现ããéããå€ãããã®éšåããLinuxãšMacãäž¡æ¹äœ¿ãå Žåã«æ°ã«ãªã£ãŠããã
äŸãã°ãLinuxãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ã¯æåãããããã€ãããŠããåºæ¬çãªã³ãã³ã矀ã¯ããGNU Core Utilitiesããšããããã±ãŒãžã«ãã£ãŠæäŸãããŠããããšãå€ããã€ã³ã¹ããŒã«ãããŠããããã±ãŒãžãåãã§ãããããLinuxãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ã¯ã»ãŒåãã³ãã³ããæåãã䜿ãããšãã§ããã
äžæ¹ãMacã¯FreeBSDã®ããŒã¹ã³ãã³ããåºæ¬çãªã³ãã³ã矀ãšããŠåã蟌ãã§äœ¿ã£ãŠãããGNU Core Utilitiesã§æäŸãããŠããã³ãã³ãããFreeBSDã®ããŒã¹ã³ãã³ãããPOSIXãå®ãããšããã¯ã»ãŒåããªã®ã ããæ¡åŒµãããæ©èœãããããç°ãªã£ãŠãããã€ãŸããåãã³ãã³ãåãªã®ã ãæ¡åŒµæ©èœãç°ãªãã®ã ã
æ¬é£èŒã§ã¯ããããéããåžåããæ¹æ³ãããã€ã玹ä»ããŠãããMacçšã«æžãæããæ¹æ³ãããããHomebrewçµç±ã§GNU Core Utilitiesãã€ã³ã¹ããŒã«ããŠäœ¿ãæ¹æ³ããããLinuxãããŒã¹ã«èãããªããGNU Core Utilitiesãã€ã³ã¹ããŒã«ããŠãã¡ãã䜿ãããã«äžèº«ãæžãæããã»ãã䜿ããããã ãããããŸãè¡ãã°ãç°å¢å€æ°PATHãæžãæããã ãã§å šãŠãåé¡ãªãåãããã«ãªãã
MacãšLinuxã§åŠçãåãåãã
åãã³ãã³ããåãããã«ãããšããŠããMacãšLinuxãšã§ã¯ã»ãã«ãéãããããäŸãã°ãã¡ã€ã«ã®é 眮ããã£ã¬ã¯ããªæ§é ãLinuxãšMacã§ã¯ç°ãªã£ãŠãããåãã³ãã³ããåãããã«GNU Core UtilitiesãGNUç³»ã³ãã³ããã€ã³ã¹ããŒã«ããŠç°å¢å€æ°PATHã现工ãããšããŠãããã¹ãç°ãªã£ãŠããã°ã·ã§ã«ã¹ã¯ãªããã¯ããŸãåããªããããããªãã
ããããéãã¯UNIXç³»ã®OSã«ã¯çããããšã§ã¯ãªãã®ã§ãè€æ°ã®OSããã£ã¹ããªãã¥ãŒã·ã§ã³ã§åäœããã·ã§ã«ã¹ã¯ãªããã«ã¯ã¡ãã£ãšããâ现工âãå ¥ã£ãŠããããšãå€ããããã€ãããæ¹ã¯ããããåãåãã®åºæºãšããŠuname(1)ã³ãã³ãã䜿ãããããšãå€ãã
äŸãã°æ¬¡ã®ã¹ã¯ãªãŒã³ã·ã§ããã¯ããããmacOS MontereyãšWSL / Windows 11ã§unameã³ãã³ããå®è¡ããçµæã ããuname -aãã§é·ãæ å ±ãããuname -sãã§çãæ å ±ãåŸãããã
uname(1)ã¯OSã®æ å ±ãåºåããã³ãã³ãã ãåºåãããå 容ã¯OSããšã«ç°ãªã£ãŠããã倧æµã¯ã«ãŒãã«åãã«ãŒãã«ããŒãžã§ã³ãã«ãŒãã«ãªãªãŒã¹ãããŒããŠã§ã¢åãããã»ããµçš®é¡ãããŒããŠã§ã¢ã¢ãŒããã¯ãã£åãOSåãããŒãåãªã©ãåºåãããããªãã·ã§ã³ã-aããæå®ããããšã§ããããã®æ å ±ãå šãŠè¡šç€ºãããä»çµã¿ã«ãªã£ãŠããããšãå€ãã
macOS Montereyã§ãuname -aããå®è¡
% uname -a
Darwin Mac-mini-M1-2020.local 21.3.0 Darwin Kernel Version 21.3.0: Wed Jan 5 21:37:58 PST 2022; root:xnu-8019.80.24~20/RELEASE_ARM64_T8101 arm64
%
WSL / Windows 11ã§ãuname -aããå®è¡
$ uname -a
Linux XPS-13-9305 5.10.60.1-microsoft-standard-WSL2 #1 SMP Wed Aug 25 23:20:18 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
$
unameã³ãã³ãã¯åŒæ°ãªãããŸãã¯ãªãã·ã§ã³ã-sããæå®ãããšã«ãŒãã«ã®åç§°ã®ã¿ãåºåãããããã«ãªã£ãŠããããšãå€ããæ¬¡ã®ãããªæãã ã
macOS Montereyã§ãuname -sããå®è¡
% uname -s
Darwin
%
WSL / Windows 11ã§ãuname -sããå®è¡
$ uname -s
Linux
$
ãã®ã³ãã³ãã®åºåã§OSã®åãæ¿ããã§ãããšããããã ãã·ã§ã«ã¹ã¯ãªããã«æ¬¡ã®ãããªåãåãåŠçãå ããã°ãMacãšLinuxã§ããããç°ãªãéšåã®åŠçãåžåã§ããããã«ãªãã
MacãšLinuxã§åŠçãåãæ¿ããæžãæ¹
case $(uname -s) in
Darwin)
# Macã®åŠç
;;
Linux)
# Linuxã®åŠç
;;
*)
# ãã以å€ã®åŠç
;;
esac
LinuxãšLinuxã§åŠçãåãåãã
MacãšLinuxãšããéãã«æ¯ã¹ãã°å°ãããã®ã ããLinuxãã£ã¹ããªãã¥ãŒã·ã§ã³ã«ãçµæ§ãªéããããã䜿ã£ãŠããã³ãã³ãã¯å ±éã§ããããšãå€ãããã·ã¹ãã ã管çããããã®ã³ãã³ãã¯ãã£ã¹ããªãã¥ãŒã·ã§ã³ããšã«éã£ãŠããããé 眮ãããŠãããã¡ã€ã«ãéã£ãŠããããããã±ãŒãžç®¡çã·ã¹ãã ãç°ãªã£ãŠããããããåãLinuxã§ãã£ãŠãäžèšãšåããããªåãåããå¿ èŠã«ãªãããšãããã®ã ã
ãããªå Žåã¯ã次ã®ãããªæãã§Linuxã®äžã§ããã«åŠçãåãåãããããªåŠçãå ããã
Linuxãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ãåŠçãåãæ¿ããæžãæ¹
case $(uname -s) in
Darwin)
# Macã®åŠç
;;
Linux)
# Linuxã®åŠç
case $(cat /etc/issue 2>&1 /dev/null) in
Ubuntu*)
# Ubuntuã®åŠç
;;
*)
# ãã以å€ã®åŠç
;;
esac
;;
*)
# ãã以å€ã®åŠç
;;
esac
Linuxãã£ã¹ããªãã¥ãŒã·ã§ã³ã«ãã£ãŠã¯ãä»ã®ãã¡ã€ã«ãªã©ãåãåãã®ãã£ãããšããå¿ èŠãããããã®èŸºãã¯ãã±ãŒã¹ãã€ã±ãŒã¹ã§æžãæããå¿ èŠãããã
倧åãªã®ã¯ããªãã¹ãã·ã³ãã«ã«ããŠããããšã
OSãLinuxãã£ã¹ããªãã¥ãŒã·ã§ã³ãåãåããæ¹æ³ã¯ãããã§ãããã®ã§ãå€ãã®UNIXç³»OSã§åäœããã·ã§ã«ã¹ã¯ãªãããæžãããšã¯ã§ãããåãOSã§ãã£ãŠãããŒãžã§ã³ã«ãã£ãŠåããå€ããå¿ èŠã®ãããã®ã¯ãåãOSã§ãã€ã³ã¹ããŒã«ãããŠããããã±ãŒãžãªã©ã«ãã£ãŠåäœãå€ããå¿ èŠããããã®ãããã
ãã ããããŸãæ·±å ¥ãããŠè€éã«ããã®ã¯èããã®ã ãã·ã§ã«ã¹ã¯ãªããã¯çãã·ã³ãã«ã§èŠéãããããŠãããã»ãããåŸã§æ¥œã«ãªãããšãå€ãããã ãè€éã«ãããããšãæ°å¹ŽåŸã«èªåãæžãæããæ®µéã§é ãæ±ããããšã«ããªããããªããç¶æ³ãèŠã€ã€ããããããªãçšåºŠã«å¯Ÿå¿ãããããã«ããŠãããšãã»ã©è¯ã楜ãã§ããããã«ãªãã ãããããªãã¹ãã·ã³ãã«ã«ããŠãããââãããäžã€ã®æéã ã

