By definition, the lines must intersect for them to be perpendicular. Just as is the case in two dimensions, there’s only one perpendicular to a line through a given point. On the other hand, there’s an infinite number of vectors perpendicular to the line’s direction, so you can’t simply pick a convenient one (which is what it appears that you did) and expect to get that unique perpendicular line. Most choices, including the one you made, will result in skew lines—no intersection at all.
You have to ensure that the lines intersect. A straightforward way to do that is to find a point on the original line such that its position vector is perpendicular to the line’s direction. In other words, solve $(3,-1,1)\cdot(3t-1,2-t,t)=0$ for $t$. This also happens to be the intersection point that you’re looking for in the first place, so you’re done.
That equation has another geometric interpretation, by the way. The plane $3x-y+z=0$ is perpendicular to the given line. Their intersection is exactly the point that you’re looking for. If you substitute the coordinates of a generic point on your line into this equation, you get exactly the same equation in $t$ that we have in the previous paragraph.
Incidentally, a direction vector for the perpendicular can be computed directly, without solving any equations. Intersecting lines are coplanar, so the perpendicular we’re looking for must also be perpendicular to the normal of the plane defined by the origin and the original line. Take any two points $p_1$ and $p_2$ on the line, say, for $t=0$ and $t=1$; a direction vector of the perpendicular is then $(3,-1,1)\times(p_1\times p_2)$. This still leaves you with having to compute the lines’ intersection, so for this problem, the solution described earlier is better.