So after grocery shopping today with my ds, I suddenly discovered I have become one of those mothers that yells in the supermarket

I am so dissapointed in myself, I always said to myself that I would never do that to my son, but OMG he was sooo friggin naughty today, I was ready to burst into tears

He just keeps running away, he screams and kicks when I try to put him in the trolley, he keeps grabbing the vegetables and taking a bite out of them .. what can I do?? Please help me, I don't want to yell at him anymore. HE JUST WON'T LISTEN TO ME I feel absolutely horrible for yelling at him as its not who I am, but I am just so damn frustrated with him not listening..

He does it all the time (at home too, he never listens and I have to resort to raising my voice before he will pay attention) and i'm sure it is normal for his age, but I need help with how to deal with it in other ways rather than yelling

Please tell me its not going to last long, I am at my last tether and I'm scared i'm just going to burst into tears while out in public.