question in shell script - Shell Scripting

This is a discussion on question in shell script - Shell Scripting ; Hello guys, I need a little help to solve this question Write a Bourne shell script which: • Has one command line argument. • If the command line argument is a directory then the script should output the number of ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: question in shell script

  1. question in shell script

    Hello guys,
    I need a little help to solve this question

    Write a Bourne shell script which:
    • Has one command line argument.
    • If the command line argument is a directory then the script should output the number of files in the directory.
    • If the command line argument is an ordinary file then the script should output whether or not the file has execute permission for the file owner.
    • If the command line argument is neither a file or directory then the script should output an appropriate error message.
    • If no command line argument is supplied then the script should output an appropriate error message.

  2. Re: question in shell script

    What do you think of the following:

    #!/usr/bin/env bash

    if [[ $# -gt 1 ]]
    then
    echo "to many args"
    exit 1
    elif [[ $# -eq 0 ]]
    then
    echo "No args were supplied"
    exit 2
    fi

    if [[ -d $1 ]]
    then
    total=$(ls $1|wc -l)
    echo -e "Total files in folder = $total"
    elif [[ -f $1 ]]
    then
    permissions=$(ls -al $1|awk '{print substr($1,0,4)}')
    if [[ $permissions =~ x ]]
    then
    echo "File is executable"
    else
    exit 3
    fi
    else
    echo "The command line arg is neither a file nor folder or doesn't exist"
    exit 4
    fi

+ Reply to Thread