2014-10-04 2 views
0

다음 워크 플로 중 하나를 반자동으로 자동화하기 위해 다음 스크립트를 사용했습니다. 나는 떠들썩한 터미널을 열고 붙여 넣 스크립트 IRB 시작 : 나는 터미널에이 붙여 넣을 수 있도록하려면 지금스크립트를 Terminal.app에 붙여 넣을 때 STDIN을 잘못 사용했습니다.

require 'highline/import' 

# ... 
user = ask("User:") 
repo = ask("Repository:") 
# ... 
# Do advanced fancy stuff 

을하지만 사용자에 대한 첫 번째 프롬프트는 다음 줄을 덮어 씁니다 : repo = ask("Repository:") .

이 동작을 방지하는 방법이 있습니까?

나는 스크립트를 작성할 수 있음을 알고 있습니다. 그러나

  1. 나는 것을 방지 할 수있는 방법이 있나요 편리
  2. 내가 STDIN은 어떻게 든이 경우
+0

어디에서 붙여 넣으시겠습니까? ;) 그것들을로드하는 것이 편리하지 않을까요? –

+0

@TomFenech 메모에서 메모를 복사합니다. 나는 그러한 스크립트 스 니펫을 꽤 자주 사용하며 주어진 프로젝트에서 일할 때 항상 터미널이 열려 있습니다. 그래서 어떤 경로에서 그것을 로딩하는 것은 내가 원하는 것이 아닙니다 ... – Besi

답변

0

에 outfoxed 할 수있는 방법을 생각해 그냥 터미널에이 붙여 넣기 할 수 있도록 찾을 수 이 행동.

는 명령

stty -echo 

로 붙여 넣은 텍스트의 반향을 방지 할 수 있습니다 -이 불가피 또한 입력 된 명령의 반향을 방지하기 때문에 같은 다른 질문,인지,하지만 당신이 볼 수 다시 입력하면

stty echo