Use bash to read a file and then execute a command from the words extracted


Question

FILE:

hello
world

I would like to use a scripting language (BASH) to execute a command that reads each WORD in the FILE above and then plugs it into a command.

It then loops to the next word in the list (each word on new line). It stops when it reaches the end of the FILE.


Progression would be similar to this:

Read first WORD from FILE above

Plug word into command

command WORD > WORD
  • which will output it to a text file; with word as the name of the file.

Repeat this process, but with next to nth WORD (each on a new line).

Terminate process upon reaching the end of FILE above.


Result of BASH command on FILE above:

hello:

RESULT OF COMMAND UPON WORD hello

world:

RESULT OF COMMAND UPON WORD world
1
15
10/22/2009 5:46:49 AM

Accepted Answer

You can use the "for" loop to do this. something like..

for WORD in `cat FILE`
do
   echo $WORD
   command $WORD > $WORD
done
30
10/22/2009 5:54:19 AM

normally i would ask what have you tried.

while read -r line 
do 
   command ${line} > ${line}.txt
done< "file"

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon