Finding all the invariant subspaces of an operator $\ T(x_1, x_2, \ldots, x_n) = (x_1, 2x_2, 3x_2,\ldots, n x_n)$

I have an operator $$T\in \mathcal L(\mathbb{F}^n)$$ defined as $$\ T(x_1, x_2, \ldots, x_n) = (x_1, 2x_2, 3x_2,\ldots, n x_n)$$ $\mathbb{F}$ is either $\mathbb{R}$ or $\mathbb{C}$.

This is from Linear Algebra Done Right, and I'm tasked with finding a) the eigenvectors and values, and b) all the invariant subspaces...

a) I'm pretty sure we have eigenvalue-eigenvector pairs $$1, (1, 0,\ldots,0)\\2,(0,1,\ldots,0)\\\vdots\\ n, (0,0,\ldots,n)$$ found by solving the system of equations for $T(x_1,x_2,\ldots,x_n)=\lambda(x_1,x_2,\ldots,x_n)$.

b) is what I'm having trouble with. I'm inclined to believe it only has linear combinations of the eigenvectors and the obvious ones (like $\{0\}$) as subspaces.

I think that if you have a subspace $W$ and $k$ vectors $$W = \{a_0 v_0 + \ldots + a_k v_k | a_i \in \mathbb{F}, v_i \in W,i=1,\ldots,k\}$$ then its only invariant if there are $v_0,\ldots,v_k$ themselves invariant under $T$?

Because then \begin{align}Tw &= a_0 Tv_0 + \ldots + a_k Tv_k\\Tw &= a_0 \lambda_0 v_0+\ldots+a_k \lambda_k v_k\end{align} If it's not, we have a sum involving a vector not in $W$.

Am I on the right track?

Since all eigenvalues are different then any set of eigenvectors define an invariant subspace. So, there are $2^n$ such invariant subspaces.