Minecraft any way to use /clone to only replace air blocks?

There isn't one command to do this and there's a bug report about that: https://bugs.mojang.com/browse/MC-126514

But what you can do is cloning your target area somewhere else, then cloning your source to the target and then cloning the temporary area back to the target using the "masked" mode of /clone. This first makes the target identical to the source and then places back all blocks except for air.