2016-10-10 7 views
0

내가 마주 치게되는 문제는 꽤 형식 플래그를 사용하여 자식 로그 아래에 출력 된 파일의 이름을 출력하지 못한다는 것입니다.루비 스크립트에서 시스템 (git log) 명령으로 파일 이름을 출력하는 방법은 무엇입니까?

내 코드의 추출물은 다음과 같다 :

filename = File.basename file 
system('git log --pretty=format:"%cd: (here I want the filename)"') 

예를 들어 sample.c에로 제시.

나는 #{filename}을 시도했지만 컴파일러에서 문자열로 해석되며 결과는 입력과 동일합니다.

미리 감사드립니다.

답변

1

작은 따옴표가 문자열 보간을 허용하기 때문에 문자열로 해석합니다.

system('git log --pretty=format:"%cd: (here I want the filename)"') 

내삽과 이스케이프를 활용할 수 있도록 큰 따옴표를 사용하도록 변경할 수 있습니다.

system("git log --pretty=format:\"%cd: #{filename}\"") 

https://ruby-doc.org/core-2.1.1/doc/syntax/literals_rdoc.html