Jeśli masz osobisty katalog bin / na swojej ścieżce (np. / Home / user / bin, umieść tam skrypt powłoki o nazwie „skrypt” (taka sama jak nazwa pliku binarnego), o następującej treści:
#!/bin/bash
export SCRIPT_RUNNING=1
exec /usr/bin/script # full path to your script(1) binary
Teraz, w ramach uruchomionego skryptu, możesz przetestować zmienną środowiskową SCRIPT_RUNNING i na tej podstawie zrobić wszystko, co chcesz.
EDYTOWAĆ:
W rzeczywistości jest o wiele łatwiejszy sposób. Poniższe słowa mówią wszystko, utwórz trzy pliki: ~ / bin / script, ~ / bin / script-shell i ~ / .scriptrc:
~ > ls ~/bin/script ~/bin/script-shell ~/.scriptrc
-rw-r--r-- 1 roadowl users 23 Oct 18 16:52 /home/roadowl/.scriptrc
-rwx------ 1 roadowl users 49 Oct 18 16:53 /home/roadowl/bin/script
-rwx------ 1 roadowl users 56 Oct 18 16:55 /home/roadowl/bin/script-shell
~/bin > cat script
#!/bin/bash
exec /usr/bin/script -c script-shell
~/bin > cat script-shell
#!/bin/bash
exec /bin/bash --rcfile /home/bjd/.scriptrc
~/bin > cat ~/.scriptrc
export PS1="[script] "
Jeśli twoja bieżąca powłoka jest bash, nie zapomnij uruchomić hash -rpo utworzeniu tych plików, aby upewnić się, że ~ / bin / script jest uruchamiany, gdy „skrypt” zostanie wprowadzony jako polecenie (sprawdź za pomocą which script).
Tak jak poprzednio, pamiętaj, że musisz mieć ~ / bin w ŚCIEŻCE, poprzedzającej standardową ścieżkę, aby to zadziałało.
scripti ma otwarte tty, również spowoduje fałszywy alarm.