How do i add icon on .sh file using terminal I need to change .sh file icon only for the single file how can i do it with terminal
Easiest thing to do is is to wrap your script in an app. Platypus (https://sveinbjorn.org/platypus) is an easy to use app that can help you do this (and allow you run the script as an app). 

Also worth mentioning you may want to look at iconutil (man iconutil) it will change a folder (normally with the extension of .iconset) of png images (icon_16x16.png, icon_16x16@2x.png, icon_32x32.png, icon_32x32@2x.png, icon_128x128.png, icon_128x128@2x.png, icon_256x256.png, icon_256x256@2x.png, icon_512x512.png, icon_512x512@2x.png) into a proper .icns bundle.