Non-interactively create one partition with all available disk size
This is disgusting to me, but it works:
echo -e "n\np\n1\n\n\nt\nc\na\n1\nw" | fdisk /dev/sdb
I would like to know a more prudent or elegant way to accomplish this. The entire boot record and partition table is being zeroed prior to this task, so we can trust that partition 1 is available.
Take a look at parted which can be used in command line mode for scripting. sfdisk can also be scripted but note the caveats about GPTs and partition sizes.
sfdisk
echo 'start=2048, type=83' | sudo sfdisk /dev/sdX
should fill a disk with a single partition.
See: https://superuser.com/questions/332252/creating-and-formating-a-partition-using-a-bash-script/1132834#1132834 for a detailed explanation of the command syntax, including the type=83
part and more.