簡體   English   中英

Ruby-從ruby文件中讀取特定的bash腳本文件

[英]Ruby-Reading a specific bash-script file from ruby file

#practice.rb
$TENANT=gets.chomp('/\p{Alnum}/')
$first = $TENANT.slice(0,1).capitalize
$second = $TENANT.slice(1..-1)
EXPORT_PASSWORD="Export-"+ $first + $second.chomp + "!"
EXPORT_FILENAME=$TENANT.chomp + ".xar"
file = File.open("/Users/..../input/exporttenant.rb", "r")
contents = file.read
puts content
output = File.open(/.../input/$TENANT.txt, "w")
$TENANT=tenant_name
file = File.open("/data/workday/wmu/input/exportTenant.properties", "r")
$line = file.readlines.select{|line| line.match('DS_ENTRY_OMS_SERVER')}
file.close
output=File.open("/data/workday/wmu/input/#{$TENANT}".chomp, 'w')
output.puts "TENANT_NAME=#{$TENANT}"
output.puts "EXPORT_PASSWORD=#{$PASSWORD}"
output.puts "EXPORT_FILENAME=#{FILENAME}"
output.puts "EXPORT_WITHOUT_TAR=N"
output.puts "BYPASS_BLOB=N"
output.puts $line
output.close
print "Export tenant created for the #{$TENANT}\n"

我已經創建了一個文件名(用bash編寫的wandarar.sh)。wanda.sh文件具有命令。我想從另一個文件(practice.rb)運行wandarar.sh文件。
我想將wandarar.sh文件具有的相同功能包括到Practice.rb文件中。 我該如何運行?有人可以幫我嗎?

基本上,您將獲得一個數組,選擇一條符合您條件的線。

file = File.open('/home/username/Documents/file.txt', 'r')

   puts file.readlines.select{|line| line.match('DS_ENTRY')}

file.close

我認為您正在尋找的是.grep方法,請嘗試以下操作:

file_name = "put your file name here"
lines = File.readlines(file_name)
lines.grep(/DS_ENTRY\((.*)\)/)

File.open($1, "w") { |f| f.puts "file content" }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM