all

Rubyでファイルやディレクトリを作成したり削除したり操作する

Ruby ファイルやディレクトリの存在チェック [#dcf8277b] File.exist?("hoge") または FileTest.exist?("hoge") ファイルを作成する [#mcc0d373] File.open("パス","モード",perm=0666) do | file | file.puts "test" end パスには実際の保存される相対パスor絶対パスを記述する モードにはr,w,aなどを使う。 ファイルを削除する [#ud7a2887] filename = 'foo.txt' File.unlink filename または File.delete filename ディレクトリを作成する [#c9c52160] sd1 = /var/tmp/ruby FileUtils.mkdir("../contents/#{sd1}") unless FileTest.exist?("../contents/#{sd1}") ディレクトリを作成する(親ディレクトリを含めて階層で) [#ydb0474c] sd1 = 2016 sd2 = 01 FileUtils.mkdir_p("../contents/#{sd1}/#{sd2}") unless FileTest.exist?("../contents/#{sd1}/#{sd2}")
One minute to read

rubyで数値比較

Ruby ソース [#oda7023f] pschk = ps aux | grep httpd | grep -v grep | wc -l if psck.to_i > 1 then puts "NG" else push "OK" end to_i [#b1fdf60a] 数値 to_s [#z8ee160d] 文字列
One minute to read

Rubyで日付を取得する

Ruby 内容 [#ved13244] Rubyで日付を取得するにはdateライブラリを読み込んだ上でDateクラスのオブジェクトを作成したうえでstftimeメソッドで必要なフォーマットに変換できます。 記述 [#n6910903] require 'date' thisyear = Date.today thismonth = Date.today thisdate = Date.today sd1 = thisyear.strftime("%Y") sd2 = thismonth.strftime("%m") sd3 = thisdate.strftime("%d") print #{sd1}/#{sd2}/#{sd3}
One minute to read

rubyで条件分岐

Ruby if [#q4cb3960] x >= y y以上 x <= y y以下 パターン1 [#h3b9be82] a = 10 if a > 10 then puts "BIG" else puts "Not big" end パターン2(省略系) [#mf8293f7] a = 10 puts "BIG" if a > 9 パターン3 (省略系)[#ffe51460] a = 10 puts a > 9 ? "big" : "small" case [#oe501c63] signal = "pink" case signal when "red" puts "STOP" when "yellow" puts "STOP" when "green", "blue" puts "GO" else puts "no signal" end
One minute to read

Rubyで結果をログに出力する

Ruby 内容 [#g6d42a31] -Rubyではloggerというライブラリで特定のファイルにログを出力可能です -ローテーションもライブラリのパラメータで指定可能です 使い方 [#xee15ee1] require 'logger' require 'fileutils' #log logdir = "/var/log/process_restart/" FileUtils.mkdir("#{logdir}") unless FileTest.exist?("#{logdir}") logfile = Logger.new("#{logdir}/result.log",'weekly') logfile.datetime_format = "%Y/%m/%d %H:%M:%S " logfile.info("インフォメーションです") 説明 [#yc1f4368] -“FileUtils.mkdir"でログ用のディレクトリを作成してます -“Logger.new"でログファイルのパスとローテーションタイミングを記載しています –ローテーションはサイズ、日次、週、月などでローテーションできるようです -“logfile.datetime_format"で標準日時の出力を変更しています -“logfile.info()“の箇所でinfoレベルで"インフォメーションです"と出力しています 参考URL [#x7745556] http://magazine.rubyist.net/?0008-BundledLibraries#l12
One minute to read

rubyで繰り返し処理

Ruby for [#de6ad41a] for num in 1..10 puts num end each [#yf054b3b] range = 1..10 range.each { | num | puts num }
One minute to read

Rubyのインストール

Ruby 目次 [#o99204a1] -環境MacOS X 10.11.1でbrewでインストールする -CentOS6.7でソースからインストールする -CentOS6.7でrbenvからインストールする 環境 [#rc0a181f] MacOS X 10.11.1 brewでインストール [#e114f46b] $ brew install rbenv ruby-build $ rbenv install -l $ rbenv install 2.2.2 ※2015/12/22現在時点 $ rbenv global 2.2.2 特定の環境のみだった場合は local $ rbenv rehash Pathを通す前 [#b3eb2260] $ which ruby /usr/bin/ruby $ ruby -v ruby 2.0.0p645 (2015-04-13 revision 50299) [universal.x86_64-darwin15] Pathを通す [#t52e403b] $ cp -p .bash_profile .bash_profile.date +%Y%m%d $ vim .bash_profile — PATH= /.rbenv/shims:"$PATH" — $ source .
2 minutes to read

rubyの正規表現あれこれ

#author(“2019-01-19T12:36:45+00:00”,“default:kazuma”,“kazuma”) Ruby 概要 [#qd2ec7b8] Rubyの正規表現に関するあれこれをまとめていきます。 絵文字に変換して元の文字列を追加する [#n3eb59da] 文字のソートを日本語の次に英語にしたい要件があった場合に使えます。 name = jame.gsub(/([a-z])/, '￝\1') puts name
One minute to read

RubyをCGIで動かした場合のエラー一覧

Ruby Premature end of script headers [#jbd2fe60] - print "Content-Type: text/plain\n" + print "Content-Type: text/plain\n\n" 参考URL:http://magazine.rubyist.net/?0014-CGIProgrammingForRubyBeginners-3
One minute to read