#!/bin/env ruby require 'fileutils' RE = /(.*)\t(.*)\t(.*)\t(.*)\t(.*)/ INPUT_FILE = 'input.txt' f = File.new INPUT_FILE lines = f.readlines f.close lines.each do |line| fields = RE.match(line) dir = fields[0] fields[1..4].each { |file_name| FileUtils::mv(file_name, "#{dir}/#{file_name}") end