Извините за путаю,печать поле в Терминал Командования
хорошо, на самом деле я хочу, чтобы отправить серийное сообщение на мой Arduino, который подключен к/DEV/ttyACM0 и это можно сделать, введя следующую команду в терминал
$ echo "Hello Arduino" > /dev/ttyACM0
так, мне нужен мой awk, чтобы отправить команду именно так.
Вот мой PBH.awk файл:
BEGIN{
FS = "[ .]";
RS = "\0";
IGNORECASE = 1;
}{
for (i=1;i<NF;i++){
if(i == 1){
printf("Diketahui : %s\n",$18);}
if($i=="y" && $(i+1)=="=")
{
printf(" Persamaan : %s %s %s %s %s %s %s %s %s %s %s\n",$(i),$(i+1),$(i+2),$(i+3),$(i+4),$(i+5),$(i+6),$(i+7),$(i+8),$(i+9),$(i+10))
inisialisasi = "stty -F /dev/ttyACM0 cs8 9600 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts"
kirim = "echo \"Field2 contains: $2""\" > /dev/ttyACM0"
print | inisialisasi
print | kirim
}
}
}
и вот soalPBH.txt:
Persamaan gelombang berjalan pada seutas tali dinyatakan dengan y = 0,02 sin (20 π t – 0,2 π x). Jika x dan y dalam cm dan t dalam sekon, tentukan:
Тогда я бегу мое AWK с
$ awk -f PBH.awk soalPBH.txt
Моя программа оленья кожа отправьте текст в поле номер 2. С этим что-то не так?
kirim = "echo \"Field2 contains: $2""\" > /dev/ttyACM0"
Я не вижу, что вы вызываете 'awk' в любом месте вашего кода. 'echo' - это команда оболочки. 'print' и' printf ("% s ...", $ 1, $ 2, ...) '- это методы' awk' для записи вывода. Удачи. – shellter
извините, я добавил свой полный код – user2588680