linux - 组的所有命令都应该成功或无

标签 linux bash

我正在测试以下场景:两个命令要么都成功,要么都不成功。

示例:假设有文件 abc,但没有文件 xyz。还有命令:

mv abc bcd   # abc exists and gets renamed to bcd. But I want this to fail
             # as well since command below is going to fail.

mv xyz yza   # xyz doesn't exist, so this will fail.

如何在 bash 中实现这种原子性?

最佳答案

你不能真正做到这一点,因为移动具有破坏性。您必须复制这两个文件,如果成功,则删除原始文件,否则删除新文件。

关于linux - 组的所有命令都应该成功或无,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58148558/

相关文章:

c++ - 将以 Windows 为中心的控制台 I/O 移植到 Linux

linux - linux mint 上的 ejabberd 服务器问题

Bash 的 vim 模式,而不是 vi

linux - Makefile 'ifneq' 语法错误,Broadcom BCM43142

linux - 读取文件的全部内容并用单引号引起来

bash - 在将 shell 变量传递给另一个命令之前删除前导零

linux - 如何使用 Nginx 服务器在 Ubuntu 服务器上部署 dotnet 核心应用程序?

linux - 自动构建 c/c++ 程序的 Web 界面?

linux - 在一个脚本中分组不同的 linux 命令

linux - 如何检测是否从另一个 shell 脚本调用了 shell 脚本