PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2016/07/12 22:31:23
Name mcmc
Subject [질문] 리눅스 vim 질문입니다.
우선 완전 초보라 이런게 되는지도 모르는 상황인데요.
간단한 함수(?)를 만들어보려고 하는데 입력값을 받는과정에서 문제가 있습니다.
argument는 단순히 txt파일로 text파일을 입력받으면 vi editor로 실행시킨후 몇가지 작업들을 하는 단순한 함수입니다.

예를들어, 줄 번호를 출력해라 라는 함수를 만든다면

#!/bin/bash

read $input
vi input.txt
:set nu

이런식으로 해주면 될것같은데
파일을 read해서 vi editor로 실행까진 잘 하는데
:set nu
이 명령어는 인식을 못하는데 이건 어떻게 해야 하는건가요?
저 부분만 해결하면 될 부분 같은데 잘 안되네요 ㅠㅠ
그리고 esc를 통해 vim의 명령모드로 들어가는건 어떻게 해야 할까요?

답변주시는 분들 미리 감사드립니다.

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
등가교환의법칙
16/07/12 22:55
수정 아이콘
질문하신 내용을 잘 이해못하겠습니다;;
esc를 누르시면 명령모드로 들어가는 것입니다.
관련 입문서링크 걸어드릴게요. 열공하세요!
http://www.joinc.co.kr/w/Site/Vim/Documents/UsedVim
16/07/12 23:24
수정 아이콘
참고해주신 링크는 공부할때 쓰고 있습니다!
그 질문이 정확히
vi example.txt
이런식으로 입력하면 명령모드인 상태로 시작이 되는데
여기서 예를들어
:set nu 이런식으로 치면 line number를 출력시켜주겠죠?
이 일련의 작업을 함수로 만들어서 예를들어 input으로 example.txt라고 넣어주면
자동으로
vi example.txt
:set nu
이런식으로 line number를 뽑아주는 함수를 만들고 싶은게 목적입니다.
그런데 함수 인자로 example.txt를 받아오면
vi examplt.txt까진 실행이 잘 되는데,
: set nu 이 부분은 인식을 못하는지 line number를 보여주진 않는게 현재의 문제상황입니다ㅠㅠ
16/07/13 02:25
수정 아이콘
Vi 실행한후 특정 명령을 바로 실행하고 싶으시면 vi 뒤에 "-c 'vim 코맨드'"를 인자로 넘기시면 됩니다.
그러니까

#!/bin/bash

read $input
vi -c "set nu" input.txt

이런식으로 말이죠.
저 위에 쓰신 내용은... vi가 종료된 후 bash에서 :set nu라는 명령을 실행하게 됩니다.
16/07/13 03:00
수정 아이콘
오오!!
제가 원하던게 바로 이부분이었는데 간단히 할수있는 작업이었군요.
그러면 만약 파일 실행후
1. 3줄을 지우고
2. 현재위치에서 맨앞까지 지우고
3. var이란 단어를 입력한다면
vi -c "3dd" "d0" "i var" input.txt
이렇게 하면 되는건가요??

아아.. 종료후 명령이라 계속 메시지가 이상하게 떴던거군요.
16/07/13 02:29
수정 아이콘
그리고 정확히 원하시는게 뭔지는 모르겠지만 보통 쉘 스크립트에서 vi와 같은 사용자의 입력을 필요로 하는 프로그램을 실행시키는 경우는 거의 없습니다.
vi에서 set nu 명령어도 에디터 상의 각 줄의 줄번호를 보여주는 것이긴 한데 보통 설정 파일에서 설정해두면 vi 실행할 때 마다 알아서 켜지기 때문에 저렇게 커맨드 라인 인자로 넣어줄 일이 많지는 않고요.
16/07/13 03:03
수정 아이콘
네 vimrc에서 디폴트를 설정할수 있더라고요.
음.. 사실 거의 똑같이 텍스트파일 여러개에 동일한 작업들을 실행시키려는데,
좀더 간단하게 할수 없을까 해서 쉘에서 함수를 하나 짜놓고 텍스트문을 루프로 받아가면서 돌리려고 했었거든요ㅠㅠ
좀더 간단한 방법이 있을듯 한데 아직 쉘스크립트에 익숙하지 않아서 무식한 방법으로 저.근하고 있는것 같기도 합니다.
데로롱
16/07/13 06:28
수정 아이콘
텍스트 파일 여러개에 동일 작업이면 sed + awk가 제일 편하죠...
16/07/13 08:17
수정 아이콘
음.. 이게 사용 목적이 다른건가요??
근데 어떻게 보면 see나 awk도 vi의 기능을 대부분 하는것 같은데 그럼 vi를 딱히 익힐 필요는 없는건가요?
데로롱
16/07/15 15:56
수정 아이콘
완전 다르죠
Wysiwyg 인 텍스트 에디터랑 단어 치환 명령어와는..
16/07/13 03:03
수정 아이콘
아 그리고 답변 정말 감사드립니다!
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
86468 [질문] 우리나라에 사회 전반적인 개혁은 언제 일어날까요? [20] 신입사원3166 16/07/14 3166
86467 [질문] 임이최마가 시대순인가요? 서열순인가요? [30] 에버그린6893 16/07/14 6893
86466 [질문] [오버워치] 욕설 고소하러 경찰서에 갔으나 거절당했습니다. [8] 눈물고기15613 16/07/14 15613
86465 [질문] 헬스장 운동기기 다루는법 트레이너분들께 여쭤봐도 될까요? [6] toto3419 16/07/14 3419
86464 [질문] 콘솔 게임기 추천 부탁드립니다. (+보드게임) [5] 귀연태연5275 16/07/14 5275
86463 [질문] 휴대폰 중저가 가성비 좋은거 추천 좀 부탁드립니다. [4] 보로미어2868 16/07/14 2868
86462 [질문] 조별과제 저와 같은 이유로 싫어하는 분 계신가요? [25] Mosby6703 16/07/14 6703
86461 [질문] 가평 가족여행 일정 및 맛집 질문드려요. [2] 꿀멀티3797 16/07/14 3797
86460 [질문] [하스스톤] 최근 패치 이후에 음성이 영어로 나옵니다. [10] 어제내린비5220 16/07/14 5220
86459 [질문] 혼다 cg 125같은 스타일의 오토바이 [4] cs5205 16/07/14 5205
86458 [질문] 이 목걸이 어떤색으로 보이시나요? [9] 날건지다2840 16/07/14 2840
86457 [질문] 큰 폰, 전화되는 태블릿 중에 요즘 쓸만한 게 뭐가 있을까요? [3] 대보름3314 16/07/14 3314
86455 [질문] [이볼브] 실버 사용방법+ [1] 냠냠이3469 16/07/13 3469
86454 [질문] 구로디지털단지 근무하시는분들 월주차 어떻게 하시나요? [1] 아이어6831 16/07/13 6831
86453 [질문] [오버워치] 어떤 스킨을 최애하시나요? [23] whenever4164 16/07/13 4164
86452 [질문] 하드 배드섹터로 a/s 받아야 하는데요. [3] 너구리만두1976 16/07/13 1976
86451 [질문] 엑셀함수 중에 사이값을 구하는 방법이 궁금합니다. [7] 물통이없어졌어요22996 16/07/13 22996
86450 [질문] 헬스 꼭 실패지점까지 해야할까요? [5] 삭제됨5660 16/07/13 5660
86449 [질문] "전에 욕(비난)했던 분들 어디갔나요" 라는 말은 무슨 의미인가요? [16] CoMbI COLa4339 16/07/13 4339
86448 [질문] 피지알은 정확히 언제 만들어진 사이트인가요? [5] Anastasia 2867 16/07/13 2867
86447 [질문] 혹시 사용하시는 텀블러 추천해 주실 수 있을까요? [4] 토욜저녁축구와치맥캬3902 16/07/13 3902
86446 [질문] 한국 축구중계진 꿈의조합은 어떤것이 있을까요? [16] Brasileiro3475 16/07/13 3475
86445 [질문] 감사합니다 [4] 삭제됨2735 16/07/13 2735
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로