scripting ×6
Создан 04.01.2025
10
голоса
5
ответов
28
просмотров
Как работает "cat << EOF" в bash?

Я столкнулся с необходимостью написать скрипт для ввода многострочного текста в программу (psql).

После немного поиска в интернете, я нашел следующий синтаксис, который работает:

cat << EOF | psql ---params BEGIN;

pg_dump ----something

update table .... statement ...;

END; EOF

Этот...

40
голоса
5
ответов
27
просмотров
Как узнать, существует ли файл в Bash?

У меня есть следующий скрипт на Bash, который проверяет, существует ли файл:

#!/bin/bash

FILE=$1     
if [ -f $FILE ]; then
   echo "Файл $FILE существует."
else
   echo "Файл $FILE не существует."
fi

Вопрос: как мне изменить этот код, чтобы проверять только то, что файл не...

26
голоса
5
ответов
28
просмотров
Как разобрать аргументы командной строки в Bash?

У меня есть скрипт, который вызывается следующими командами:

./myscript -vfd ./foo/bar/someFile -o /fizz/someOtherFile

или вот так:

./myscript -v -f -d -o /fizz/someOtherFile ./foo/bar/someFile 

Как правильно разобрать входные параметры, чтобы в обоих случаях (или в любом их...

9
голоса
5
ответов
13
просмотров
Как в Bash-скрипте выйти из всего скрипта при выполнении определенного условия?

Я пишу скрипт на Bash для тестирования кода. Однако кажется бессмысленным запускать тесты, если компиляция кода завершается неудачей. В этом случае я просто хочу прекратить выполнение тестов.

Есть ли способ сделать это без оборачивания всего скрипта в цикл и использования операторов break? Что-то...

19
голоса
5
ответов
11
просмотров
Как запросить ввод Yes/No/Cancel в скрипте оболочки Linux?

Я хочу приостановить ввод в скрипте оболочки и запросить у пользователя выбор. Мне нужно задать стандартный вопрос с вариантами «Да», «Нет» или «Отмена». Как мне это сделать в типичном bash-скрипте?

15
голоса
5
ответов
10
просмотров
Как объявить и использовать логические переменные в shell-скрипте?

Я пытался объявить логическую переменную в скрипте оболочки, используя следующий синтаксис:

variable=$false

variable=$true

Правильный ли это способ? Также, если я хочу обновить эту переменную, нужно ли использовать тот же синтаксис? Наконец, правильный ли следующий синтаксис для...