# Classifying similarity classes of matrices based on number of invariant subspaces of a given dimension

I've recently been reviewing some linear algebra, and came across the following problem:

How many similarity classes of $A \in M_{6}(\mathbb{C})$ are there such that $A$ has exactly one two-dimensional invariant subspace?

I'd like to try to understand this using the Jordan Canonical Form, or Rational Canonical Form. Here's what I've considered so far:

Since there is exactly one 2-dimensional invariant subspace, our matrix $A$ cannot be diagonalizable, thus (since we are working over an algebraically closed field) the minimal polynomial of $A$ must contain at least one repeated root. If we have three or more distinct eigenvalues with one dimensional eigenspaces, there will be at least two 2-dimensional invariant subspaces. I conclude that the characteristic and minimal polynomials are of the forms:

$\chi(A) = (x-\alpha_{1})^{a_{1}}(x-\alpha_{2})^{a_{2}}(x-\alpha_{2})^{a_{3}}(x-\alpha_{4})^{a_{4}}$,

$m(A) = (x-\alpha_{1})^{b_{1}}(x-\alpha_{2})^{b_{2}}(x-\alpha_{2})^{b_{3}}(x-\alpha_{4})^{b_{4}}$

where $a_{1} \geq b_{1} \geq 2$, $a_{2} \geq 2$ $a_{i} \geq b_{i} \geq 0$, $\sum_{i=1}^{i=5} a_{i} = 6$, and the $\alpha_{i}$ are distinct.

In general, these seem like some hairy, ad hoc considerations I'm making, and I'm hoping to find a more organized approach to this and similar problems. For example, if we generalize the problem to given $A \in M_{n}(\mathbb{C})$ with $l_{k}$ k-dimensional invariant subspaces, classify the similarity classes of such matrices, is there a good method?
Each Jordan block contains exactly one eigenvector, this implies that there are at most two Jordan blocks. If the Jordan block is not a $1\times 1$ matrix, then it contains exactly one two dimensional invariant subspace. This two observations easily imply that the matrix should be similar to the $6\times 6$ Jordan block, i.e., there are $\mathbb C$ similarity classes (i.e., each class can be identified with the eigenvalue $\lambda\in\mathbb C$)