[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT ]bash Problem



Hermann <hgk1952@zoho.com> (Sa 05 Okt 2013 21:41:39 CEST):
> 
> cd /tmp/
> 
> echo Number of arguments:  $#
> 
> newdir=""
> 
> while (( "$#" )); do
>           echo $1
>           newdir="$newdir $1"
>           echo "$newdir"
>             shift
> done
> echo "$newdir"
> mkdir "$newdir"
> exit

Andere Alternativen, unabhängig von der Sinnhaftigkeit, die 
aber alle den Vorteil haben, auch mit komischen Sonderzeichen (vor allem
Leerzeichen) in den Parametern umgehen zu können:

    #!/bin/sh
    cd /tmp && mkdir "$@"

oder (besser)

    #! /bin/bash
    mkdir "${@/#//tmp/}"


oder (noch besser? weil verständlicher?)
    #! /bin/bash
    for dir
    do
        dirs+=("/tmp/$dir")
    done
    mkdir "${dirs[@]}"

oder

    #! /usr/bin/perl
    mkdir 0777, map { "/tmp/$_" } @ARGV;

-- 
Heiko

Attachment: signature.asc
Description: Digital signature


Reply to: