Что означал специальный символ в строке «шебанг»?

Что означал специальный символ в строке «шебанг»?

Я видел сценарий, подобный приведенному ниже,

#! /bin/zsh -
del=10
rm -f /mnt/md0/capture/DCN/*(ND.Om[1,$del])

Какова была цель добавления -строки «шебанг»?

решение1

A - или -- сигнализирует об окончании опций и отключает дальнейшую обработку опций. Это означает, что bash не примет ни одну из своих опций. Любые аргументы после -- рассматриваются как имена файлов и аргументы.

Аргумент - эквивалентен --. Это делается для повышения безопасности скрипта. Некоторые пользователи могут выполнять подмену root скрипта на основе setuid. Чтобы избежать подмены интерпретатора, вам нужно добавить -- в #!/bin/bash. Это редкая, но возможная атака.nixCraft

Связанный контент