awk - cut username from mail addresses

Sziasztok,

Van egy mail címeket tartalmazó file.
Szeretném awk-t használva - -gsub fügvénnyel vagy regex-el - kilistázni a username-t.

email.txt sorok minta:

freeroute@gmail.com
free34te@gmail.com
freetoyota@co.uk

Elvárt output:

freeroute
free34te
freetoyota

Sed-el sikerült, awk-val nem jutok előbbre:
sed -E 's/([A-Za-z0-9]+).*/\1/' email.txt or
sed -E 's/@.*//' email.txt

Hozzászólások

awk -F @ '{ print $1 }'

De a egegyszerubb:

cut -f1 -d@

Igen. A kérdésem az akkor, hogy úgy mint a sed-nél, az első string lenne pl. a teljes mail cím. Ezt cserélném a username-re . Mint itt: sed -E 's/([A-Za-z0-9]+).*/\1/' email.txt

Vagy a másik megoldás, hogy az első string lenne a domain, ezt cserélném semmire. Mint itt: sed -E 's/@.*//' email.txt

Ez awk-val megoldható?