a single argument is passed by the user (without using the "read" input option) at the terminal command line that creates a directory with that name, or otherwise notifies the user it exists...
Parece que os parâmetros de linha de comando posicionais comuns são o que você precisa:
Código fonte do script para mkdir1
:
#!/bin/sh
mkdir "$1"
Uso
./mkdir1 foo
./mkdir1 foo
mkdir: cannot create directory ‘foo’: File exists
foo
foi criado na primeira vez que executei mkdir1
. Na segunda vez, ele me avisou que já existe.
Isso parece atender às suas especificações, e a leitura não foi necessária.
Explicação
$1
é o primeiro parâmetro posicional. $2
seria o segundo, etc.
Para exemplos mais complexos do que essa pergunta exige, você pode encontrar mais informações sobre parâmetros posicionais de várias fontes, como o bash Wiki de hackers , resumido aqui:
$0 is usually the name of the shell
$FUNCNAME the function name if inside a function, or $0
$1 - $9 the argument list elements from 1 to 9
${10} - ${N} the argument list elements beyond 9
$* all positional parameters except $0
$@ all positional parameters except $0
$# the number of arguments, not counting $0