How split a file in words in unix command line?
Using tr:
tr -s '[[:punct:][:space:]]' '\n' < file
Using sed
:
$ sed -e 's/[[:punct:]]*//g;s/[[:space:]]\+/\n/g' < inputfile
basically this deletes all punctuation and replaces any spaces with newlines. This also assumes your flavor of sed
understands \n
. Some do not -- in which case you can just use a literal newline instead (i.e. by embedding it inside your quotes).
The simplest tool is fmt:
fmt -1 <your-file
fmt designed to break lines to fit the specified width and if you provide -1
it breaks immediately after the word. See man fmt
for documentation. Inspired by http://everythingsysadmin.com/2012/09/unorthodoxunix.html