Как работать, выполняют различные действия из одного сценария

Как я могу выполнить различные команды из одного сценария? Например, если я хочу работать myscript new filename создать этот файл и работать myscript del filename удалить этот файл.

В данный момент у меня есть сценарий, который получает переменную и формует действие на нее:

#!/bin/bash

for var in "$@"
      do
        touch $var".txt"
      done
1
задан 3 August 2015 в 23:59

3 ответа

Можно использовать этот сценарий:

#!/bin/bash
if [[ $1 == 'new' ]]; then
  touch "$2" && echo "File $2 is created"
elif [[ $1 == 'del' ]]; then
  rm "$2" && echo "File $2 is removed"
else
   echo "THe first srgument can be 'new' or 'del'"
fi
  • , Если первый аргумент сценарию $1 new затем, имя файла, данное во втором аргументе $2, будет создано, и пользователь будет уведомлен

  • Соответственно, если $1 будет del затем, то файл, данный в $2, будет удален, и пользователь будет уведомлен

  • В другом пользователе случаев, будет дан уведомление OS корректный башмак использования

Пример:

$ 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'
1
ответ дан 7 December 2019 в 16:12

Я вполне уверен, Вы знаете, как arguements работают (1$, 2$, и т.д.), необходимо будет создать если оператор: если ["1$" == "del"] затем Учебное руководство $var fi

комнаты: http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html

0
ответ дан 7 December 2019 в 16:12

в оболочке, пишущей сценарий Вас, может получить аргументы при помощи $n, где n является положением аргумента.

Так, если Вы хотите работать # myscript new <filename>, затем новый , действие может быть получено при помощи $1.

Затем Вы могли создать простой условный блок для выполнения различных действий, как:

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

Сообщенный мне, если Вы не можете понять, как продолжить и я помогу Вам! Удача.

0
ответ дан 7 December 2019 в 16:12

Другие вопросы по тегам:

Похожие вопросы: