Предлагаю здесь размещать все вопросы связанные с bash и sh. Рекомендуется к прочтению: ABS Guide (http://www.opennet.ru/docs/RUS/bash_scripting_guide/) (рус.), тоже самое ABS Guide (http://www.tldp.org/LDP/abs/html/) (eng.)Вот еще небольшое собрание сочинений :)
1.
Спойлер
Не секрет, что Bash начинается с командной строки, а если она приятно выглядит, то и работать за ней приятней. Я же в свое время, а это было сразу после перехода с винды на линукс, искал как добавить в терминал метку времени, тогда и наткнулся на эту статью. Сейчас приглашение консоли у меня выглядит вот так:
(http://storage8.static.itmages.ru/i/13/0805/h_1375710853_9652674_4b86d588fd.png) (http://itmages.ru/image/view/1152256/4b86d588)
Если кому интересно, как это сделать и может быть еще больше расширить информативность строки консоли - читаем здесь:
Приглашение bash меняем на свой вкус и цвет. (http://gahcep.github.io/blog/2012/07/28/unix-bash-shell-prompt/)
2.
Спойлер
Необходимо знать основные сочетания клавиш:
ctrl+alt+F1 | Перейти в консоль (tty1). Также вместо F1 можно использовать другие функциональные клавиши, F1-F6 открывают tty1-tty6 соответственно. |
ctrl+alt+F7 | Вернутся в графический режим, в ubuntu он обычно на tty7 (при запуске копий X-org, они разместятся дальше за 7й консолью: tty8, tty9,.. и открываться будут соответственно через ctrl+alt+F8, ctrl+alt+F9,..). |
ctrl+c | Убить задание, запущенное в терминале. |
ctrl+z | Остановить задание. Снова запустить можно командой fg или bg, список всех заданий jobs. |
ctrl+d | Выйти из текущего терминала. |
TAB | Это не сочетание - просто кнопка, нажатием на которую bash помогает дописывать команды и файлы. |
Alt + SysRq + O | Это то, что нажимать не нужно! SysRq powerOff - отключение питания компьютера. Завершение работы выполнится некорректно, без отмонтирования дисков и сохранения файлов.
|
Alt + SysRq + B | Не нажимайте это сочетание клавиш! SysRq reBoot - некорректная перезагрузка с возможностью повредить систему. Как выполнить корректно экстренную перезагрузку читайте здесь (http://ru.wikipedia.org/wiki/SysRq). |
И, мне кажется, этого вполне достаточно для облегчения работы с консолью, если не часто ею пользоваться. Есть более расширеный список, только для маньяков консоли ;) ссылочка на него ниже:
Горячие клавиши в Shell (http://habrahabr.ru/post/99843/)
3.
Спойлер
Если вам вдруг интересно узнать, как создать три сотни файлов одной командой ( touch {a..z}{0..10} ) и т.п., то эта статья для Вас :) Статейка изрядно потрёпаная, не пожалело ее время, а когда я её читал впервые, на ней еще были картинки %)
Текстовые замены и подстановки в Bash (http://ubuntologia.ru/blog/console-scripting/110.html#file-name-substitution)
4.
Спойлер
Еще раз повторюсь, настоящее руководство по программированию на Bash лежит здесь (http://www.opennet.ru/docs/RUS/bash_scripting_guide/), а статья ниже дает краткий обзор по конструкциям в bash-скриптах (ветвления, циклы и т.п.) Ну, вообщем, руководство - не руководство, а как шпаргалка будет весьма полезна :)
10 секундное "руководство" по Bash Shell Scripting (http://nsk.lug.ru/system/10-seconds-guide-to-bash-shell/)
На этом, пожалуй, пока и всё. :glass:
Вопросы и ответы, идеи, предложения и пожелания по данной теме -- приветствуются!
Создаю особое действие для обработки нескольких файлов в Thunar. Необходимо получить количество элементов в списке. Пути к файлам с пробелами и кириллицей.
Сейчас получаю количество пересчетом в цикле.
for file in %F;do kolfile=$(($kolfile+1));done
Чувствую, что это очень безграмотно. Есть ли другие варианты?