login shell(not finished)