Quindi sto cercando di creare un file bashrc/bash_profile portatile. Ho un singolo script che sto collegando simbolicamente a .bashrc, .bash_profile, ecc. Quindi guardo allo $0
e cambio quello che faccio in base a quale script è stato chiamato. Il problema è quello che la shell chiama lo script di bashrc, ovviamente esegue bash veramente il che significa che $0
per me è -bash
. $1
altro non è impostato sul nome dello script.Come posso ottenere il nome dello script che viene eseguito in bash?
Quindi la mia domanda è, in bash come posso ottenere il nome dello script in esecuzione. Non il binario che lo esegue, ad es. bash?
Presumo che mi stia dando -bash
con $1
non impostato perché in realtà non è un nuovo processo. Qualche idea?
Significa che questo non è generico. Quando analizzi $ ARGV devi sapere che sei stato chiamato da un altro script. Forse sto sbagliando. Se sbaglio, dovresti migliorare la spiegazione della tua risposta, ad es. aggiungi un esempio – hek2mgl