나는 text.txt라는 탭으로 구분 된 파일을 가지고 있습니다. 다음과 같이셰프와 루비 해시에 텍스트 파일을로드하는 방법
a\tb
c\td
나는 셰프를 실행하여 해당 파일을 myhash라는 해시로로드해야합니다.
어떻게하면됩니까?
나는 text.txt라는 탭으로 구분 된 파일을 가지고 있습니다. 다음과 같이셰프와 루비 해시에 텍스트 파일을로드하는 방법
a\tb
c\td
나는 셰프를 실행하여 해당 파일을 myhash라는 해시로로드해야합니다.
어떻게하면됩니까?
저는 요리사에 대해 모르지만, 순수한 루비 솔루션입니다. 아마 도움 :
{
"a": "b",
"c": "d"
}
을 그리고 당신이 chef-client
또는 chef-solo
이 JSON 파일 제공 실행할 수 있습니다 :
chef-solo -j myfile.json
당신의 뜻을 당신은 JSON으로 테스트 파일을 포맷해야
file = File.open('test.txt', 'r')
lines = file.readlines
file.close
myhash = Hash.new
lines.each do |line|
line.chomp!
key, value = line.split("\t")
myhash[key] = value
end
이러한 데이터를 다음과 같은 레시피에서 노드 속성으로 사용할 수 있습니다.
node[:a] #equals "b"
node[:c] #equals "d"
아무것도 내가 파이썬에서 할 수있는 것처럼 루비 파일을 여는 방법을 모른다. 나는 요리사를 사용하지만 파이썬 개발자는 – Tampa
Ruby 파일 문서 : http://ruby-doc.org/core-1.9.3/File.html – Huluk
http://stackoverflow.com/questions/14730833/how-i- 캡처 할 수있는 값 - 명령 줄 및 추가 레서피 –