echo ? eltérő eredmények

sh -c 'echo ?'
J L M a d e f j l q v w z

bash -c 'echo ?'

a d e f j J l L M q v w z

Hozzászólások

próbáld ezt, rájössz...

ls -ld ?

ja, tényleg, de hülye vagyok, látszik, hogy rég kezeltem fájlokat shellből, hogy az echo parancs kapcsán ez a triviális dolog nem juttott eszembe!!!! :D :)

Amúgy nincsenek nálam hülye fájlnevek, ilyen logikus nevű fő mappáim vannak ) Vicces volt viszont, hogy a míg a dash Nagybetű-érzékenyen listázta, addig a bash nem ... fura... :)

Semmi fura nincs benne. A dash egy minimalistább shell, szigorúbban POSIX kompatibilis. A Bash tud egy csomó extra dolgot, kényelmi funkciót, sok mindent máshogy kezel, megkönnyít. Ubuntun meg még néhány disztrón (illetve más disztrókon is, ha a user átállítja, ahogy én is tettem) a /bin/sh az a /bin/dash-ra van symlinkelve, hogy a szkriptek, amik ezt használják a shebangben, meg sh -c futtatással, azok ezt a gyorsabb, kompatibilisebb shellt használják, attól még az interkaktív shell, amit a user használ bejelentkezéskor, tty-ban és terminálban, lehet továbbra is Bash, zsh, fish, vagy kinek mi tetszik, mit állított be a userének, vagy shortcut-nak.

Ha neked a Bash megoldása jobban tetszik, használd azt, legfeljebb akkor bash -c segítségével futtatod az echo-t, nem sh-val. Bár én ennek ellene szoktam lenni, ha ne muszáj, ne dependeljük Bash-re. Az sh is megfelelő lenne erre, ami neked kell, ha a rendezés nem tetszik, akkor add így ki a parancsot: echo ? | sort

The world runs on Excel spreadsheets. (Dylan Beattie)