단순히 프로그래밍을 하기에는 꼭 VI를 익혀야 할 필요는 없습니다. 요즘은 IDE들이 워낙 잘 되어 있어서.. 하지만, 개발 환경과 분리된 live 서버에서 서비스 debugging 같은 것을 위해서는 IDE 환경으로 연결이 불가능한 경우가 많습니다.
이런 경우 서버에 설치되어 있는 editor를 이용해야 하는데, 이 경우 vi 가 설치되어 있을 확률이 매우 높은 거죠.
그리고, 요즘은 devops 가 대세라서, 개발자들이 서버 설정에 참여하는 경우가 많습니다. 이 경우 대부분 서버의 editor를 사용하게 되므로 vi를 사용하게 될 확률이 매우 높아지게 됩니다. 그러므로 개발자든 SE든 서버 들어가 직접 작업을 해야할 이슈들이 생기기 때문에 vi를 익혀 두시는 것이 좋습니다. bash 와 vi 는 잘 다루도록 익혀 두시는 것이 매우 좋습니다.
한 15년 전이었다면 모를까 이제는 필수라고 할 이유는 없는 듯 합니다. 다른 분들께서 서버에 접속해서 사용할 경우를 말씀하셨지만, 어차피 ssh 접속을 할 수 있는 서버라면 그냥 로컬 데스크탑에 설치된 에디터를 통해서 파일을 편집할 수 있습니다. 널리 쓰이는 대부분의 에디터들이 ssh를 통해서 원격에 있는 파일을 다룰 수 있는 기능을 제공하니까요.
필수는 아니지만 알아두면 좋을 이유를 대자면, 우선 간단한 서버 관리 작업을 할 경우에는 편리할 수도 있습니다. 에디터를 따로 사용하는 경우보다 터미널에서 vi를 통해 작업하는 것이 작업의 흐름상 (또 심리적으로) 유기적인 경우가 종종 있습니다. 아마 다른 분들께서 하신 말씀이 이런 뜻이었겠지요.
다른 한 가지 장점은 vi에 충분히 익숙해졌을 경우에는 편집에 관한한 다른 에디터에 비해 vi가 훨씬 효율적이라는 점입니다. 유튜브에서 vim을 사용하는 live coding을 찾아보세요. 코드 내용과는 별개로 편집의 효율성과 속도를 보고 감탄할 경우들이 있습니다. 하지만 이것도 역시 필수라고 할 만한 이유는 안됩니다.
여러군데 다녀봤지만 로컬 에디터를 사용해 접속하는 것 자체를 못하게 하는 곳은 못봤습니다. 하지만 ssh는 허용해도 sftp는 허용하지 않는 변태적인 곳은 있더군요. ssh 서버 설정에서 막아놔서 sftp 프로토콜은 사용 불가입니다. 그런 곳에서는 결과적으로 로컬 에디터들도 사용할 수 없지요. sshfs 마운트도 안되구요. 관리자에게 그렇게 한 이유를 물었는데 딱히 속시원한 답변이 없더군요. 딱히 보안 측면에서 잇점이 있을런지 잘 모르겠습니다.
서버에 들어가서 직접 소스를 수정하면서 작업하기에
서버에 들어가서 직접 소스를 수정하면서 작업하기에 좋습니다.
---
http://coolengineer.com
그러게요. vi는 필수가 아닙니다. emacs가
그러게요. vi는 필수가 아닙니다. emacs가 필수죠. ㅎㅎ
뭐 농담이고, 에디터는 취향껏 선택해서 사용해도 됩니다.
그래도 vi를 익혀 둬야 하는 이유를 찾는다면, 어지간한 리눅스 머신에는 다른 건 안 깔려 있어도 vi는 있는 경우가 많거든요.
단순히 프로그래밍을 하기에는 꼭 VI를 익혀야 할
단순히 프로그래밍을 하기에는 꼭 VI를 익혀야 할 필요는 없습니다. 요즘은 IDE들이 워낙 잘 되어 있어서.. 하지만, 개발 환경과 분리된 live 서버에서 서비스 debugging 같은 것을 위해서는 IDE 환경으로 연결이 불가능한 경우가 많습니다.
이런 경우 서버에 설치되어 있는 editor를 이용해야 하는데, 이 경우 vi 가 설치되어 있을 확률이 매우 높은 거죠.
그리고, 요즘은 devops 가 대세라서, 개발자들이 서버 설정에 참여하는 경우가 많습니다. 이 경우 대부분 서버의 editor를 사용하게 되므로 vi를 사용하게 될 확률이 매우 높아지게 됩니다. 그러므로 개발자든 SE든 서버 들어가 직접 작업을 해야할 이슈들이 생기기 때문에 vi를 익혀 두시는 것이 좋습니다. bash 와 vi 는 잘 다루도록 익혀 두시는 것이 매우 좋습니다.
한 15년 전이었다면 모를까 이제는 필수라고 할
한 15년 전이었다면 모를까 이제는 필수라고 할 이유는 없는 듯 합니다. 다른 분들께서 서버에 접속해서 사용할 경우를 말씀하셨지만, 어차피 ssh 접속을 할 수 있는 서버라면 그냥 로컬 데스크탑에 설치된 에디터를 통해서 파일을 편집할 수 있습니다. 널리 쓰이는 대부분의 에디터들이 ssh를 통해서 원격에 있는 파일을 다룰 수 있는 기능을 제공하니까요.
필수는 아니지만 알아두면 좋을 이유를 대자면, 우선 간단한 서버 관리 작업을 할 경우에는 편리할 수도 있습니다. 에디터를 따로 사용하는 경우보다 터미널에서 vi를 통해 작업하는 것이 작업의 흐름상 (또 심리적으로) 유기적인 경우가 종종 있습니다. 아마 다른 분들께서 하신 말씀이 이런 뜻이었겠지요.
다른 한 가지 장점은 vi에 충분히 익숙해졌을 경우에는 편집에 관한한 다른 에디터에 비해 vi가 훨씬 효율적이라는 점입니다. 유튜브에서 vim을 사용하는 live coding을 찾아보세요. 코드 내용과는 별개로 편집의 효율성과 속도를 보고 감탄할 경우들이 있습니다. 하지만 이것도 역시 필수라고 할 만한 이유는 안됩니다.
보안이 까다로운 회사나 기관에서 특정 프로그램만
보안이 까다로운 회사나 기관에서 특정 프로그램만 서버접속을 허용한다거나 할때(에디터로 서버 접속을 못하게 강제한다거나 하는등의)
vi를 사용할 줄 알면 편하겠죠.
여러군데 다녀봤지만 로컬 에디터를 사용해 접속하는 것
여러군데 다녀봤지만 로컬 에디터를 사용해 접속하는 것 자체를 못하게 하는 곳은 못봤습니다. 하지만 ssh는 허용해도 sftp는 허용하지 않는 변태적인 곳은 있더군요. ssh 서버 설정에서 막아놔서 sftp 프로토콜은 사용 불가입니다. 그런 곳에서는 결과적으로 로컬 에디터들도 사용할 수 없지요. sshfs 마운트도 안되구요. 관리자에게 그렇게 한 이유를 물었는데 딱히 속시원한 답변이 없더군요. 딱히 보안 측면에서 잇점이 있을런지 잘 모르겠습니다.
망분리가 적용된 환경에서는 거의 local
망분리가 적용된 환경에서는 거의 local editor 를 이용하기 힘이 듭니다.
심지어는 copy & paste 도 힘든 환경도 있습니다.
얘는 말투가 항상 이러네...
필수적이라는 표현이 적절하지 않는 것 같은데...
실력도 없는게 자존심만 강해서,,,
댓글 달기