Search code examples
linuxbashcut

How to find the last field using 'cut'


Without using sed or awk, only cut, how do I get the last field when the number of fields are unknown or change with every line?


Solution

  • You could try something like this:

    echo 'maps.google.com' | rev | cut -d'.' -f 1 | rev
    

    Explanation

    • rev reverses "maps.google.com" to be moc.elgoog.spam
    • cut uses dot (ie '.') as the delimiter, and chooses the first field, which is moc
    • lastly, we reverse it again to get com