Linux & Terminali

POSIX sh vs Bash (portability)

Në shqip: POSIX sh kundrejt Bash

ShpjegimiSQ

/bin/sh në Ubuntu dhe në imazhet Alpine nuk është bash, por një shell më i thjeshtë (dash, ash). Veçoritë e bash-it si [[ ]] ose vargjet aty s'punojnë. Nëse skripti ka #!/bin/sh, shkruaj vetëm POSIX.

EnglishEN

/bin/sh on Ubuntu and in Alpine images isn't bash but a simpler shell (dash, ash). Bash features like [[ ]] or arrays don't work there. If a script starts with #!/bin/sh, stick to POSIX.

Si ta mendosh

Si të shkruash në gjuhë standarde që ta kuptojë çdokush, jo në dialekt.

Lexoje në anglisht

Like writing in the standard language everyone understands, not in dialect.

Shembull kodibash

#!/bin/sh
[ -f .env ] && echo "ok"    # POSIX
# [[ -f .env ]]  ← vetëm bash

Terma të lidhur