Before we talk about "how to harass" you first need to know why...
Why do you want to harass Zerg early?
The Zerg race is like a virus, it will spread out and overwelm you.
So, if you don't want to be overwelmed, you will have to deny your opponent from spreading out.
This is where a harass comes into play: You essentially prevent your opponent from performing a part of his plan. By placing your Bunker at the bottom of his ramp, you delay him from performing an Fast Expand and sending Zerglings towards your base / expansion / ...
As a bonus, you force him to create counter units against your bunker. This allows you to anticipate...
Why can't I keep the pressure up?
The Bunker is like a firewall, it will work until the virus takes it down.
BUT! As you see: Unless you have planning on performing a cheese inside his base, you will be unable to keep up the pressure. This is why you only send what you need for the harassment to work and no more. So that you can keep your defense up, take the Xal Naga towers, and so on...
How can I keep the pressure up?
The law of diminishing returns: Putting too much effort into something specific isn't worth it.
So, once your harassment is in place forget about it. Instead, work towards your next harassment.
Your opponent will manage to start spreading out so we need to figure out three things:
- Where does your opponent spread to? --> Scouting
- How can I efficiently prevent or deny him from spreading out? --> Harassment
- What unit composition will he use to overwelm me? --> Scouting
As your opponent has Zerglings and Banelings or Roaches, your Marines will not help you in preventing him from the spread. They aren't fast for scouting purposes either. But, there is an unit in the Terran repository which answers these three questions quite well! The Hellion:
When playing Zerg, Hellions can also be used to ravage Drone lines. They are also effective against Zerglings but will fall to larger numbers of units quite quickly. With good micro, Hellions can take out large numbers of Zerglings (even Roaches prior to their range buff in patch 1.12 1).
This fast driving unit allows you to gain excellent map control to figure out where your opponent is, with a bunch of them you can easily take out Drones and Zerglings. As Roaches and Banelings are slower they are less likely to be at his non-natural expansions. And if they are they probably aren't in his natural base, allowing you to let the harassment take place if he didn't build up defense against it.
So, together with scanning his creep for buildings this perfectly answers the questions!
But what about Banelings and Roaches?
If the virus gets stronger, so should you.
Let's see how useful your Rax still is and what else you can use the Fact for:
Counter against Roaches:
Marauders, instead of wasting minerals into self-suicidal Marines you can now reuse your Rax.
Tanks, in an unsieged mode do nice DPS and can be turned into sieged mode against swarms.
Counter against Banelings:
Marines, if you have any left, can be spread out to waste the Banelings.
Marauders, again, have Consecutive Shells and can tank Baneling damage.
Hellions, can kite Banelings if you micro properly.
A word of caution: Don't take Marauders out alone on the battlefield, they are easily overwelmed.
Supported by Hellions in the front and/or Tanks in the back they are a deadly anti-ground force.
Don't forget to expand when you move out!
But what about Mutalisks and burrowed Roaches?
If you don't take the necessary precautions, a virus will infect you.
You can do four things, perhaps combine them:
AA turrets, a static defense. A must for your mineral line, also helps you see cloaked Roaches.
An armory, which is essentially needed for a Mechanical play-style. Besides allowing you to do upgrades for both Vehicles and Air, they give you access to the powerfull Thor. Word of caution is that this is a slower unit and is more a kind of static defense, they should only be taken on the field if you have enough map control or AA turrets in your base to anticipate your opponent...
A starport, which gives you access to vikings, hellion drops, raven, banshees, and BC!
Stimmed Marines, just swap addons with a Factory and you can quickly transition into them.
Vikings are also useful to take out overlords/seers and become essential against later brood lords.
You are talking about some kind of Mechanical play? Interesting!
Sometimes, you have to use 'the stuff that you barely use' a lot!
This is a popular way to deal with Zerg, see the Mech tree in the left side at LP II - Terran Match-ups.
If this doesn't work out, it also lists a 3 Rax +1 Timing Push and the fresh 4OC economy-wise play.
Why does an attack I planned fail?
Turn your opponent crazy! But secure your expansions against a counter attack...
Don't focus on getting a single thing out, if the Zerg figures out that you are going to attack something specific (he can figure that out by creep, which gives vision; overlords and burrowed units) he will have his army ready to counter you. Instead, you might want to attack at two places at the same time: Attack the closest expansion with your army while dropping hellions at one of his other expansions or his base; similar you could kite units away, or force them to run away by using the Raven's abilities...
Bonus: Demonstration VOD
Because a video tells you more than a thousand words.
In a 1:1:1 setting, I found a replay for you that has a mix of game-play summed up in this answer.
Although I couldn't find better quality because it's RO32: GSL Season 3 - TheBestfOu VS Liquid`Ret
Unless you don't care about a non-english version that starts with an advertisement.