자동화를 위해 요리사를 사용했습니다.시스템 스크립트에서 생성 된 루비 변수에서 새로운 줄을 제거하는 방법
필자의 시나리오 중 하나는 내 시스템에 설치된 rvm에서 승객의 버전 번호를 추출해야한다는 것입니다.
나는 이것에 대한 변수 'pasver'사용 :
pasver = `/usr/local/rvm/bin/gem list | grep passenger`.sub /.*\((.*)\).*/, '\1'
하지만이 경우,이 변수를 사용하는 경우 :
if ! ::File.exists?("/usr/local/rvm/gems/#{node['redmine']['rubyversion']}/gems/passenger-#{pasver}/buildout/apache2/mod_passenger.so") then
그리고이 조건은 블록의 경우에 항상 false입니다 및 코드 실행되지 않습니다.
pasver 변수에 새 행이 들어 있기 때문입니다.
어떻게이 새로운 줄을 제거 할 수 있습니까?
나는 다음 방법을 사용하지만, 성공적으로없는 : 왜
pasver.chomp!
시스템 호출 후
또는를 사용
pasver = `/usr/local/rvm/bin/gem list | grep passenger`.sub /.*\((.*)\).*/, '\1'.gsub("\n",'')
하십시오이 관련 답을 표시합니다. – CodeGroover
나는 나의 대답을 표시한다 -이 질문의 마지막 대답. – vskubriev