Shingles is a reactivation of the chickenpox virus within a person's body. So you can't catch shingles from anybody. Somebody with shingles can transmit the virus, though, and cause chickenpox in somebody who hasn't had the disease or vaccine. So people with shingles are generally told to stay away from babies, pregnant women, and people who never had chickenpox.
The blisters from shingles can last about a week, but the pain can last up to 3 months. There are prescription medications that can help, though.