read all args instead of file args because the second arg may not exist