Here's what I have so far:#!/bin/bashwhile read line; do        DB=$(echo $line | cut -f1)        USER=$(echo $line | cut -f2)        PASS=$(echo $line | cut -f3)        echo DB=$DB USER=$USER PASS=$PASSdone < users.txtAnd a sample of the input file:drupal_1    drupal1 tmmjXSWLdrupal_2    drupal2 FHiJSYHMdrupal_3    drupal3 b7bFNj06drupal_4    drupal4 0AaV62ELAnd output from the script:DB=drupal_1 drupal1 tmmjXSWL USER=drupal_1 drupal1 tmmjXSWL PASS=drupal_1 drupal1 tmmjXSWLDB=drupal_2 drupal2 FHiJSYHM USER=drupal_2 drupal2 FHiJSYHM PASS=drupal_2 drupal2 FHiJSYHMDB=drupal_3 drupal3 b7bFNj06 USER=drupal_3 drupal3 b7bFNj06 PASS=drupal_3 drupal3 b7bFNj06For some reason, each variable is set to the whole line.  When I use echo users.txt | cut -f1 at the command line, it returns the token just fine.
Loop through tab delineated file in bash script
bash
How about this?$ awk '{print DB=$1\tUSER=$2\tPASS=$3}' users.txtDB=drupal_1 USER=drupal1    PASS=tmmjXSWLDB=drupal_2 USER=drupal2    PASS=FHiJSYHMDB=drupal_3 USER=drupal3    PASS=b7bFNj06DB=drupal_4 USER=drupal4    PASS=0AaV62ELI can't tell if you have a problem to solve, or are wondering about a more theoretical issue.