Macã¿ãŒããã«ã³ãã³ã究極ã¬ã€ã
éçºãå§ãããšæåã«åºäŒããã®ã®äžã€ããé»ãç»é¢ã«çœãæåãç¹æ» ãããåšå§çãªã¿ãŒããã«ã§ããæåã¯å§åããããããããŸããããã¿ãŒããã«ã¯èŠãç®ã»ã©é£ãããããŸãããå®éãéçºã¯ãŒã¯ãããŒãã¯ããã«å¹ççã«ããŠããã匷åãªããŒã«ãªã®ã§ãã
ã¿ãŒããã«ã¯ãããªããšã³ã³ãã¥ãŒã¿ãšã®éã®ã³ãã¥ãã±ãŒã·ã§ã³ã®ããã®ã€ã³ã¿ãŒãã§ãŒã¹ã§ããããŠã¹ã䜿ã代ããã«ãããŒããŒãã ãã§æ§ã ãªã¿ã¹ã¯ãå®è¡ã§ããŸããã³ãŒããæžããŠããªããŠããã¿ãŒããã«ã¯éåžžã«åœ¹ç«ã¡ãŸããMacã®ã¿ãŒããã«ã¯Unixã©ã€ã¯ãªãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãããŒã¹ã«ããŠãããããLinuxãä»ã®Unixã·ã¹ãã ã®ã³ãã³ããšéåžžã«ãã䌌ãŠããŸãã
CLIïŒã³ãã³ãã©ã€ã³ã€ã³ã¿ãŒãã§ãŒã¹ïŒãšGUIïŒã°ã©ãã£ã«ã«ãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ïŒã®éããçè§£ãããšãã¿ãŒããã«ã䜿ãå©ç¹ãããããããŸããGUIãããŠã¹ã¯ãªãã¯ã«äŸåããã®ã«å¯ŸããCLIã¯ããã¹ãã³ãã³ãã䜿ã£ãŠã³ã³ãã¥ãŒã¿ãšå¯Ÿè©±ããããšãã§ããŸããCLIã¯æåã¯éŠŽæã¿ããªããããããŸããããäžåºŠæ £ããŠããŸãã°ãããéããããæ£ç¢ºã«æäœã§ããããšãå€ãã§ãã
åºæ¬ã³ãã³ãããã¹ã¿ãŒãã
ãŸãã¯ãã¿ãŒããã«ã®åå¿è ãšããŠç¥ã£ãŠããã¹ãå¿ é ã³ãã³ãããå§ããŸããããããããèŠããã°ããã¡ã€ã«ã®ç®¡çãåºæ¬çãªã¿ã¹ã¯ãç°¡åã«è¡ãããšãã§ããŸãã
çŸåšäœçœ®ã®ç¢ºèª
pwd (Print Working Directory)
pwd
ãã®ã³ãã³ãã¯ãçŸåšã®ãã£ã¬ã¯ããªã衚瀺ããŸããã¿ãŒããã«ãéããšãéåžžã¯ããŒã ãã£ã¬ã¯ããªïŒ/Users/ããªãã®ãŠãŒã¶ãŒåïŒããå§ãŸããŸããpwdã䜿ã£ãŠãçŸåšã®å Žæã確èªããŸãããã
ãã¡ã€ã«ãšãã©ã«ãã®ãªã¹ã衚瀺
ls (List)
ls # åºæ¬çãªãªã¹ãã衚瀺
ls -a # é ããã¡ã€ã«ãå«ããŠè¡šç€º
ls -l # 詳现æ
å ±ã衚瀺
ls -al # äž¡æ¹ã®ãªãã·ã§ã³ãçµã¿åããã
ãã®ã³ãã³ãã¯ãçŸåšã®ãã£ã¬ã¯ããªã®å 容ã衚瀺ããŸãããªãã·ã§ã³ã远å ããããšã§ãããè©³çŽ°ãªæ å ±ã衚瀺ããããé ããã¡ã€ã«ãå«ãããããããšãã§ããŸãã
ãã£ã¬ã¯ããªéã®ç§»å
cd (Change Directory)
cd Desktop # Desktopãã©ã«ãã«ç§»å
cd .. # äžã€äžã®ãã£ã¬ã¯ããªã«ç§»å
cd ~ # ããŒã ãã£ã¬ã¯ããªã«æ»ã
cd - # çŽåã®ãã£ã¬ã¯ããªã«æ»ã
ãã©ã«ãéã®ç§»åã¯ãç¹ã«ãããžã§ã¯ããã©ã«ãã§äœæ¥ããéã«ãéçºäžæãé »ç¹ã«è¡ãã¿ã¹ã¯ã®äžã€ã§ãã
ãã©ã«ããšãã¡ã€ã«ã®äœæ
mkdir (Make Directory)
mkdir my_project # ãã©ã«ããäœæ
mkdir -p project/src # ãã¹ããããã©ã«ããäžåºŠã«äœæ
touch
touch index.html # ãã¡ã€ã«ãäœæ
touch style.css app.js # è€æ°ã®ãã¡ã€ã«ãäžåºŠã«äœæ
ãããã®ã³ãã³ãã¯ãæ°ãããããžã§ã¯ãã®æ§é ãèšå®ãããããã¡ã€ã«ãåæåãããããéã«äŸ¿å©ã§ãã
ãã¡ã€ã«å 容ã®ç·šéãšè¡šç€º
vi (Vim Editor)
vi filename.txt
Vimã䜿ããšãã¿ãŒããã«å ã§çŽæ¥ãã¡ã€ã«ãç·šéã§ããŸããå§ããããã®åºæ¬çãªã·ã§ãŒãã«ãããããã€ã玹ä»ããŸãã
i: ç·šéã¢ãŒãã«å ¥ãEsc: ã³ãã³ãã¢ãŒãã«æ»ã:wq: ä¿åããŠçµäº:q!: ä¿åããã«çµäº
cat (Concatenate)
cat README.md # ãã¡ã€ã«ã®å
容ã衚瀺
cat file1.txt file2.txt # è€æ°ã®ãã¡ã€ã«ã®å
容ãäžåºŠã«è¡šç€º
ãã¡ã€ã«ãšãã©ã«ãã®åé€
rm (Remove)
rm filename.txt # ãã¡ã€ã«ãåé€
rm -r foldername # ãã©ã«ããšãã®äžèº«ãåé€
rm -i filename.txt # åé€åã«ç¢ºèªãæ±ãã
â ïž æ³šæ: rm -rf ã³ãã³ãã¯éåžžã«åŒ·åã§ãæå®ãããã£ã¬ã¯ããªå
ã®ãã¹ãŠãåé€ã§ããŠããŸããŸãã䜿çšããåã«ã¯å¿
ããã¹ãå確èªããŠãã ããïŒ
䟿å©ãªãŠãŒãã£ãªãã£ã³ãã³ã
clear
clear
ã¿ãŒããã«ç»é¢ããããã«ããçŸåšã®ã¿ã¹ã¯ã«éäžããããããŸãã
history
history
以åã«äœ¿çšããã³ãã³ãã®ãªã¹ãã衚瀺ããŸããéå»ã®ã³ãã³ããåå©çšãããåç §ãããããã®ã«åœ¹ç«ã¡ãŸãã
man (Manual)
man ls # lsã³ãã³ãã®ããã¥ã¢ã«ã衚瀺
man mkdir # mkdirã³ãã³ãã®ããã¥ã¢ã«ã衚瀺
ã³ãã³ãã®è©³çްãªäœ¿ç𿹿³ãæäŸããŸããqããŒãæŒããšããã¥ã¢ã«ãçµäºã§ããŸãã
which
which node # Node.jsã®ã€ã³ã¹ããŒã«ãã¹ãæ€çŽ¢
which python # Pythonã®ã€ã³ã¹ããŒã«ãã¹ãæ€çŽ¢
ãã®ã³ãã³ãã¯ãããã°ã©ã ãã·ã¹ãã äžã®ã©ãã«ã€ã³ã¹ããŒã«ãããŠããããèŠã€ããããã«äœ¿çšããŸãã
é«åºŠãªã³ãã³ãã§ã¬ãã«ã¢ãã
åºæ¬ã«æ £ããããã¯ãŒã¯ãããŒãæé©åããããã·ã¹ãã èšå®ã調æŽãããããããã«ãããé«åºŠãªæ©èœãæ¢æ±ããŠã¿ãŸãããã
é ããã¡ã€ã«ã®è¡šç€º
defaults write com.apple.finder AppleShowAllFiles -bool TRUE && killall Finder
Macã¯ããã©ã«ãã§ã·ã¹ãã ãã¡ã€ã«ãèšå®ãã¡ã€ã«ãé ããŠããŸãããã®ã³ãã³ãã䜿ããšãFinderã§.gitignoreã.envã®ãããªé ããã¡ã€ã«ã衚瀺ã§ããŸãã
ãã©ã«ãå 容ã®ã³ããŒ
ditto -V ~/source/folder/ ~/new/folder/
ãã®ã³ãã³ãã¯ããã©ã«ãæ§é ãšå 容ã®äž¡æ¹ãã³ããŒããããããããžã§ã¯ããã³ãã¬ãŒããè€è£œããããããã¯ã¢ãããäœæãããããã®ã«æé©ã§ãã
ã¹ã¯ãªãŒã³ã·ã§ãã圢åŒã®å€æŽ
defaults write com.apple.screencapture type jpg && killall SystemUIServer
Macã®ããã©ã«ãã®ã¹ã¯ãªãŒã³ã·ã§ãã圢åŒã¯PNGã§ããããã®ã³ãã³ãã§JPGã«å€æŽããŠå®¹éãç¯çŽã§ããŸãã
ã¹ãªãŒãã¢ãŒãã®ç¡å¹å
caffeinate
ããŠã³ããŒãããµãŒããŒæäœã®ãããªé·æéã®ã¿ã¹ã¯äžã«Macãã¹ãªãŒãããã®ãé²ããŸããäžæã®ãªãäœæ¥ã»ãã·ã§ã³ã«æé©ã§ãã
èªååèµ·åã®æå¹å
sudo systemsetup -setrestartfreeze on
MacãããªãŒãºããå Žåã«èªåçã«åèµ·åããããã«èšå®ããŸããéçºãã·ã³ã®å®å®æ§ã確ä¿ããã®ã«äŸ¿å©ãªèšå®ã§ãã
ã¿ãŒããã«ããã«ãªãããã®ãã³ã
ã¿ãŒããã«ããã广çã«äœ¿ãããã®å®è·µçãªãã³ããããã€ã玹ä»ããŸãã
ãªãŒãã³ã³ããªãŒãã䜿ã
TabããŒãæŒããšãã³ãã³ãããã¡ã€ã«åãèªåè£å®ã§ããŸããé·ããã¡ã€ã«åãæ±ãéã«ã¯éåžžã«åœ¹ç«ã¡ãŸãã
以åã®ã³ãã³ããåå©çšãã
äžç¢å°ããŒã䜿ã£ãŠã³ãã³ãå±¥æŽãã¹ã¯ããŒã«ã§ããŸããå埩çãªã¿ã¹ã¯ã«ãããŠãå€§å¹ ãªæéç¯çŽã«ãªããŸãã
è€æ°ã®ã³ãã³ããäžåºŠã«å®è¡ãã
mkdir new_project && cd new_project && touch index.html
&&æŒç®åã䜿ããšãè€æ°ã®ã³ãã³ããé£çµããŠé çªã«å®è¡ã§ããŸãã
ãšã€ãªã¢ã¹ã®èšå®
ãã䜿ãã³ãã³ãã«ã·ã§ãŒãã«ãããäœæããŸãã
alias ll='ls -al'
alias proj='cd ~/Documents/projects'
ã¿ãŒããã«ãå®å šã«äœ¿ãããã«
ã¿ãŒããã«ã¯åŒ·åãªããŒã«ã§ãããæ³šæãå¿ èŠã§ããããã«äžå¯æ¬ ãªå®å šã®ããã®ãã³ããããã€ãæããŸãã
- åé€ã³ãã³ãã«ã¯æ³šæ:
rm -rfã®ãããªã³ãã³ãã¯å ã«æ»ããªãã®ã§ãå®è¡ããåã«ãã確èªããŠãã ããã - Sudoã¯æ
éã«äœ¿ã:
sudoã¯ã·ã¹ãã ã¬ãã«ã®æš©éãä»äžãããããä¿¡é Œã§ããã³ãã³ãã«ã®ã¿äœ¿çšããŠãã ããã - ãã¹ã確èªãã: ã³ãã³ããå®è¡ããåã«ãå¿
ã
pwdãå®è¡ããŠçŸåšäœçœ®ã確èªããŠãã ããã - éèŠãªãã¡ã€ã«ãããã¯ã¢ãããã: éèŠãªãã¡ã€ã«ã¯å®æçã«ããã¯ã¢ãããããŠããããšã確èªããŠãã ããã
次ã¯äœãããŸããïŒ
åºæ¬ããã¹ã¿ãŒããä»ãç¥èãåºããæãæ¥ãŸãããããŒãžã§ã³ç®¡çã®ããã®Gitã³ãã³ããåŠãã ããHomebrewãã€ã³ã¹ããŒã«ããŠéçºããŒã«ã管çããããNode.jsãPythonã§ããã°ã©ãã³ã°ã«æ·±ã没é ãããããŠã¿ãŸãããããããã®æ°ããã¹ãã«ãç·Žç¿ããããã«ãå°ããªãããžã§ã¯ããå§ããŠã¿ãŠãã ããã
ã¿ãŒããã«ã¯æåã¯åšå§çã«æãããããããŸãããã宿çã«äœ¿çšããããšã§ãã¯ãŒã¯ãããŒã«äžå¯æ¬ ãªéšåãšãªãã§ããããéçºè
ãšããŠæé·ããã«ã€ããŠãã¿ãŒããã«ã®ã¹ãã«ã¯æåã«ãããŠéèŠãªåœ¹å²ãæãããŸããäžæ©ãã€é²ãã§ãå©ããå¿
èŠãªãšãã¯ãã€ã§ãmanã³ãã³ãã䜿ãããšããããããªãã§ãã ããïŒ