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
man iconutil) it will change a folder (normally with the extension of
.iconset) of png images (icon_16x16.png, firstname.lastname@example.org, icon_32x32.png, email@example.com, icon_128x128.png, firstname.lastname@example.org, icon_256x256.png, email@example.com, icon_512x512.png, firstname.lastname@example.org) into a proper