cut entende o argumento $line como um nome de arquivo. Se o seu shell é bash, você pode usar a palavra <<< here:
cut -d' ' -f1 <<< "$line"
Mas, não há necessidade de chamar comandos externos, o bash pode fazer isso com a substituição de parâmetros:
date=${line%|*} # Delete from | to the right.
hour=${line#*|} # Delete up to |.