当我启动单用户模式并列出我感兴趣的 ZFS 快照时,我想恢复到“xfcedesktop”快照。但是,这需要我zfs rollback snapshotname@xfcedesktop
为每个快照手动输入命令,如下所示:
# zfs list -t snapshot -o name | grep xfcedesktop
zroot@xfcedesktop
zroot/ROOT@xfcedesktop
zroot/ROOT/default@xfcedesktop
zroot/home@xfcedesktop
zroot/home/zoliky@xfcedesktop
zroot/tmp@xfcedesktop
zroot/usr@xfcedesktop
zroot/usr/ports@xfcedesktop
zroot/usr/src@xfcedesktop
zroot/var@xfcedesktop
zroot/var/audit@xfcedesktop
zroot/var/crash@xfcedesktop
zroot/var/log@xfcedesktop
zroot/var/mail@xfcedesktop
zroot/var/tmp@xfcedesktop
# now I need to type this for each line:
zfs rollback zroot@xfcedesktop
zfs rollback zroot/ROOT@xfcedesktop
zfs rollback zroot/ROOT/default@xfcedesktop
.. and so on
这很耗时,而且容易出错。我想知道是否有一个 shell 技巧或一行代码可以让我循环遍历 grep 的输出并执行每个快照的回滚命令。我在 FreeBSD 上使用 sh(不是 bash),以单用户模式运行。理想情况下,我希望它是一行代码而不是脚本。