В чем смысл следующего, который находится на вершине linux script
#!/bin/bash
return &> /dev/null
Ответ 1
Линия предназначена для защиты пользователей от поиска script.
Когда выполняется script (не из источника, а выполняется), script перейдет к следующим строкам до конца файла.
Когда будет найден script, script просто вернется и ничего не сделает.
Ответ 2
return должен возвращать значение из функции bash.
При использовании точно так же, как в вашем примере, но без &> /dev/null, это недопустимо, потому что return не принадлежит к телу функции bash и будет печатать:
line 2: return: can only `return' from a function or sourced script
Однако кто-то решил скрыть это сообщение об ошибке, выведя вывод на /dev/null.
Другими словами, все это не имеет особого смысла.
Ответ 3
Отбрасывает нежелательный вывод вашей программы. Проверьте эту ссылку, различия между >, 2> и &> очень хорошо объясняются там.
Цитирование:
command & > /dev/null
Этот синтаксис перенаправляет как стандартные выходные сообщения вывода, так и сообщения об ошибках в /dev/null, где оболочка игнорируется.