If the target file already exists and an overwrite fails/is not desired, the command will still return 0 and the file will be marked and logged as successfully enabled/disabled. Fixing this would probably(?) involve devising an atomic "fail-if-exists-else-move" operation.