Como executar executar ações diferentes de um script

1

Como posso executar comandos diferentes de um script? Por exemplo, se eu quiser executar myscript new filename para criar este arquivo e executar myscript del filename para excluir este arquivo.

Neste momento, tenho um script que recebe a variável e pré-forma uma ação:

#!/bin/bash

for var in "$@"
      do
        touch $var".txt"
      done
    
por jackson 03.08.2015 / 22:59

3 respostas

1

Você pode usar este script:

#!/bin/bash
if [[  == 'new' ]]; then
  touch "" && echo "File  is created"
elif [[  == 'del' ]]; then
  rm "" && echo "File  is removed"
else
   echo "THe first srgument can be 'new' or 'del'"
fi
  • Se o primeiro argumento do script for new , o nome do arquivo fornecido no segundo argumento será criado e o usuário será notificado

  • Assim, se for del , o arquivo fornecido em será removido e o usuário será notificado

  • Em outros casos, o usuário receberá uma notificação sobre o uso correto

Exemplo:

$ ls -1
scr.sh

$ ./scr.sh new foo
File foo is created

$ ls -1
foo
scr.sh

$ ./scr.sh new bar
File bar is created

$ ls -1
bar
foo
scr.sh

$ ./scr.sh del foo
File foo is removed

$ ls -1
bar
scr.sh

$ ./scr.sh foobar
THe first srgument can be 'new' or 'del'
    
por heemayl 03.08.2015 / 23:07
0

Tenho certeza que você sabe como os argumentos funcionam ($ 1, $ 2, etc.) Você precisará criar uma declaração if:     if ["$ 1" == "del"]       então         rm $ var     fi

Tutorial: link

    
por Wilhelm Erasmus 03.08.2015 / 23:05
0

no shell script você pode obter os argumentos usando $ n onde n é a posição do argumento.

Portanto, se você quiser executar # myscript new <filename> , a ação nova poderá ser obtida usando .

Você pode criar um bloco condicional simples para realizar ações diferentes, como:

if [ == "new" ]; then .... .... fi

Deixe-me saber se você não pode perceber como continuar e eu vou te ajudar! Boa sorte.

    
por lenord 03.08.2015 / 23:15