Зачем использовать bash при выполнении скрипта? [дубликат]

На этот вопрос уже есть ответ:

In предыдущий вопрос мне предложили выполнить:

sudo bash start-dfs.sh

почему не

sudo start-dfs.sh

? Я имею в виду, какая разница bash ?

2
задан 28 January 2016 в 21:51

1 ответ

Сценарий в любой (интерпретируемый) язык, как bash или python, должен быть "интерпретирован" интерпретатором соответствующего языка.

На Linux, это может быть сделано по-разному:

  1. интерпретатор "просят" запустить скрипт включением языка в команде для запущения скрипта:

    <language> <script>
    

    или в Вашем примере:

    sudo bash start-dfs.sh
    
  2. сценарий исполняемый файл и имеет разрешение "попросить", чтобы сам интерпретатор выполнил код в сценарии. от Вашего примера:

    sudo start-dfs.sh
    

    В этом случае, сценарий должен запускаться с хижина , еще нет никакой информации что интерпретатор звонить, как:

    #!/bin/bash
    

    или:

    #!/usr/bin/env python
    

Примечания

  • В случае, если первая опция используется, информация о языке в команде всегда отвергает возможную хижину, неважно, если сценарий является executble или нет.
  • расширение на сценарии (.sh, .py и т.д.) ясно дает понять, какой сценарий это, но игры никакая роль безотносительно в выполнении сценария, в отличие от этого, в окнах.
1
ответ дан 29 January 2016 в 07:51
  • 1
    И необходимо закрыть соединение от одного хоста до открытого это для другого. Таким образом, задача не проста вообще, но у нас есть все, что должно было для нее быть реальным в системе запаса. – Kaim 27 April 2017 в 07:53

Другие вопросы по тегам:

Похожие вопросы: