The calculated distance (air line) between Greifensee and Schaffhausen is approximately 23 miles respectively 37 kilometers.
By car or train, the actual journey to Schaffhausen is certainly longer, as only the direct route (as the crow flies) between Greifensee and Schaffhausen has been calculated here.
Air line (approximately)
37 kilometers
20 nautical miles