Heat the olive oil in a skillet and sauté the onions until translucent. Add shrimp, garlic, lemon juice, and wine, and cook for 3-4 minutes, stirring occasionally. Make sure all shrimp is pink on both sides.
Stir in parsley and season with salt, pepper, and red pepper flakes (if using). Remove the skillet from heat.
Cook the linguine in a large pan with salted boiling water. Cook until it is still slightly hard to chew (al dente), which is about 2-3 minutes less than the cooking time on the pasta box.
Drain the linguine in a colander and add the pasta to the shrimp scampi in the skillet. Add the butter. Mix everything over low heat for 1-2 minutes.
Reserve approximately 1 cup of the pasta water. If you want your scampi sauce to be a bit more creamy and saucy, add approximately ½ cup at a time to the pasta and stir until creamy.
Serve immediately. Add more fresh pepper and parsley, if desired. Garnish with parmesan cheese.