Вопросы с тегом «bash»

Для вопросов о скриптах, написанных для командной оболочки Bash. Для сценариев оболочки с ошибками / синтаксическими ошибками, пожалуйста, проверьте их с помощью программы shellcheck (или на сервере веб-проверки оболочки по адресу https://shellcheck.net) перед размещением здесь. Вопросы об интерактивном использовании Bash, скорее всего, будут касаться темы Super User, а не переполнения стека.



8
Как работает «cat << EOF» в bash?
Мне нужно было написать скрипт для ввода многострочного ввода в программу ( psql). После небольшого поиска я нашел следующий синтаксис: cat &lt;&lt; EOF | psql ---params BEGIN; `pg_dump ----something` update table .... statement ...; END; EOF Это правильно создает многострочную строку (от BEGIN;до END;, включительно) и передает ее в качестве …
632 linux  bash  scripting  heredoc 

24
Проверьте, нужно ли тянуть в Git
Как проверить, изменился ли удаленный репозиторий и нужно ли его вытащить? Теперь я использую этот простой скрипт: git pull --dry-run | grep -q -v 'Already up-to-date.' &amp;&amp; changed=1 Но это довольно тяжело. Есть ли способ лучше? Идеальное решение будет проверять все удаленные ветви и возвращать имена измененных веток и количество …
623 git  bash  shell 

14
Как убить все процессы с заданным частичным именем? [закрыто]
Закрыто. Этот вопрос не соответствует рекомендациям по переполнению стека . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме переполнения стека. Закрыто 4 месяца назад . Я хочу убить все процессы, которые я получаю: ps aux | grep my_pattern Как это сделать? …
623 linux  bash  posix 

23
Как узнать имя файла скрипта в скрипте Bash?
Как определить имя файла сценария Bash внутри самого сценария? Например, если мой сценарий находится в файле runme.sh, то как мне сделать так, чтобы он отображал сообщение «Вы запускаете runme.sh» без жесткого кодирования?
606 linux  bash  shell  scripting 

19
Инструмент Bash для получения n-й строки из файла
Есть ли «канонический» способ сделать это? Я использовал, head -n | tail -1что делает трюк, но мне было интересно, есть ли инструмент Bash, который специально извлекает строку (или диапазон строк) из файла. Под «каноническим» я подразумеваю программу, основной функцией которой является это.
606 bash  shell  unix  awk  sed 


14
sudo echo «что-то» >> / etc / privilegedFile не работает
Это довольно простой вопрос, по крайней мере, так кажется, о разрешениях sudo в Linux. Часто я просто хочу добавить что- /etc/hostsлибо в подобный файл или в другой файл, но в конечном итоге не могу, потому что и то, &gt;и другое &gt;&gt;запрещено, даже с правами root. Есть ли какое - то …

6
Захват многострочного вывода в переменную Bash
У меня есть скрипт «myscript», который выводит следующее: abc def ghi в другом сценарии я звоню: declare RESULT=$(./myscript) и $RESULTполучает значение abc def ghi Есть ли способ сохранить результат либо с символами новой строки, либо с символом '\ n', чтобы я мог вывести его с помощью ' echo -e'?
583 bash  variables 

8
Являются ли двойные квадратные скобки [[]] предпочтительнее одиночных квадратных скобок [] в Bash?
Сотрудник недавно заявил в обзоре кода, что [[ ]]конструкция должна быть более предпочтительной, чем [ ]конструкции, подобные if [ "`id -nu`" = "$someuser" ] ; then echo "I love you madly, $someuser" fi Он не мог предоставить обоснование. Есть один?

8
Как сделать логическую операцию ИЛИ в сценариях оболочки
Я пытаюсь сделать простую проверку состояния, но это не похоже на работу. Если $#равно 0или больше, чем 1тогда сказать привет. Я пробовал следующий синтаксис без успеха: if [ "$#" == 0 -o "$#" &gt; 1 ] ; then echo "hello" fi if [ "$#" == 0 ] || [ "$#" …
571 bash  unix  if-statement  sh 


10
Как установить текущий рабочий каталог в каталог скрипта?
Я пишу сценарий Bash. Мне нужен текущий рабочий каталог, чтобы всегда быть каталогом, в котором находится скрипт. Поведение по умолчанию состоит в том, что текущий рабочий каталог в скрипте - это оболочка, из которой я его запускаю, но я не хочу этого поведения.
569 bash  path  scripting 

11
Как я могу добавить числа в скрипте Bash?
У меня есть этот сценарий Bash, и у меня возникла проблема в строке 16. Как я могу взять предыдущий результат в строке 15 и добавить его в переменную в строке 16? #!/bin/bash num=0 metab=0 for ((i=1; i&lt;=2; i++)); do for j in `ls output-$i-*`; do echo "$j" metab=$(cat $j|grep EndBuffer|awk …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.