7 variables de Bash que faig servir a quasi tots els scripts

Descobreix les 7 variables de Bash que tot programador fa servir: $0, $EUID, $UID i més. Aprèn el seu significat i per què són importants.

miércoles, 29 de julio de 2026 • 3 min de lectura • Equip Q2BSTUDIO

Variables Bash imprescindibles para tus scripts

Si treballes amb Bash habitualment, saps que certes variables internes marquen la diferència entre un script funcional i un de robust. A Q2BSTUDIO, com a empresa de desenvolupament de programari i tecnologia, construïm aplicacions a mida, integrem intel·ligència artificial, despleguem infraestructura cloud a AWS i Azure, i auditem sistemes amb ciberseguretat avançada. En tots aquests projectes, els scripts Bash són el pegament que automatitza processos i garanteix consistència. Per això vull compartir les set variables que utilitzo en pràcticament cada un dels meus scripts. Conèixer-les t'ajudarà a escriure codi més fiable, depurable i professional.

1. $0 – El nom del scriptAquesta variable conté la ruta o el nom amb què es va invocar el script. L'uso per mostrar missatges d'ús personalitzats (echo 'Ús: $0 [opcions]'), per registrar en logs quin script s'està executant, i per referenciar el mateix fitxer en operacions d'autoreparació. En entorns d'automatització que desenvolupem, $0 permet identificar exactament quin pas va fallar en una canonada de desplegament.

2. $? – Codi de sortida de l'última comandaDesprés d'executar qualsevol comanda, $? guarda el seu estat de sortida: 0 significa èxit, qualsevol altre valor indica error. Aquesta variable és essencial per al control de flux. En els nostres scripts de programari a mida, validem cada pas amb if [ $? -ne 0 ]; then per, per exemple, revertir canvis al núvol si una actualització falla. També l'empram en agents IA que processen dades de forma seqüencial.

3. $# – Nombre d'argumentsSaber quants arguments va rebre el script evita errors ximples. En un procés d'ingesta de dades per a Business Intelligence, per exemple, exigim almenys dos paràmetres: l'origen i el destí. if [ $# -lt 2 ]; then imprimeix l'ús i surt. Aquesta validació és senzilla però estalvia temps en entorns productius.

4. $@ – Tots els arguments com a paraules separadesQuan necessites passar tots els arguments a una altra comanda respectant les cometes, $@ és l'opció correcta (a diferència de $*). El fem servir en scripts wrapper que invoquen eines de ciberseguretat com escàners de vulnerabilitats: nmap $@. D'aquesta manera, mantenim la flexibilitat sense perdre la integritat dels paràmetres.

5. $EUID – ID d'usuari efectiuAquesta variable mostra l'UID sota el qual realment s'executa el procés. Si llances un script amb sudo, $EUID valdrà 0 (root), mentre que $UID conserva l'usuari original. L'uso per comprovar privilegis abans d'accedir a recursos protegits del sistema, com instal·lar paquets o modificar /etc. En desplegaments cloud amb AWS o Azure, és habitual veure if [ '$EUID' -ne 0 ]; then per forçar elevació de permisos.

6. $UID – ID d'usuari realTot i que menys utilitzat directament, $UID complementa a $EUID. Quan un script necessita saber qui el va invocar (no qui l'executa efectivament), $UID dóna aquesta resposta. En eines d'auditoria que desenvolupem per a clients, registrem tant $UID com $EUID per traçar la identitat en logs de ciberseguretat.

7. $BASH_VERSION – Versió de BashNo tots els sistemes tenen la mateixa versió de Bash. Amb $BASH_VERSION podem comprovar si l'intèrpret suporta característiques modernes com arrays associatius o expansions avançades. En projectes d'IA que requereixen manipulació de grans volums de dades, ens assegurem que la versió sigui 4.0 o superior. Aquesta comprovació prèvia evita sorpreses en entorns legacy.

Aquestes set variables són la base de gairebé qualsevol script ben escrit. Dominar-les et permetrà construir automatitzacions més segures, depurar errors amb precisió i mantenir un codi portable. A Q2BSTUDIO les apliquem diàriament en el desenvolupament d'aplicacions a mida, integracions amb Power BI, agents d'intel·ligència artificial, i desplegaments al núvol. Si necessites un equip que entengui la importància dels detalls tècnics, no dubtis a contactar-nos.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.