Комментарии 25
$ man ag
No manual entry for ag
$ apt show ag
N: Unable to locate package ag
N: Unable to locate package ag
E: No packages found
В статье для начинающих лучше писать про стандартные команды.
Как минимум, следует добавить что их нужно устанавливать дополнительно и написать как:
sudo apt install silversearcher-ag ack
Заодно и про sudo рассказать.
Ещё коробит выражение «bash-команда». Есть же и другие интерпретаторы.
+8
Что в статье про bash?
+8
Подозреваю, что cd
, алиасы, перенаправление ввода-вывода и конвейеры.
+4
Что в статье про bash?
из списка в 21 штуку только «cd»
перенаправление ввода/вывода и пайпа, внезапно, не команды баша :)
вот из-за таких статей я уже не первый год юниоров переучиваю и чушь слушаю на собеседованиях
ruvds исправьте пожалуйста или уберите
+4
не команды баша
Так-то оно так, но в других шеллах алиасы и перенаправления могут задаваться иначе или не поддерживаться, если они не POSIX-compliant.
Например, в fish есть свой синтаксис для перенаправления stderr
.
Так что, на мой взгляд, POSIX-совместимость можно считать полезной особенностью bash
0
Оформлено конечно красиво, ничего сказать не могу, но господа...2019 год на дворе, а мы на Хабре…
+8
Да, 2019 год на дворе, но в заголовке указано, что информация для новичков.
-3
информация для новичков
Ну давайте каждый день тогда это публиковать — каждый день же новички появляются.
+7
НЛО прилетело и опубликовало эту надпись здесь
mv my_file target_directory: перемещение файла my_file в папку target_directory. При указании целевой директории нужно использовать абсолютный путь к ней (а не конструкцию вроде ../).
Почему? Перемещая файл в папку можно использовать и абсолютный и относительный путь к папке.
cat my_one_file.txt: когда этой команде передают один файл — она выводит его в stdout.
Если же передать ей два файла или большее количество файлов, то она ведёт себя по-другому.
Почему по-другому?
Передали один файл — вывело один файл. Передали два файла — вывело два файла. По-другому это как-то совсем не так. А тут разница небольшая.
kill 012345: останавливает указанный выполняющийся процесс, давая ему время на корректное завершение работы.
Не совсем корректно. По умолчанию отправляется сигнал 15, который приложение может перехватить и обработать для корректного вывода. А может и вообще проигнорировать.
Никакое особое время не дается, просто зависит от того, как приложение обрабатывает данный сигнал.
ag my_regex my_file: возвращает сведения о номерах строк, и сами строки, в которых найдены совпадения с my_regex.
grep -n my_regex my_file
ag -i my_regex my_file: поиск выполняется без учёта регистра символов.
grep -in my_regex my_file
Команда ag автоматически обрабатывает файл .gitignore и исключает из вывода то, что найдено в папках или файлах, перечисленных в этом файле. Это очень удобно.
grep --exclude-from=FILE
Вдобавок ag и ack нужно отдельно устанавливать, и следовательно она недоступна из коробки? Тоже касается ack.
Было бы полезно пояснить в чем именно заключается преимущество, так как научиться работать с grep, который доступен на каждом linux — гораздо полезнее, чем научиться работать с ag/ack — ведь если написать скрипт, который использует grep, то можно быть уверенным, что он будет работать на 99% машин. А с ag/ack такой уверенности нет Я даже 10% побоюсь назвать.
немного продвинутого уровня
+9
Ни одна статья рассказывающая о возможностях Баша не должна обходиться без ссылки на Bash Pitfalls mywiki.wooledge.org/BashPitfalls
+5
[ -x /usr/bin/sed ] && echo sed || echo awk
less
cut -f 1 -d \
sort
uniq
…
Материал не раскрыт.
less
cut -f 1 -d \
sort
uniq
…
Материал не раскрыт.
-1
А если терминала нет, то echo sed и echo awk обе не смогут выполниться.
Из из всего вышеперечисленного bash это только test и echo
Из из всего вышеперечисленного bash это только test и echo
0
Жутко интересно, зачем на картинке трубопровода с каждой стороны стоек приделана непонятная двойная штуковина? Для громоотвода низковато, для радиорелея слишком часто…
+1
Зачем писать миллион первый вариант статьи на тему Bash для самых маленьких?
0
Самые полезные команды это
tab
ctrl+u
ctrl+l
locate
mc и как выйти из vim
tab
ctrl+u
ctrl+l
locate
mc и как выйти из vim
-2
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
[в закладки] Bash для начинающих: 21 полезная команда