Ci sono tanti modi per scrivere su un file di testo i valori di uno o più dati.
Per quanto riguarda la "non cancellazione" del contenuto precedente ci sono diverse opzioni.
Ad esempio:
- vuoi che nello stesso file vengano scritti i dati di più esecuzioni dello script?
- vuoi che il contenuto del file venga cancellato all'inizio di ogni esecuzione?
- vuoi che lo script controlli se il file scelto come output esiste e che "... agisca di conseguenza" (tramite "if-else")?
Una possibile soluzione potrebbe essere usare la funzione "fprintf"; questa richiede che il file di output sia "aperto" (in modalità scrittura) con la funzione "fopen" ("fclose" per chiuderlo alla file).
La funzione "fprintf" "aggiunge" opera automaticamente in modalità "append"; la differenza, in questo caso, la fa la modalità con la quale il file di output viene aperto (funzione "fopen"): se questo esiste e se si specifica la modalità "append", "fprintf" accoderà le nuove informazioni al file di output (lo creerà, in caso contrario).
Se il file di output esiste e se non viene specificata la modalità "append" all'apertura del file output, fprintf comincerà a scrivere "dall'inizio" del file, cancellando quanto precedentemente scritto.
Una soluzione alternativa si può implementare usando, per esempio (ma, come detto le alternative sono tantissime), la funzione "dlmwrite" la quale richiede (a differenza di fprintf) di specificare esplicitamente la modalità di scrittura "append" nel caso la si desideri.
Un'altra potrebbe veder usare "csvwrte".
Si può anche, ad esempio, ottenere un "log" dell'esecuzione dello script (o funzione) usando la funzione "diary".
Oppure "evalc" e poi scrivere su file il suo output.
Il comando "echo" (echo on) si limita a stampare nella Command Window le istruzioni che vengono eseguite quindi non può essere usata per salvare su file i dati.
Hope this helps.