在Ruby中创建tgz文件

时间:2012-05-14 22:07:48

标签: ruby linux unix ubuntu zip

我创建了一个包含一些子目录的目录,在那些漂亮的小子目录中是一些文件。

我想把这个健壮的根目录很好地压缩成.tgz文件。

我的代码是tar cvzf('/Users/me/Desktop/things.tgz', '/Users/me/Desktop/')

Google搜索错误undefined method ‘cvzf’ for main:Object没有产生任何结果

1 个答案:

答案 0 :(得分:1)

错误正确地描述了您的问题:您正在调用一个名为cvzf的方法,并将两个文件路径作为参数,但Ruby中没有这样的方法。 (Ruby也不知道tar是什么,但是其他错误恰好先被捕获了)

如果您只想从Ruby脚本中调用shell命令,只需将命令包含在这样的反引号中:

`tar cvzf "/Users/me/Desktop/things.tgz" "/Users/me/Desktop"`

但是,只有在您的系统具有tar程序时才会起作用。否则,您可以尝试安装一些为Ruby添加tar功能的Ruby gems