In bash
:
$ type :
: is a shell builtin
$ type true
true is a shell builtin
Sembra che siano gli stessi, ma non danno la stessa traccia di sistema:
$ strace :
strace: :: command not found
$ strace true
execve("/bin/true", ["true"], [/* 82 vars */]) = 0
[snip]
exit_group(0) = ?
Ho provato a differire strace bash -c : 2>:.txt
e strace bash -c true 2>true.txt
, ma non sono riuscito a trovare alcuna differenza tra loro, tranne per le posizioni di memoria.
In dash
:
$ type :
: is a special shell builtin
$ type true
true is a shell builtin
OK, quindi non sono gli stessi. help :
e help true
non sono molto utili e restituiscono lo stesso in bash
e dash
. C'è qualche differenza pratica tra loro, tranne per il fatto che :
salva tre byte e rende gli script meno leggibili?