삼년 가까이 회사에서 제공해준 맥북을 퍼스트피씨로 사용하고 그외 피씨들은 사용을 하지 않다가, 세컨드 윈도 피씨에 새롭게 환경을 구축하고 적용하려고 하니 소소하게 이것저것 손볼 것들이 조금씩 있다.
NFC - NFD
맥과 기타 다른 운영체제는 한글 파일이름 방식이 다르다. 맥은 NFD(Normal-Form-Decomposed)를 사용하고 기타 다른 운영체제는 Normal-Form-Composed(NFC) 방식을 사용한다. 이게 상당히 많은 문제를 야기하는데, 일단 드롭박스는 알아서 잘 해주고 git과 svn에도 관련 처리 기능이 있다.
http://resoneit.blogspot.kr/2013/06/git.html 참조
(맥에서)
git config --global core.precomposeunicode true
echo
echo도 mac에서와 살짝 다르다. “\n”이 걍 escaping된다. 일반적으로 -e 옵션을 붙이면 escaping 되지 않을수 있다고.. (http://stackoverflow.com/questions/20536112/how-to-insert-a-new-line-in-linux-shell-script)
echo -e "Hai\nHello\nTesting\n"
git
- 윈도에서 한글이 깨질때,
git config core.quotepath false
open
맥은 open이라는 명령으로 연결된 프로그램을 실행시킬수 있는데, 윈도에는 그런것이 없다. 비슷하게 만들어 쓰는수 밖에..
#! /usr/bin/env sh
case "$1" in
*.md)
/c/Program\ Files\ \(x86\)/Notepad++/notepad++.exe "$1"
;;
*)
echo "not supported file"
;;
esac
.DS_Store
요상하게 맥에서 작업을 한 폴더에는 .DS_Store가 있다. 요런것들은 맥 git에서는 알아서 ignore 해주나 윈도 git에서는 해주지 않는다. 만일 맥에서 파일을 가져왔다면 삭제가 필요. 이때 파일이름이 길어질수 있으므로 find에서 print0 옵션과 xxargs에서 -0옵션을 활용한다.
find . -name .DS_Store -print0 | xargs -0 rm
그외 크게 손볼것들
일단 crontab 이 윈도에 없다. 해당 동작을 비슷하게 사용하기 위해서는 윈도 작업 스케쥴러를 활용해야한다. 부팅시에, 등등의 옵션들도 corntab / 스케쥴러 모두 있으므로 나중에 시간내서 크게(?) 손봐야 겠다.