Вы используете хеш-символ в #качестве данных для отправки, но этот символ зарезервирован для комментариев в оболочках
Попробуйте это так:
( # Let run listener in background before trying to send to CAN while true; do msg_candump="$(candump vcan0 -T 1000)" # read CAN for 1 second if [[ ${#msg_candump} > 1 ]]; then #received msg echo "$msg_candump" fi sleep 0.025 # Give system a little breath done ) & PID=$! cansend vcan0 '004#0152FEE400000000' # <- quotes are matter sleep 5 kill -9 $PID