Hmm..
There are many differences between batting in shorter version & longer version:
1) In shorter version, the rules suit the batsman, like One bouncer per over rule. A fixed set of fielders can be outside circle for powerplay overs etc.
2) In shorter version, the need is to restrict number of runs more than taking the wickets. This forces the captains to set a bit defensive fields.
3) In shorter version, a bowler can only bowl 4 (T20) or 10 (ODI) overs per match. So a bowler's spell will be of 2 or 3 or 4 overs(T20) or 5 or 6 overs (In ODIs). That reduces the chances of a bowler working on a batsman.
4) In the longer version, you have to face more number of balls, so there can be more good balls and it takes just one good ball to get the batsman out. So more number of balls, more chances of getting a batsman out.
5) In the longer version, pitch condition & the condition of the ball changes over the time (good bowlers can take of advantage of these change in conditions), there by a good batsman has to be able to adjust to changing conditions.
6) In the longer version, you have to concentrate for long periods. You have to be constantly thinking, since the bowler tries to out-think you. If you lose your concentration for just one ball, you are gone.
So, a batsman's weaknesses can be exploited better by a good bowler in the longer version of the game. A great batsman quickly overcomes his weaknesses. Flaws in a batman's technique develop over a period. A great batsman can get those flaws ironed out before it affects the team in many matches. Great batsmen can also cover those weaknesses in their technique by reducing those shots that expose their weakness, by adjusting footwork, by adjusting body movement, by adjusting the batting stance, by adjusting the way they hold the bat etc. A great batsman can also adjust to changes in pitch condition & the change in condition of the ball.