OSX sed
s si basano su versioni precedenti, è necessario essere molto più letterale tuo itinerario fino a sed, E sei fortunato, in questo caso, sed
ti sta dicendo esattamente cosa fare. Testato come non ho OSX, ma cerco
sed '1 i\
VISPATH=/mnt/local/gdrive/public/3DVis
' init.txt >> ~/.bash_profile
ingresso tramite i i
cmd è terminato da una riga vuota. Altre istruzioni sed possono seguire dopo. Nota, NESSUN caratteri dopo il carattere \
!
Inoltre, @StephenNiedzielski ha ragione. Usa i singoli caratteri di citazione per avvolgere le tue dichiarazioni sed. (Se avete bisogno di espansione variabile all'interno del vostro sed e possono sfuggire altri usi di $
, allora si può anche utilizzare DBL-citazioni, ma non è raccomandato come un normale prassi.
modificare
quanto ho capito ora che stai facendo questo dalla riga di comando, e non in uno script o altro editor, ho provato quanto sopra, e .... tutto quello che posso dire è la famosa linea dal supporto tecnico ... "Funziona per me ". Se ricevi un messaggio di errore
sed: -e expression #1, char 8: extra characters after command
quindi quasi sicuramente avete aggiunto qualche carattere dopo lo \
. L'ho appena testato e ho ricevuto il messaggio di errore sopra riportato. (Sto usando una versione Linux di sed, quindi i messaggi di errore sono esattamente gli stessi). È necessario modificare la domanda per includere un cut-paste esatto della riga di comando e il nuovo messaggio di errore . L'uso di virgolette singole non funzionerà.
IHTH
Buon punto sulle citazioni, ma questo da solo non risolve il problema specifico dell'OSP dell'OP. – mklement0