help on umask

hai guys ,
i am having problem in getting the knowledge about umask.
actually when i am putting command as umask some value is coming like 0022 by defalut.
we can change its value also.
but the main thing is thye file permisiion actually depends upon umask.how is it depends upon umask i want to know.
if i will change the value of umask file permisiion value is also getting changed.
so plz help me out on this issue of umask. and how the calculation is really going on.
replay ASAP

Did you try to, like, look for documentation?

umask - Wikipedia, the free encyclopedia

When a file is created, the program which creates it requests a permission mask. This mask gets ANDed with the compliment of the umask, and the file is created with the resulting permissions.

ya i have gone through that one.
but the main thing is is there any specification is that we have to keep the umask value as 022 or anything else.
so here by changing the value of umask we can chnage the file permisiion also.so no need to use chmod command.if we will get the shortcut solution about the calculation of umask we can come to know how is it really possible.
so just help me out to know better details regartding this umask.
and if we want to change the permisiion of all the files we can do it by using one command of umask or not.
so plz help me out quickly

and onthing more i want to know that why file permisiiion is depending upon the umask.what is the use of this umask
without this we can do or not

If you were not allowed to change it under any circumstances, it ought to be impossible. But you can. However, you should be aware of the security implications. If you set it too loose, people will be creating private files in their home directories which are readable by anyone -- if that's acceptable then go ahead. (Setting it tighter than the default is usually not a problem.)

Sounds like you might be barking up the wrong tree, though. Could you describe what problem you are trying to solve? If you want files in a shared directory to be created with specific permissions, maybe your platform would offer a facility for this by other means (for example, by using the setgid bit on the directory, on some platforms).

i want to change the file permisiion without using any command.mean i want to change it using umask only.so i want to know without doing any calculation shall we come to know that what is the vlaue of file permission like is it 0666 or anyother.but without doing any calculation.we can do like this or not?
thats what i want to know
thank u

You cannot change the permissions on already created files by changing the umask. It affects the permissions when the file is created, but after that, you need to use chmod to change permissions.

If you know your umask and the file mode passed in when a file is being created, you can figure out what permissions the file is going to have, but there is a simple boolean calculation involved, and if you don't want to perform that, you cannot magically know the answer.

If your umask is 000 then the file will have whatever permission the creating application requested (typically 666 or 644). If your umask is 077 then the file will have the "group" and "other" permission bits forced to zero, and your own permission set to whatever the application requested (typically 600). The number of possible combinations is quite small (and only a fraction of them are ever seen in practice) and the calculation is not at all hard to do in your head.