Лучшее руководство по Передача параметров Shell в 2024 году. В этом руководстве вы можете изучить Передача параметров Shell
Мы можем в реализации сценария Shell для передачи параметров сценария, сценарий принимает параметры вформате: $ п.п представляет собой число, 1 для первого выполнения параметра сценария, 2 для второго параметра для выполнения сценария, и так далее rururu
Следующие примеры мы передаем три параметра сценария, и выходы, где $ 0 имя файла для выполнения:
#!/bin/bash # author:本教程 # url:www.w3write.com echo "Shell 传递参数实例!"; echo "执行的文件名:$0"; echo "第一个参数为:$1"; echo "第二个参数为:$2"; echo "第三个参数为:$3";
Установить исполняемые разрешения на сценарий и выполнить сценарий, вывод выглядит следующим образом:
$ chmod +x test.sh $ ./test.sh 1 2 3 Shell 传递参数实例! 执行的文件名:./test.sh 第一个参数为:1 第二个参数为:2 第三个参数为:3
Кроме того, существует несколько параметров для обработки специальных символов:
обработка параметров | объяснение |
---|---|
$ # | Число параметров, передаваемых в скрипт |
$ * | В одной строке отображаются все параметры, передаваемые в сценарии. Такие, как "$ *" с "" "посылкой в этом случае, форма" $ 1 $ 2 ru. $ п "вывод всех параметров. |
$$ | Текущий процесс идентификационный номер сценария работает |
$! | И, наконец, процесс, выполняемый в фоновом режиме идентификационного номера |
$ @ | * $ С такой же, но когда вы используете кавычки, и возвращает значение каждого параметра в кавычках. Такие, как "$ @" с "" "посылкой в этом случае, в виде" $ 1 "" $ 2 "ru." $ N "вывод всех параметров. |
$ - | Shell отображает текущий параметр , чтобы использовать, и установите команду и ту же функцию. |
$? | Отображает статус выхода последней команды. 0 указывает на отсутствие ошибок, а также любое другое значение указывает на ошибку. |
#!/bin/bash # author:本教程 # url:www.w3write.com echo "Shell 传递参数实例!"; echo "第一个参数为:$1"; echo "参数个数为:$#"; echo "传递的参数作为一个字符串显示:$*";
Выполните сценарий, вывод выглядит следующим образом:
$ chmod +x test.sh $ ./test.sh 1 2 3 Shell 传递参数实例! 第一个参数为:1 参数个数为:3 传递的参数作为一个字符串显示:1 2 3
$ * И $ @ разница:
#!/bin/bash # author:本教程 # url:www.w3write.com echo "-- \$* 演示 ---" for i in "$*"; do echo $i done echo "-- \$@ 演示 ---" for i in "$@"; do echo $i done
Выполните сценарий, вывод выглядит следующим образом:
$ chmod +x test.sh $ ./test.sh 1 2 3 -- $* 演示 --- 1 2 3 -- $@ 演示 --- 1 2 3