Question

J'essaie de lire le contenu d'une carte RFID avec un script bash utilisant un lecteur RFID que j'ai obtenu de SparkFun, mais le morceau de code le plus prometteur que j'ai trouvé pour lui est:

#!/bin/sh
while :
do
  rfid=`screen /dev/cu.usbserial-A600JNHR 9600`  
  echo "RFID #: $rfid"  
  sleep 1  
done

Ce qui fait ce qu'il est censé, seulement il ne sort jamais screen, donc la variable ne peut pas être vérifiée par rapport à une balise connue pour effectuer une action.

Ma question: que dois-je faire pour obtenir la balise dans une variable afin que je puisse l'utiliser pour vérifier et effectuer une action? Ce morceau de code va-t-il mal, ou ai-je besoin d'ajouter une ligne ou deux supplémentaires pour traiter les données?

Était-ce utile?

La solution

Cela peut fonctionner pour vous

#!/bin/bash
while read -r rfid; do
  echo "RFID #: $rfid"  
  sleep 1  
done < /dev/cu.usbserial-A600JNHR

Autres conseils

Je l'ai eu merci Siegex J'ai vérifié et j'avais utilisé Tty au lieu de Cu pour le code, ici j'avais donné le défaut que j'avais trouvé et quand je l'ai changé, j'ai attrapé le tty.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top