Rでコマンド:ファイルやフォルダを操作するコマンド例


基本コマンドでフォルダの新規作成、ファイルのコピーを実行する例です。

指定した「XXX」フォルダ内のファイルを、新規にデスクトップに作成した「NEW_XXX」フォルダにコピー。そして、ファイル名を「指定したファイル名_No.元の拡張子」に変更するコマンドです。なお、元フォルダの内容は変更されません。

コマンドを実行すると下記画像のようになります。

filecomand

実行コマンドはwindows 7およびOS X 10.11.2のR version 3.2.2で確認しています。


実行コマンド

詳細はコメント、コマンドのヘルプを確認してください。

#パッケージの読み込み
library("tcltk")

#変更後のファイル名を指定
#XXXX.xxxを指定内容_NO.xxxに変更
ChangeName <- "Test"

#対象ファイルが保存されているフォルダを選択
TargetDir <- paste(as.character(tkchooseDirectory(title = "フォルダを選択"), sep = "", collapse =""))

#フォルダ名を取得
DirName <- tail(unlist(strsplit(TargetDir, "\\/")), n = 1)

#フォルダ内のファイルを取得
ItemList <- list.files(path = TargetDir)

#拡張子を取得
ExtenList <- t(as.data.frame(strsplit(ItemList, "\\.")))[, 2]

#デスクトップにフォルダを作成
#作成場所を指定
if(.Platform$OS.type == "windows"){
  #windows
  NewDir <- paste0(file.path(Sys.getenv("USERPROFILE"), "Desktop", fsep="\\"), "/NEW_", DirName)
} else {
  #Mac
  NewDir <- paste0(file.path(path.expand("~"), "Desktop"), "/NEW_", DirName) }
#フォルダを作成
dir.create(NewDir)

#作成したフォルダにファイルをコピー
file.copy(paste0(TargetDir, "/", ItemList), paste0(NewDir, "/", ItemList))

#ファイル名の変更
file.rename(paste0(NewDir, "/", ItemList),
            paste0(NewDir, "/", ChangeName, "_", seq(ItemList), ".", ExtenList))

少しでも、あなたのウェブや実験の解析が楽になりますように!!

スポンサードリンク

おすすめコンテンツ


スポンサードリンク