I work 12 hour shifts also (they're only meant to be 8

) and I do best when I have a LOT to choose fromt. Most of the people I work with get take out and I'm SO WEAK to restaurant food. Here are a few things that help me:
Eat early. If I eat lunch at 11, I'm not going to buy pizza with everybody at noon.
Bring various textures/types of food. Yogurt, fresh fruit, soup, cottage cheese, sandwiches, frozen dinners, a plate of leftovers, etc. Especially left overs - usually people tell me that it smells good, looks good etc and that makes me feel not so punished that I'm not eating a slab of lasagna and a baguette of garlic bread! In short, if I have more to choose from, I'm more likely to eat.
Snack/graze. No need to eat a lot at one meal. Have a cheesestick and an apple. Then if you are on a run and somebody wants McDonalds, you aren't really hungry so you'll be fine with a salad.
Have a good magazine or book to share lunch with. Don't make that bowl of soup your focus. Then you're thinking about how you're only eating a bowl of soup, and wouldn't ______ be good also. Have your soup while you have some YOU time. No babies, husbands, grocery shopping or cleaning on your mind. Just indulge a bit and rest while you re-fuel.
Hope this helps!