Come impostare i file di inizializzazione di MSYS Bash
Nel sistema operativo Windows, il modo in cui si punta ai file di inizializzazione utilizzati da Bash (ovvero profilo, bash_profile, bashrc) è diverso rispetto al sistema operativo Linux.
La differenza tra il sistema operativo Windows e Linux è la loro struttura del file system, che porta alla differenza nella posizione dei file Bash e nelle convenzioni di denominazione dei file.
Come impostare i file di inizializzazione di MSYS Bash (ad es. Profilo, bash_profile e bashrc)
1) In WINOS, apri la cartella 'etc' che si trova qui 'C: \ msys \ 1.0 \ etc \'. Nota. dovresti vedere un file 'profilo' nella cartella 'etc'.
2) Salvare un file senza estensione di file (ovvero, quando si salva, impostare il salvataggio come tipo su '.all files') con il nome del file '.bash_profile' su 'C: \ msys \ 1.0 \ home \ USERNAME'. Nota. c'è un punto come prefisso per il nome del file (es. '.bash_profile') come ci si aspetterebbe dalla configurazione di Bash del sistema operativo Linux
2) Salvare un file senza estensione di file (ovvero, quando si salva, impostare il salvataggio come tipo su '.all files') con il nome del file '.bashrc' su 'C: \ msys \ 1.0 \ home \ USERNAME'. Nota. c'è un punto come prefisso per il nome del file (es. '.bash_profile') come ci si aspetterebbe dalla configurazione di Bash del sistema operativo Linux
4) Apri il file "profilo" in un editor di testo (il testo sublime x è buono) Nota: la posizione del file di "profilo" è "C: \ msys \ 1.0 \ etc \"
All'interno del file 'profilo', scorrere fino alla riga di testo alla fine del file (ovvero scorrere verso il basso) dovresti vedere una riga un test che indica a Bash di cambiare la sua directory corrente in HOME (in MSYS, HOME è come definito in file "profilo")
CD $HOME
5) Prima della riga con il testo 'CD $ HOME' copia il seguente codice: l'aggiunta di questo script in 'profilo' dirà a MSYS bash di eseguire il bash_profile # ---------------- -------------------------------------------------- --------- #modified INIZIA
# Note. -f is a flag in the file-test operator set of bash commands
# that test whether file exists
echo '[i] INFO loading personal environment variables and startup programs.... '
BASHRC="$HOME/.bash_profile"
if [ -f "$BASHRC" ]; then
source "$BASHRC"
fi
#modified END
#---------------------------------------------------------------------------
6) Apri il file 'bash_profile' in un editor di testo ( Sublime Text x è buono) e la fine del file (in fondo al file)
7) Copia il seguente codice alla fine del file - aggiungendo questo script in '.bash_profile' dirai a Bash di eseguire il '.bashrc'
#---------------------------------------------------------------------------
#modified BEGIN
# Note. -f is a flag in the file-test operator set of bash commands
# that test whether file exists
BASHRC="$HOME/.bashrc"
if [ -f "$BASHRC" ]; then
source "$BASHRC"
fi
#modified END
# ------------------------------------------------- --------------------------
8) OK, ora scriviamo un piccolo script all'interno di '.bashrc' per vedere se 'profile' sta chiamando 'bash_profile' e se 'bash_profile' sta chiamando '.bashrc'.
8.1) Pensa al nome del comando che desideri creare. Usiamo 't' per indicare il test
8.2) Aprire il terminale Bash e digitare 't'. Bash dovrebbe rispondere 't: comando non trovato' - se non dice 't: comando non trovato', ripeti 8.1 e 8.2 fino a quando il nome del tuo comando dice 'comando non trovato'. Non si desidera alias un nome comando assegnato a bash BAD !, quindi deve essere 'comando non trovato'
8.3) OK, 't' mi ha dato un 't: comando non trovato'. Ora scriviamo lo script in '.bashrc'
8.4) In '.bashrc' scrivere
# Use double quotes or bash will not write it
alias t="echo passed test"
8.5) Salvare il file '.bashrc' in 'C: \ msys \ 1.0 \ home \ USERNAME'
9) Quasi lì. Ora riavvia il terminale Bash e assicurati di chiudere tutti i terminali Bash precedentemente aperti
10) Digitare il terminale 't'. Dovrebbe rispondere "test superato". In caso contrario, controlla attentamente che il codice sia stato scritto correttamente (inizia controllando le virgolette)
Alcune note 1) 'nome file sorgente' è uguale a '. nome del file'
2) "" le virgolette doppie consentono alle variabili di essere sostituite dal suo contenuto le virgolette singole no
3) $ HOME è / home / USERNAME uguale a ~ is / home / USERNAME
4) Una funzione è sempre preferita rispetto all'alias 2
Per maggiori dettagli vedi riferimento BASH
Sono nuovo di Bash. Quindi non c'è alcuna garanzia che l'ho fatto nel modo migliore.
In bocca al lupo!