我正在尝试tar
在名为“ my_directory”的目录中收集文件,并使用以下命令删除原始文件:
tar -cvf files.tar my_directory --remove-files
但是,它仅删除目录中的单个文件,而不删除目录本身(这是我在命令中指定的)。我在这里想念什么?
编辑:
是的,我想'remove-files'选项是完全文字的。尽管我也发现手册页在这一点上不清楚。(在linux中,我往往不会在目录和文件之间真正区分太多,有时会忘记它们不是同一件事)。看来共识是它不会删除目录。
但是,我提出这个问题的主要提示是因为tar对绝对路径的处理。由于必须指定要压缩文件的相对路径,因此必须更改到父目录以正确压缩它。如我所见,在这种情况下,使用任何类型的后续“ rm”命令都可能存在危险。因此,我希望通过使tar自己执行删除操作来简化操作。
例如,想象一个备份脚本,其中要备份的目录(即tar)作为shell变量包含在内。如果错误输入了该shell变量值,则可能会从您恰好位于的目录中删除文件。