7-zip で圧縮された多数のファイルの抽出を自動化しようとしています。このプロセスを自動化する必要があるのは、a) 何年にもわたってロックを解除したいデータがあり、b) 自分のコードを他のユーザーと共有し、プロセスを手動で繰り返さないようにしたいからです。
私のコンピューターには WinRAR と 7-zip の両方がインストールされており、どちらのプログラムでもこれらのファイルを個別に簡単に開くことができます。
unzip
untar
コマンドとコマンドを調べましたが、unz
必要な機能を備えているとは思えません。
圧縮については何も知りませんが、違いがあるとすれば、これらのファイルにはそれぞれ1 つのファイルしか含まれておらず、単なるテキスト ファイルです。
ユーザーが追加のソフトウェア (WinRAR や 7-Zip など) をインストールしてコマンドを実行する必要のないソリューションを強く希望しますが、shell
R と CRAN パッケージだけではこのタスクが不可能になる可能性があることは認識しています。WinRAR がインストールされているコンピューターでは、追加のパラメーターを使用してこれらのファイルを実行すると実際に動作shell.exec
する可能性があると思いますが、可能であればそのインストールは避けたいと思います。:)
以下のコードを実行すると、抽出しようとしているファイルが読み込まれます。.7z ファイルは、files.data
ロックを解除する必要があるファイルです。
# create a temporary file and temporary directory, download the file, extract the file to the temporary directory
tf <- tempfile() ; td <- tempdir()
file.path <- "ftp://ftp.ibge.gov.br/Orcamentos_Familiares/Pesquisa_de_Orcamentos_Familiares_2008_2009/Microdados/Dados.zip"
download.file( file.path , tf , mode = "wb" )
files.data <- unzip( tf , exdir = td )
# how do i unzip ANY of these .7z files?
files.data
ありがとう!!!:)