プログラミングのお題スレ Part22 (860レス)
プログラミングのお題スレ Part22 http://mevius.5ch.net/test/read.cgi/tech/1691038333/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
必死チェッカー(本家)
(べ)
自ID
レス栞
あぼーん
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
153: デフォルトの名無しさん [sage] 2023/11/11(土) 20:39:33.71 ID:iU/7lT3J >>85 Ruby で作った。 FileUtils::DryRun を使っているので、実際には変更されません require 'fileutils' HEAD = 'abc' # 先頭文字 EXT = '.mp4' # 末尾の拡張子 HEAD_LEN = HEAD.length # 3文字 EXT_LEN = EXT.length # 4文字 # 絶対パスのディレクトリ名の後ろに、* を付けること! # . で始まる、隠し directory, file を除く glob_pattern = "C:/Users/Owner/Documents/test/*#{ EXT }" target_dir = File.dirname( glob_pattern ) # ディレクトリパスだけを取り出す # 元のファイル名の配列 fname_src_ary = Dir.glob( glob_pattern ) .select { |full_path| File.file?( full_path ) } # ファイルのみ .select do |full_path| file_name = File.basename( full_path ) # 先頭文字が abc かつ、末尾が .mp4 だけに絞り込む file_name.start_with?( HEAD ) && file_name.end_with?( EXT ) end .map { |full_path| File.basename( full_path ) } 次へ続く http://mevius.5ch.net/test/read.cgi/tech/1691038333/153
154: 153 [sage] 2023/11/11(土) 20:41:20.19 ID:iU/7lT3J # 変更後のファイル名の配列 fname_dest_ary = fname_src_ary.map do |file_name| str = String.new( file_name ) # 先頭文字の abc と、末尾の .mp4 を取り除いて、数字だけにする str.slice!(-EXT_LEN, EXT_LEN) str.slice!(0, HEAD_LEN) # 10進数の数値型に変換してから、3桁0埋め文字にする HEAD + "%03d" % Integer( str, 10 ) + EXT end require 'set' # 変更後のファイル名が既に存在しているか、チェックする。 # abc100.mp4 など、3桁以上の数値もエラー! fname_src_set = Set.new( fname_src_ary ) # 集合 fname_dest_ary.each { |file_name| raise "ファイル名: #{ file_name } が重複しています" if fname_src_set.include?( file_name ) } # ファイル名を変更する fname_src_ary.zip( fname_dest_ary ) do |src_filename, dest_filename| src_path = target_dir + "/" + src_filename dest_path = target_dir + "/" + dest_filename FileUtils::DryRun.move( src_path, dest_path ) end 出力 mv C:/Users/Owner/Documents/test/abc0.mp4 C:/Users/Owner/Documents/test/abc000.mp4 mv C:/Users/Owner/Documents/test/abc99.mp4 C:/Users/Owner/Documents/test/abc099.mp4 http://mevius.5ch.net/test/read.cgi/tech/1691038333/154
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.030s