Bash shell script to reverse text file contain using Shell array
Posted in File-management
This script also demonstrate how to use arrays under bash shell script.
#!/bin/bash # Bash shell script to reverse text file contain i.e. concatenate files and # print on the standard output in reverse. This script also demonstrate how # to use arrays under bash shell script. # ------------------------------------------------------------------------- # Copyright (c) 2005 nixCraft project <http://cyberciti.biz/fb/> # This script is licensed under GNU GPL version 2.0 or above # ------------------------------------------------------------------------- # This script is part of nixCraft shell script collection (NSSC) # Visit http://bash.cyberciti.biz/ for more information. # ------------------------------------------------------------------------- FILE="$1" if [ $# -eq 0 ]; then echo "$(basename $0) - file-name" exit 1 fi textArray[0]="" # hold text c=0 # counter # read whole file in loop while read line do textArray[c]=$line # store line c=$(expr $c + 1) # increase counter by 1 done < $FILE # get length of array len=$(expr $c - 1 ) # use for loop to reverse the array for (( i=$len; i>=0; i-- )); do echo ${textArray[$i]} done
Download - Email this to a friend - Printable version
Leave a Reply
We encourage your comments, and suggestions. But please stay on topic, be polite, and avoid spam. Thank you very much for stopping by our site!
Tags: array, arrays, concatenate files, eq, exit 1, expr, find lenght of array, for loop, loop method, shell array, while loop ~ Last updated on: April 9, 2008

