Come affrontare uno spazio quando si imposta $ PATH

11

Voglio aggiungere la lib sublime al mio percorso ma ha uno spazio al suo interno.

Ho provato l'ovvio come faresti per navigare nel terminale ( per esempio. /Applications/Sublime\ Text\ 2.app/Contents )

export PATH="/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl:$PATH"

Ma ho ancora l'errore

/Applications/Sublime: No such file or directory

Potrei rinominarlo ma sono curioso di come risolverlo. Sto usando bash.

    
posta Shawn Vader 22.06.2013 - 20:51
fonte

4 risposte

12

Usa la barra rovesciata o le virgolette, non entrambe. Hai inserito lo spazio di backslash della sequenza nel valore PATH .

export PATH="/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl:$PATH"

o

export PATH=/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl:$PATH

Assicurati di non avvolgere la linea: devono essere spazi, non newline.

Nota che se vedi un errore come /Applications/Sublime: No such file or directory dalla riga export PATH=… , allora hai un errore di sintassi in quella linea, come uno spazio dopo il segno uguale: il compito non prova a cercare il directory. Se l'errore si verifica in un secondo momento, non è dovuto al valore PATH o, in tal caso, solo indirettamente: è perfettamente accettabile per le voci in $PATH che non esistono e una directory inesistente non porterà a un messaggio di errore.

    
risposta data 26.12.2013 - 20:14
fonte
3

Per risolverlo ho creato un simlink in

ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" /usr/local/sublime/bin/subl

L'ho poi aggiunto al mio percorso usando vi su ~. / bashrc

export PATH="/usr/local/sublime/bin/:$PATH"

Ricordati di cercare il file .bashrc per raccogliere le tue modifiche

source ~/.bashrc
    
risposta data 22.06.2013 - 21:23
fonte
3

Se il percorso è impostato correttamente su .bash_profile , sia con virgolette doppie o backslash-escape e contiene spazi in esso, devi chiamare le variabili con virgolette doppie .

Ad esempio, se .bash_profile è impostato come di seguito:

export SUBLIMEPATH="/Applications/Sublime Text 2.app/Contents"
export PATH=$PATH:$SUBLIMEPATH/SharedSupport/bin/subl

non puoi fare cd $SUBLIMEPATH per cambiare la directory corrente, riceverai l'errore No such file or directory . Ma con virgolette doppie come cd "$SUBLIMEPATH" puoi.

Spero che questo aiuto per qualcosa.

    
risposta data 17.01.2018 - 18:31
fonte
1

Questo non risponde alla domanda. Tuttavia, si rivolge come commento fatto in una delle risposte e discute una procedura simile.

È anche possibile creare un alias per il testo sublime modificando .bash_profile o .bashrc (qualunque sia il file di configurazione BASH nella tua home directory).

alias sublime="/Applications/Sublime\ Text.app/Contents/MacOS/Sublime\ Text"

Per fare ciò, è necessario utilizzare ENTRAMBI le barre di sicurezza e le virgolette . Nota in particolare che questa è una situazione molto diversa dall'esportazione del PATH come menzionato sopra, perché lì ha senso solo fare l'uno o l'altro, ma non entrambi.

Si noti inoltre che non è necessario creare prima un collegamento simbolico, come affermano la documentazione ufficiale di Sublime e molte altre fonti. Questa risposta su StackOverflow è corretta.

    
risposta data 19.07.2018 - 23:28
fonte

Leggi altre domande sui tag