If I upload a file. Is that file will be divided into chunks and will be shared and distributed to other peer nodes. Or the whole file will be shared?
Yes and no.
Your file will be divided in chunks but those are never leaving your device unless somebody requests a chunk or the whole file.
Each “chunk” is inside an object to which corresponds its unique hash. Sometimes this object is a file, a directory or a piece of the file.
How can I share the link or the hash to the others? so that they can download it?
You need to use a gateway IPFS->HTTP or they need to use IPFS to download the files from the network.
Have you looked into https://orion.siderus.io as an IPFS desktop client? It might help with the getting started
Nice this is what I’m looking for.