Salve a tutti
il mio problema e' come da titolo e deriva da questo:
se faccio da shell un
echo foo > file
file viene creato con foo + carriage return; file viene infatti creato di 4 byte e aprendolo con un editor esadecimale ho appunto 66 6f 6f 0a (foo "a_capo").
Aprendo il file con nano il "ritorno a capo" non riesco ad eliminarlo (mi mantiene il file su due righe per intenderci, foo + seconda riga vuota sotto data dal CR); se lo apro con kedit invece la riga riesco a toglierla (il file difatti mi diviene di 3 byte e in esadecimale lo 0a sparisce - anche se nano mi fa vedere la "riga in piu'" in ogni caso ).
La mia necessita', con bash, e' di creare un file con i soli caratteri inviati dallo stdout (di echo o da altro al limite) senza nessun carriage return o line feed che sia. Si puo' fare ? Oppure, in alternativa, come posso rimuovere il CR dal file creato ?
In nota: dopo aver creato echo foo > file
ho provato a passarlo a questo script
stringa=$1
b=$(sed -n '$p' $stringa)
lung_str=${#b}
echo $lung_str
e mi torna 3 come se il CR non ci fosse, cosa che di fatto non e' vera..
Mi staro' perdendo in un bicchiere di acqua ma mi sto facendo mooolte paranoie...
Help !