@Dragon Für eine saubere Abarbeitung nacheinander solltest du auf den Callback von exec warten statt "geratene" Timeouts hintereinander zu hängen:
exec('mkdir /opt/iobroker/ipcamBad', (error, stdout, stderr) => {
// Auf Fehler reagieren oder den nächsten Befehl absetzen
exec('mkdir /opt/iobroker/ipcamFlur', (error, stdout, stderr) => {
// ...
});
});
Oder eben die Shell-Variante mit && wie @OliverIO vorschlägt.