Você nem precisa usar :; você pode apenas > file(pelo menos em bash; outras conchas podem se comportar de maneira diferente).
Em termos práticos, não há diferença real aqui (embora a sobrecarga minúscula de chamar /bin/touchseja uma coisa).
touchno entanto, também pode ser usado para modificar os carimbos de data e hora em um arquivo que já existe sem alterar ou apagar o conteúdo; além disso, > fileexplodirá qualquer um fileque já exista. Isso pode ser contornado usando >> file.
Outra diferença touché que você pode criar (ou atualizar o registro de data e hora) vários arquivos de uma vez (por exemplo touch foo bar baz quux) com uma sintaxe mais sucinta do que com o redirecionamento, onde cada arquivo precisa de seu próprio redirecionamento (por exemplo >foo >bar >baz >quux).
Usando touch:
$ touch foo; stat -x foo; sleep 2; touch foo; stat -x foo
File: "foo"
Size: 0 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (991148597/redacted) Gid: (1640268302/redacted)
Device: 1,5 Inode: 8597208698 Links: 1
Access: Fri May 25 10:55:19 2018
Modify: Fri May 25 10:55:19 2018
Change: Fri May 25 10:55:19 2018
File: "foo"
Size: 0 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (991148597/redacted) Gid: (1640268302/redacted)
Device: 1,5 Inode: 8597208698 Links: 1
Access: Fri May 25 10:55:21 2018
Modify: Fri May 25 10:55:21 2018
Change: Fri May 25 10:55:21 2018
Usando o redirecionamento:
$ > foo; stat -x foo; sleep 2; >> foo; stat -x foo
File: "foo"
Size: 0 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (991148597/redacted) Gid: (1640268302/redacted)
Device: 1,5 Inode: 8597208698 Links: 1
Access: Fri May 25 10:55:21 2018
Modify: Fri May 25 10:56:25 2018
Change: Fri May 25 10:56:25 2018
File: "foo"
Size: 0 FileType: Regular File
Mode: (0644/-rw-r--r--) Uid: (991148597/redacted) Gid: (1640268302/redacted)
Device: 1,5 Inode: 8597208698 Links: 1
Access: Fri May 25 10:55:21 2018
Modify: Fri May 25 10:56:25 2018
Change: Fri May 25 10:56:25 2018
touchser autônomo funcionará da mesma maneira que você deve usar.