How to add scratches?
Here is a setup I like to use for adding imperfections that allows for a good amount of control in placement.

To start with, I typically will give imperfections a separate UV map, as it tends to give a bit more control. 

After adding a second UV map, you can use a  Mix RGB node to add(or multiply) the scratches texture to your roughness map. Then, use a node group such as this one from BlendSwap to combine your scratches normal map with your base normals if desired. (See this question for some other solutions on combining normal maps also.)

With that done, it is only a matter of using a gradient texture (or any other procedural texture if needing some other kind of mask) as a mixing factor controlled with a color ramp to determine where the scratches should be. 

You can change the interpolation on the color ramp to something other than linear for a bit more control over the mix as well. 

A node setup like the one shown below  should suffice in most cases, and is adaptable to use in most situations where you might want to add some kind of imperfections to an object. 


click to enlarge

Here is a quick example  with a cylinder using the node setup above: