I have data like this (file is called `list-in.dat`)

```
a ; b ; c ; i
d
e ; f ; a ; b
g ; h ; i

```

and I want a list like this (output file `list-out.dat`) with all items, in alphabetically order (case insensitive) and each unique item only once.

```
a
b
c
d
e
f
g
h
i

```

My attempt is:

```
awk -F " ; " ' BEGIN { OFS="\n" ; } {for(i=0; i<=NF; i++) print $i} ' file-in.dat | uniq | sort -uf > file-out.dat

```

But I end up with all antries *except* those lines which has only *one* item:

```
a
b
c
e
f
g
h
i

```

> 
> How can I get all (unique, sorted) items no matter how many items are in one line / if the field separator is missing?
> 
> 
>