Какой путь в shebang более предпочтителен?

Перейдите в настройки вашего BIOS (когда ваш компьютер запустится и отобразит ключ, чтобы перейти к настройкам BIOS) перейдите в порядок загрузки (или что-то в этом роде) и положите CD / DVD-привод сверху.

Не думаю, что когда вы отформатируете жесткий диск, ваш UEFI исчезнет. Я думаю, он остается на вашем компьютере, а не на вашем жестком диске. Извините, если он ушел. Пожалуйста, убедитесь, что вы смотрите в Интернете, чтобы убедиться, что ваш UEFI исчезает.

Для форматирования вашего жесткого диска без загрузки используйте внешний жесткий диск, если у вас его нет, загрузитесь с вашего живого ubuntu cd (при загрузке, попробуйте ubuntu, он не будет установлен на вашем жестком диске) используйте gparted (приложение) и отформатируйте / удалите свои разделы.

Надеюсь, это поможет.

1
задан 3 January 2016 в 16:47

5 ответов

Лучшая практика такова:

#!/usr/bin/env bash 
#!/usr/bin/env sh
#!/usr/bin/env python

И так далее ...

Когда Ubuntu впервые начал использовать тире, некоторые скрипты сломались. Об этом шла дискуссия. Большинство скриптов были написаны #!/bin/sh, что было ссылкой на / bin / bash. Консенсус таков: автор сценария отвечает за указание интерпретатора. Поэтому, если ваш сценарий всегда должен быть вызван с помощью BASH, укажите его из среды. Это позволяет вам угадать путь, который отличается от разных систем Unix / Linux. Кроме того, он будет работать, если завтра / bin / sh станет ссылкой на другую оболочку, например / bin / wthsh или какую-то другую бессмысленность.

6
ответ дан 25 May 2018 в 15:53
  • 1
    Очевидным альтернативным решением проблемы тире было написать #!/bin/bash. Я согласен с тем, что сценарист отвечает за указание интерпретатора, но все это означает , если вам нужен bash, скажем bash not sh – Martin Bonner 11 August 2017 в 10:10

Лучшая практика такова:

#!/usr/bin/env bash 
#!/usr/bin/env sh
#!/usr/bin/env python

И так далее ...

Когда Ubuntu впервые начал использовать тире, некоторые скрипты сломались. Об этом шла дискуссия. Большинство скриптов были написаны #!/bin/sh, что было ссылкой на / bin / bash. Консенсус таков: автор сценария отвечает за указание интерпретатора. Поэтому, если ваш сценарий всегда должен быть вызван с помощью BASH, укажите его из среды. Это позволяет вам угадать путь, который отличается от разных систем Unix / Linux. Кроме того, он будет работать, если завтра / bin / sh станет ссылкой на другую оболочку, например / bin / wthsh или какую-то другую бессмысленность.

6
ответ дан 25 May 2018 в 15:53

Лучшая практика такова:

#!/usr/bin/env bash 
#!/usr/bin/env sh
#!/usr/bin/env python

И так далее ...

Когда Ubuntu впервые начал использовать тире, некоторые скрипты сломались. Об этом шла дискуссия. Большинство скриптов были написаны #!/bin/sh, что было ссылкой на / bin / bash. Консенсус таков: автор сценария отвечает за указание интерпретатора. Поэтому, если ваш сценарий всегда должен быть вызван с помощью BASH, укажите его из среды. Это позволяет вам угадать путь, который отличается от разных систем Unix / Linux. Кроме того, он будет работать, если завтра / bin / sh станет ссылкой на другую оболочку, например / bin / wthsh или какую-то другую бессмысленность.

6
ответ дан 25 May 2018 в 15:53

Лучшая практика такова:

#!/usr/bin/env bash 
#!/usr/bin/env sh
#!/usr/bin/env python

И так далее ...

Когда Ubuntu впервые начал использовать тире, некоторые скрипты сломались. Об этом шла дискуссия. Большинство скриптов были написаны #!/bin/sh, что было ссылкой на / bin / bash. Консенсус таков: автор сценария отвечает за указание интерпретатора. Поэтому, если ваш сценарий всегда должен быть вызван с помощью BASH, укажите его из среды. Это позволяет вам угадать путь, который отличается от разных систем Unix / Linux. Кроме того, он будет работать, если завтра / bin / sh станет ссылкой на другую оболочку, например / bin / wthsh или какую-то другую бессмысленность.

6
ответ дан 25 May 2018 в 15:53

FYI - это бит-шип #!, вам нужен #. Вы используете эту строку, чтобы определить, с каким интерпретатором запускается скрипт.

По умолчанию Ubuntu ссылается на /bin/sh на тире

. В зависимости от того, насколько вы хотели бы узнать о тире, и почему тире используется для системных оболочек или оболочек deamon, см.: [!d2 ]

cyberciti.biz dash

cyberciti.biz dash

Bash - это оболочка по умолчанию, используемая большинством пользователей Linux, и имеет разные функции, затем тире , Сценарий, написанный для bash, может быть или не работать должным образом, если он запущен с тире, чем сложнее сценарий, тем меньше вероятность его запуска.

Сценарий, написанный для perl, python и т. Д., Не будет запускаться вообще с /bin/sh или /bin/bash.

Итак, когда вы пишете скрипт, вы определяете, какой интерпретатор следует использовать с помощью shee-bang

. Выбор того, что следует использовать, сделан автор сценария, и один не лучше, чем другой, все они имеют различные функции, преимущества и недостатки.

1
ответ дан 25 May 2018 в 15:53

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

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