Es gibt 4 Hauptalternativen, beide haben ihre Macken, Methode 4 hat aus meiner Sicht viele Vorteile.
./script
ist ein Shell-Skript, das mit beginnt#!/usr/bin/php
Methode 1: $ argv
./script hello wo8844rld
⚠️ Bei Verwendung von $ argv ist die Reihenfolge der Parameter kritisch.
Methode 2: getopt ()
./script -p7 -e3
Es ist schwer in Verbindung zu verwenden $argv
, weil:
⚠️ Das Parsen von Optionen endet mit der ersten gefundenen Nichtoption. Alles, was folgt, wird verworfen.
⚠️ Nur 26 Parameter als Alphabet.
Methode 3: Bash Globale Variable
P9="xptdr" ./script
Diese Variablen können von anderen Programmen verwendet werden, die in derselben Shell ausgeführt werden.
Sie werden geblasen, wenn die Shell geschlossen wird, aber nicht, wenn das PHP-Programm beendet wird. Wir können sie dauerhaft einsetzen ~/.bashrc
!
Methode 4: STDIN- Pipe und stream_get_contents ()
Einige Rohrleitungsbeispiele:
Füttere einen String:
./script <<< "hello wo8844rld"
Füttere einen String mit Bash Echo:
echo "hello wo8844rld" | ./script
Füttere einen Dateiinhalt:
./script < ~/folder/Special_params.txt
Füttere ein Array von Werten:
./script <<< '["array entry","lol"]'
Füttere einen JSON aus einer Datei:
echo params.json | ./script
Es funktioniert möglicherweise ähnlich wie fread () oder fgets () , indem Sie die STDIN lesen.
Bash-Scripting-Anleitung