I am taking the bus from Los Angeles to Cabo San Lucas in Baja Mexico. I was thinking about the possiblility of just taking a cruise ship back to LA rather than the bus again. Do they sell one way rides? can one just wander up in Cabo San Lucas and buy a ticket there?
You can't do it, sorry. You have to board the ship at it's port or origin and cannot just join during the cruise. The only cruises that you can do this on are those that are broken up into segments like the 'round the world cruises.
Many ships will let you board and debark at different ports than on the schedule. However, it has to be a legal trip (e.g., not violate Jones Act/Passenger Service Vessel act) and the ship has to have arrangements to embark/debark with the local customs/immigration agents. For example, last years Seven Seas Mariner repositioning cruise Ft Lauderdale to LA then to Vancouver had a number of people staying on past LA to debark in San Francisco. In addition, there were a number of people that got on in Pt Mugu [sp] instead of LA for the trip to Vancouver. In Europe, I have known many people to embark/debark at ports other than what is in the brochure.
Check with your cruiseline and see what may be available. As for just showing up in Cabo, no way. Ships need to submit manifests 72 hours in advance so that is as late as you can book.
Have fun on your cruise,
"Carpe diem quam minimum credula postero"
Seven Seas Explorer - Miami - Venice - Mar 2017
Silverseas Explorer - Arctic - Aug 2017
Seven Seas Voyager - Rome to Beijing - Oct 2017
Seven Seas Mariner - Lima to Buenos Aires - Jan 2018
Silverseas Explorer - Siberia - Jul 2018
Seven Seas Mariner - Australia Circumnavigation - Dec 2018
I'm trying to recall which, but think it's either Seabourn or Silverseas, has come up with a "design your own itinerary program", allowing guests to board or disembark at any port on the itinerary (as Marc said.... as long it's legal to do so).
But... if the OP is taking the bus to Cabo, not likely that they'd be looking for a Silverseas ride home<G>