Windows 상에서 작업하는게 편하다보니, 대충 Windows 상에서 생성한 code 파일들을 빌드 머신에 올려 빌드, 확인하고는 합니다.
혼자 작업을 하는 경우에는 그냥 그냥 대충~~ 대충~ 쓸 수 있지만, 여럿이 한꺼번에 작업을 하고 git 등을 사용하여 협업을 하는 경우
대부분의 빌드 머신은 linux로 구성되어 있어 종종 컴파일시에 에러 등이 생기기도 하고
무엇보다 compare 하는데 Dos 파일과 UNIX 파일이 교차되면서 생기는 아래와 같은 비교 분석은 은근히 신경쓰이는 부분인지라
대체로 빌드 머신에 맞추어 unix 파일 형태를 base format 형태로 사용하고 있습니다.
울트라에디터 상에서 저장 형식을 UNIX로 바꾸어 저장하여도 되고, 머신 상에서 vim 등을 활요하여 변경하는 방법도 있습니다만,
tofordos 패키지를 설치하여 target 또는 build machine 상에서 변경하는 방법이 있어 공유합니다.
# tofrodos 패키지 설치
sudo apt-get install tofrodos
설치를 완료하면 fromdos와 todos를 사용할 수 있습니다.
윈도우쪽에서 가져온 텍스트 파일을 리눅스 형식으로 바꾸고 싶으면 fromdos,
반대로 리눅스에서 만든 텍스트 파일을 윈도우에서 볼 수 있게 바꾸고 싶으면 todos를 이용하면 됩니다.
# 윈도우에서 만든 contents.cpp 를 리눅스 형식으로 변환
fromdos contents.cpp
# 리눅스에서 만든 contents.cpp를 윈도우 형식으로 변환
todos contents.cpp
find xargs *.* 등을 활용하여 하위 폴더 내의 동일 확장자 파일을 모두 바꾸는 방법 등으로 활용할 수 있을 것 같습니다.
find ./ -name "*.cpp" | xargs fromdos
아래는 참조용 옵션 사항입니다.
$ fromdos -help
tofrodos Ver 1.7.13 Converts text files between DOS and Unix formats.
Copyright 1996-2013 Christopher Heng. All rights reserved.
http://www.thefreecountry.com/tofrodos/index.shtml
Usage: fromdos [options] [file...]
-a (Deprecated option, see manual for info.)
-b Make backup of original file (.bak).
-d Convert DOS to Unix.
-e Abort processing files on error in any file.
-f Force: convert even if file is not writeable.
-h Display help on usage and quit.
-l file Log most errors and verbose messages to <file>
-o Overwrite original file (no backup).
-p Preserve file owner and time.
-u Convert Unix to DOS.
-v Verbose.
-V Show version and quit.