Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
develop:shell:bash [2018/06/17 19:43] – ↷ Страница перемещена из shell:bash в develop:shell:bash mirocowdevelop:shell:bash [2023/06/24 12:29] (текущий) – [BASH, SH] mirocow
Строка 3: Строка 3:
 ====== BASH, SH ====== ====== BASH, SH ======
  
-  * [[bash:developing|Программирование]] :!: +  * [[:system:shopt|Настройки]] 
-  * [[system:shopt|Настройки]] +  * [[:bash:bash-completion|]] 
-  * [[bash:bash-completion|]] +  * [[:bash:keys|]] 
-  * [[bash:keys]] +  * [[:unix:commands|]] :!: 
-  * [[http://habrahabr.ru/post/47706/|Частые ошибки программирования на Bash]] +  * [[:unix:admin|]] 
-  * [[unix:commands]] :!: +  * [[:develop:shell|]] 
-  * [[unix:admin]] +  * [[:bash:developing|Программирование]] :!: 
-  * [[develop:shell]] +  * [[:bash:основы_bash._часть_1|]] :!: 
 +  * [[:bash:основы_bash._часть_2|]] :!:
 ====== Переменные и конфиг файлы ====== ====== Переменные и конфиг файлы ======
  
-Согласно мануалу по bash, .bash_profile исполняется для оболочек, осуществляющих авторизацию пользователя. .bashrc исполняется для интерактивных оболочек, не авторизующих пользователя.+<code> 
 +                     +-----------------+   +------FIRST-------+   +-----------------+ 
 +                                       | ~/.bash_profile                    | 
 +login shell --------> /etc/profile   |-->| ~/.bash_login ------> ~/.bashrc      | 
 +                                       | ~/.profile                         | 
 +                     +-----------------+   +------------------+   +-----------------+ 
 +                     +-----------------+   +-----------------+ 
 +                                                       | 
 +interactive shell --> ~/.bashrc -------->| /etc/bashrc     | 
 +                                                       | 
 +                     +-----------------+   +-----------------+ 
 +                     +-----------------+ 
 +                                     | 
 +logout shell -------> ~/.bash_logout | 
 +                                     | 
 +                     +-----------------+
  
 +</code>
  
 +  * []-->[] - запускается автоматически
 +  * [--->[] - запускается если прописан или в ручную.
 +  * FIRST - находит первый доступный, остальные игнорируются
  
-===== Документация =====+Несколько примечаний:
  
-  * [[system:shell:bash:перенаправление_вывода]] +  * «интерактивная оболочка» должна быть «интерактивной оболочкой без входа в систему», а «оболочка входа в систему» ​​должна быть «интерактивной оболочкой входа в систему»
-  * http://www.opennet.ru/docs/RUS/bash_scripting_guide/ +  * Кроме того, по крайней мере, в Ubuntu, для интерактивных оболочек без входа в систему /etc/bash.bashrc сначала читается ~/.bashrcОбратите внимание, что /etc/bash.bashrc его нет в ванильном GNU Bash, это модификация, которую делают многие дистрибутивы.
-  * http://gnu.su/news.php?extend.1613 +
-  * http://gnu.su/news.php?extend.2448 +
-  * https://www.opennet.ru/docs/RUS/bash_scripting_guide/x2565.html +
-  * http://rus-linux.net/MyLDP/BOOKS/abs-guide/flat/abs-book.html +
-  * http://www.opennet.ru/docs/RUS/bash_scripting_guide/ +
-  * https://raw.githubusercontent.com/olegberman/the-art-of-command-line/master/README-ru.md *+
  
 +Согласно мануалу по bash, .bash_profile исполняется для оболочек, осуществляющих авторизацию пользователя. .bashrc исполняется для интерактивных оболочек, не авторизующих пользователя.
 +
 +
 +===== Документация =====
 +
 +  * [[:system:shell:bash:перенаправление_вывода|]]
 +  * [[http://www.opennet.ru/docs/RUS/bash_scripting_guide/|http://www.opennet.ru/docs/RUS/bash_scripting_guide/]]
 +  * [[http://gnu.su/news.php?extend.1613|http://gnu.su/news.php?extend.1613]]
 +  * [[http://gnu.su/news.php?extend.2448|http://gnu.su/news.php?extend.2448]]
 +  * [[https://www.opennet.ru/docs/RUS/bash_scripting_guide/x2565.html|https://www.opennet.ru/docs/RUS/bash_scripting_guide/x2565.html]]
 +  * [[http://rus-linux.net/MyLDP/BOOKS/abs-guide/flat/abs-book.html|http://rus-linux.net/MyLDP/BOOKS/abs-guide/flat/abs-book.html]]
 +  * [[http://www.opennet.ru/docs/RUS/bash_scripting_guide/|http://www.opennet.ru/docs/RUS/bash_scripting_guide/]]
 +  * [[https://raw.githubusercontent.com/olegberman/the-art-of-command-line/master/README-ru.md|https://raw.githubusercontent.com/olegberman/the-art-of-command-line/master/README-ru.md]]
 +  * [[http://habrahabr.ru/post/47706/|Частые ошибки программирования на Bash]]
 ==== Программирования ==== ==== Программирования ====
  
-  * [[bash:основы_bash._часть_1]] :!: +  * [[http://habrahabr.ru/post/47706/|http://habrahabr.ru/post/47706/]] 1 часть 
-  * [[bash:основы_bash._часть_2]] :!: +  * [[http://habrahabr.ru/post/47915/|http://habrahabr.ru/post/47915/]] 2 часть 
-  * http://habrahabr.ru/post/47706/ 1 часть +  * [[http://habrahabr.ru/post/48053/|http://habrahabr.ru/post/48053/]] 3 часть
-  * http://habrahabr.ru/post/47915/ 2 часть +
-  * http://habrahabr.ru/post/48053/ 3 часть+
   * [[http://binsh.ru/2008/12/13/bash-pitfalls-part01.html|Частые ошибки программирования на Bash (часть 1)]]   * [[http://binsh.ru/2008/12/13/bash-pitfalls-part01.html|Частые ошибки программирования на Bash (часть 1)]]
   * [[http://binsh.ru/2008/12/18/bash-pitfalls-part02.html|Частые ошибки программирования на Bash (часть 2)]]   * [[http://binsh.ru/2008/12/18/bash-pitfalls-part02.html|Частые ошибки программирования на Bash (часть 2)]]
   * [[http://binsh.ru/2008/12/22/bash-pitfalls-part03.html|Частые ошибки программирования на Bash (часть 3)]]   * [[http://binsh.ru/2008/12/22/bash-pitfalls-part03.html|Частые ошибки программирования на Bash (часть 3)]]
-  * [[http://binsh.ru/2008/12/24/bash-pitfalls-part04.html|Частые ошибки программирования на Bash (часть 4)]]   +  * [[http://binsh.ru/2008/12/24/bash-pitfalls-part04.html|Частые ошибки программирования на Bash (часть 4)]]
   * [[http://binsh.ru/2008/12/29/bash-pitfalls-part05.html|Частые ошибки программирования на Bash (часть 5)]]   * [[http://binsh.ru/2008/12/29/bash-pitfalls-part05.html|Частые ошибки программирования на Bash (часть 5)]]
-  * https://ru.wikipedia.org/wiki/Bash +  * [[https://ru.wikipedia.org/wiki/Bash|https://ru.wikipedia.org/wiki/Bash]] 
-  * [[system:shell:bash:Перенаправление вывода|Перенаправление вывода]] +  * [[:system:shell:bash:перенаправление_вывода|Перенаправление вывода]] 
-  * http://bappoy.pp.ru/2008/12/22/bash-pitfalls-part03.html +  * [[http://bappoy.pp.ru/2008/12/22/bash-pitfalls-part03.html|http://bappoy.pp.ru/2008/12/22/bash-pitfalls-part03.html]]
   * [[http://www.opennet.ru/docs/RUS/bash_scripting_guide/|Advanced Bash-Scripting Guide]]   * [[http://www.opennet.ru/docs/RUS/bash_scripting_guide/|Advanced Bash-Scripting Guide]]
-  * http://habrahabr.ru/post/151771/+  * [[http://habrahabr.ru/post/151771/|http://habrahabr.ru/post/151771/]]
   * [[http://linux.yaroslavl.ru/docs/conf/gnu-util/bash/bash.html|Особенности работы оболочки bash]]   * [[http://linux.yaroslavl.ru/docs/conf/gnu-util/bash/bash.html|Особенности работы оболочки bash]]
   * [[http://www.opennet.ru/docs/RUS/bash_scripting_guide/|Искусство программирования на языке сценариев командной оболочки]]   * [[http://www.opennet.ru/docs/RUS/bash_scripting_guide/|Искусство программирования на языке сценариев командной оболочки]]
-  * http://eddnet.org/?tag=bash+  * [[http://eddnet.org/?tag=bash|http://eddnet.org/?tag=bash]]
  
 ====== Видео уроки ====== ====== Видео уроки ======
Строка 55: Строка 80:
   * [[https://www.youtube.com/watch?v=bk0YBz-VqTo&list=PLRZDRng2SWPggdZOHQJ5iTvp8-UG7OVXD|Удобная работа в Bash]]   * [[https://www.youtube.com/watch?v=bk0YBz-VqTo&list=PLRZDRng2SWPggdZOHQJ5iTvp8-UG7OVXD|Удобная работа в Bash]]
   * [[https://www.youtube.com/watch?v=eH8Z9zeywq0&list=PLTXMX1FE5Hj5ZJDt_WMbioFpdWO5SGy8r|Bash Basics]]   * [[https://www.youtube.com/watch?v=eH8Z9zeywq0&list=PLTXMX1FE5Hj5ZJDt_WMbioFpdWO5SGy8r|Bash Basics]]
-  * https://www.youtube.com/playlist?list=PLLyG9JTjVd9VTEKisukGLJhl8H2YeIN09+  * [[https://www.youtube.com/playlist?list=PLLyG9JTjVd9VTEKisukGLJhl8H2YeIN09|https://www.youtube.com/playlist?list=PLLyG9JTjVd9VTEKisukGLJhl8H2YeIN09]]
  
 ===== Применить настройки ===== ===== Применить настройки =====
Строка 63: Строка 88:
 ==== Примеры конфигурационных файлов ==== ==== Примеры конфигурационных файлов ====
  
-  * http://www.opennet.ru/docs/RUS/bash_scripting_guide/a15124.html +  * [[http://www.opennet.ru/docs/RUS/bash_scripting_guide/a15124.html|http://www.opennet.ru/docs/RUS/bash_scripting_guide/a15124.html]] 
-  * http://welinux.ru/post/7293/ +  * [[http://welinux.ru/post/7293/|http://welinux.ru/post/7293/]] 
-  * http://rus-linux.net/nlib.php?name=/MyLDP/BOOKS/Bash-Guide-1.12-ru/bash-guide-03-1.html +  * [[http://rus-linux.net/nlib.php?name=/MyLDP/BOOKS/Bash-Guide-1.12-ru/bash-guide-03-1.html|http://rus-linux.net/nlib.php?name=/MyLDP/BOOKS/Bash-Guide-1.12-ru/bash-guide-03-1.html]] 
-  * http://younglinux.info/book/export/html/265+  * [[http://younglinux.info/book/export/html/265|http://younglinux.info/book/export/html/265]]
  
 ===== Примеры ===== ===== Примеры =====
  
 ==== Замена текста в файлах с возможностью рекурсии ==== ==== Замена текста в файлах с возможностью рекурсии ====
 +<code>
  
-  find ./ -type f -exec sed -i 's/CHARSET=utf8/CHARSET=cp1251/g' {} \;+find ./ -type f -exec sed -i 's/CHARSET=utf8/CHARSET=cp1251/g' {} \; 
 + 
 +</code>
  
 ==== Прогрессбар ==== ==== Прогрессбар ====
  
-  * http://linsovet.org.ua/howto-bash-script-status+  * [[http://linsovet.org.ua/howto-bash-script-status|http://linsovet.org.ua/howto-bash-script-status]] 
 ==== Видео уроки ==== ==== Видео уроки ====
  
 === RUS === === RUS ===
- 
  
   * [[https://www.youtube.com/playlist?list=PLLyG9JTjVd9VTEKisukGLJhl8H2YeIN09|ОСНОВЫ РАБОТЫ В КОМАНДНОМ ПРОЦЕССОРЕ SHELL BASH]]   * [[https://www.youtube.com/playlist?list=PLLyG9JTjVd9VTEKisukGLJhl8H2YeIN09|ОСНОВЫ РАБОТЫ В КОМАНДНОМ ПРОЦЕССОРЕ SHELL BASH]]
-  * [[https://www.youtube.com/playlist?list=PLRZDRng2SWPggdZOHQJ5iTvp8-UG7OVXD|Linux. Bash]] +  *  [[https://www.youtube.com/playlist?list=PLRZDRng2SWPggdZOHQJ5iTvp8-UG7OVXD|Linux. Bash]] 
-    * [[https://www.youtube.com/playlist?list=PLRZDRng2SWPinFcla9GNA5e0zv0YK75-z|Linux. Filesystems]]+      * [[https://www.youtube.com/playlist?list=PLRZDRng2SWPinFcla9GNA5e0zv0YK75-z|Linux. Filesystems]]
  
 === ENG === === ENG ===
  
-  * https://www.youtube.com/playlist?list=PLtK75qxsQaMIlFCcFZpTBLnaCJ0I0uiaY +  * [[https://www.youtube.com/playlist?list=PLtK75qxsQaMIlFCcFZpTBLnaCJ0I0uiaY|https://www.youtube.com/playlist?list=PLtK75qxsQaMIlFCcFZpTBLnaCJ0I0uiaY]] 
-  * https://www.youtube.com/playlist?list=PLtK75qxsQaMLZSo7KL-PmiRarU7hrpnwK+  * [[https://www.youtube.com/playlist?list=PLtK75qxsQaMLZSo7KL-PmiRarU7hrpnwK|https://www.youtube.com/playlist?list=PLtK75qxsQaMLZSo7KL-PmiRarU7hrpnwK]] 
 +