You didn't say under which shell you are running your code (there is no such thing like a "Linux shell"), and the syntax you are used, doesn't resemble any of the shells which are typically available under Linux. Are you looking for a Posix-shell solution? In this case, your 'for' statement doesn't make any sense. Have a look at
Shell Command Language ; you find the 'for' statement described in section 2.9.4.
It would also help if you would describe with a few words, what your statement is supposed to do. While I have a coarse knowledge about how to write loops in the Windows batch language, I don't know all the gory details.
Also, since spacing is important, always post your code within code tags, otherwise we can not see well, where you have white space in your code. Please reformat your post accordingly.
Finally, one recommendation: I have the impression that you try to replace your Batch script statement by statement by shell commands. This approach has a good chance to fail. Instead, just destill the idea what your Batch script is supposed to do, and write it from scratch in the shell of your choice.