Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- sh /home/ubuntu/Desktop/test.sh -f /home/u/Desktop/ -p 'TEST'
- #!/bin/bash
- valid=0
- file_arg=""
- display_help=""
- column=""
- pattern=""
- while getopts f:d:s:m: opt
- do
- case "$opt" in
- d) display_help=$OPTARG
- ;;
- f) file_arg=$OPTARG
- ;;
- c) column=$OPTARG
- ;;
- p) pattern=$OPTARG
- ;;
- *) valid=1
- break
- ;;
- esac
- done
- if [ $valid -eq "0" ]
- then
- if [ $pattern != "" ]
- then
- cat $file_arg | grep $pattern
- else
- cat $file
- fi
- else
- echo -n "Usage: FILE -f <name> | COLUMN -> -c <name> | HELP -> -d | PATTERN -> -p <expression>"
- fi
- #!/bin/bash
- # switch around valid, convention is 1 == true and 0 == false
- valid=1
- file_arg=""
- display_help=""
- column=""
- pattern=""
- # getopt patterns need to match following case statement
- while getopts f:d:c:p: opt;
- do
- case $opt in
- d) display_help=$OPTARG
- ;;
- f) file_arg=$OPTARG
- ;;
- c) column=$OPTARG
- ;;
- p) pattern=$OPTARG
- ;;
- *) valid=0
- break
- ;;
- esac
- done
- # changed value to reflect true false convention
- if [ "$valid" -eq "1" ]
- then
- # string comparison in bash should be done using specific operators
- if [ -n "$pattern" ]
- then
- cat $file_arg | grep $pattern
- else
- # typo, this should be file_arg?
- cat $file_arg
- fi
- else
- echo -n "Usage: FILE -f <name> | COLUMN -> -c <name> | HELP -> -d | PATTERN -> -p <expression>"
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement