Yes, with exceptions. Many US banks will change foreign currency into US dollars, but the less proportion that activity is for the bank then the higher the fee over the actual international exchange...
Some banks do and others do not. Depends on the bank and the currency. When I got back from Russia I still had about 500 rubles and wanted to exchange them at my bank, but they wouldn't take them....