Обсуждение:Bash

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Пожалуйста, добавляйте новые темы снизу


Замена в статье «#!/bin/bash» на «#!/usr/bin/env bash»[править код]

Предлагаю в примерах статьи заменить все #!/bin/bash на #!/usr/bin/env bash, дабы приучать новичков писать правильно (см. Shebang_(Unix)#Portability) --LeNiN 03:38, 28 марта 2012 (UTC)[ответить]

И какая в этом практическая польза? Увидели питон и решили прифантазировать?
89.235.223.182 12:35, 26 марта 2014 (UTC)[ответить]

Переименовать в «GNU Bash»?[править код]

Согласно домашней странице проекта, данный интерпретатор называется именно GNU Bash. Предлагаю переименовать статью (добавив нужные перенаправления.)

Ivan Shmakov 16:35, 10 августа 2012 (UTC)[ответить]

«Горячие клавиши»[править код]

Раздел Горячие клавиши содержит перечень клавиатурных комбинаций, общий для едва ли не всех команднострочных интерфейсов на основе GNU Readline. На мой взгляд, его следует перенести в статью по последнему, заменив на описание «основных приемов» работы с клавиатурой в Shell.

PS. В каких случаях применяется Шаблон:перенести, BTW?

Ivan Shmakov 11:01, 17 августа 2012 (UTC)[ответить]

  • его следует перенести - ВП:Правьте смело! В каких случаях - если есть две пары статей, которые являются очевидными кандидатами на слияние, а вам самим некогда или вы не уверены, что сможете это сделать правильно, ставите пару шаблонов {{mergefrom}} и {{mergeto}}. На ВП:КОБ об этом написано. -- AVBtalk 11:09, 17 августа 2012 (UTC)[ответить]

сравнение синтаксиса регулярных выражений Bash с Perl[править код]

>Bash 3.0 поддерживает встроенные регулярные выражения, с синтаксисом подобным синтаксису Perl:

я потерял минимум полчаса времени из-за этой строчки

в Perl и Bash синтаксис регулярных выражений отличается. И отличается значительно. думаю, необходимо как минимум убрать " с синтаксисом подобным синтаксису Perl:" и хорошо бы добавить описание синтаксиса.

178.137.182.97 18:07, 3 февраля 2013 (UTC)[ответить]

Исполняемый vs. исполнимый[править код]

На мой взгляд, при описании режима доступа (к файлу, к области памяти, etc.) более верно использовать термин «исполнимый» (IOW, «тот, который может быть исполнен.») С другой стороны, если речь идет о процессе, то верным действительно будет термин «исполняемый» («тот, который исполняется.») Различие небольшое, «на пределе языковой чуствительности,» однако оно все же присутствует. Мнения? — Ivan Shmakov (talk) 08:48, 28 августа 2013 (UTC)[ответить]

По смыслу слов хорошо бы их различать, но их слишком долго путали, чтобы решить эту проблему здесь. И в первую очередь нужно опираться на документацию во избежание расхождений с другими пользователями bash, а в ней, как обычно, некоторым словам дан совершенно новый смысл. Про «исполнимый» не уверен, что могу правильно это перевести с языка оригинала (в документации фантасмагория, почти новый литературный жанр). --2A01:D0:9085:0:74A7:D659:83EF:2EF1 01:41, 6 июля 2016 (UTC)[ответить]

Энциклопедичность?[править код]

… А не пытается ли эта статья стать учебником (вариант: кратким справочником) по Bash? (Во всяком случае, раздел «Скрипты» ссылками на авторитетные источники определенно не богат.) Не стоит ли в связи с этим перенести существенную часть ее, например, в Викиучебник? В статью добавить ссылку на новое расположение материала. — Ivan Shmakov (talk) 16:31, 29 августа 2013 (UTC)[ответить]

  • Есть пара табличек, которые, возможно, излишни в статье, но в целом проблемы с энциклопедичностью я не вижу. На мой взгля, статья только проиграет, если вместо коротких наглядных скриптов в ней будут сухие тексты, описывающие тоже самое. Тем более, что объем сейчас проблем не вызывает, для учебника маловато и фрагментарно (выбраны наиболее типичные вещи). Что касается источников, то тут требуется лишь работа: взять книжку (а то и не одну) по bash и проставить страницы. Материал проверяем — можно запустить и убедиться. Так что с этим тоже не вижу проблем. Можно подумать и с другой стороны. Если эту статью доводить до хорошей или избранной, то что нужно сделать? Источники, больше текста и т.п., но удаление примеров статье явно повредит. РоманСузи 03:42, 30 августа 2013 (UTC)[ответить]
Против табличек особенно не возражаю. Но я не наблюдаю энциклопедичности в коротких наглядных скриптах. Некоторые из которых, кроме того, не используют никаких специфичных для Bash возможностей. (И могут быть, по-видимому, без ущерба перенесены в статью Bourne shell, или же отделены в новую POSIX shell — на которую можно затем будет сослаться из статей Bash, Dash, BusyBox, etc.)
Если это возможно, я бы хотел видеть в данной статье обзор (вариант: список) характерных, ярких особенностей и отличий Bash. Отнюдь не «общевойсковых» #!, chmod +x, файловых дескрипторов, циклов и массивов. (Другими словами — всего того, что присутствует едва ли не в каждом языке программирования, особенно в среде Unix-подобных систем.
Отдельный вопрос — можно ли считать книжку по Bash авторитетным источником. На мой взгляд, — не всегда, да и только на них полагаться едва ли допустимо.
Ivan Shmakov (talk) 05:56, 30 августа 2013 (UTC)[ответить]
  • Не думаю, что некая «нормализация» сведений об оболочках в данном случае поможет читателю. Полагаю, что короткие, свойственные всем bourne shell-подобным оболочкам скрипты могут быть в каждой статье, так как они подтверждены наверняка авторитетными источниками, и солидные книги таковыми являются. Другое дело, что может быть добавлен раздел по особенностям именно bash. РоманСузи 04:18, 2 сентября 2013 (UTC)[ответить]

Сообщение об ошибке[править код]

Перенесено со страницы ВП:Сообщения об ошибках#Bash.
(Циклы - второй пример)

Пропущены кавычки. Это не шелл. Это баш. Написано:

  1. !/usr/bin/env bash

COUNTER=0 while $COUNTER -lt 10 ; do

 echo The counter is $COUNTER
 let COUNTER=COUNTER+1

done

Должно быть

  1. !/usr/bin/env bash

COUNTER=0 while $COUNTER -lt 10 ; do

 echo The counter is $COUNTER
 let "COUNTER=COUNTER+1"

done

$$ vs $BASHPID[править код]

Знатоки, Почему ближе к концу статьи, когда сравниваются $$ и $BASHPID, в тексте статьи говорится, что bash в подоболочке не требует повторной инициализации и при этом на сопутствующей иллюстрации именно $BASHPID меняет своё значение в подоболочке????!

Может, всё-таки shell не требует повторной инициализации в подоболочке? Хотя подоболочка на то и подоболочка, чтобы быть дочерним процессом к родительскому в иерархии процессов и иметь свой pid.

Пишу с мобилы, компа нет и долго не будет, проверить не могу. Целенаправленно гуглить не буду, но читаю книгу про командную оболочку Линукс - может, и будет эта тонкость, а, может, и нет. Mipt finished (обс.) 01:52, 9 марта 2021 (UTC)[ответить]

  • man bash, Shell Variables, BASHPID. Там описана разница. Подоболочка — это форк, он начинается с того же места родительского процесса, но является отдельным дочерним процессом. -- D6194c-1cc (обс.) 04:34, 9 марта 2021 (UTC)[ответить]