Вопросы
Как узнать, существует ли файл в Bash?
У меня есть следующий скрипт на Bash, который проверяет, существует ли файл:
#!/bin/bash
FILE=$1
if [ -f $FILE ]; then
echo "Файл $FILE существует."
else
echo "Файл $FILE не существует."
fi
Вопрос: как мне изменить этот код, чтобы проверять только то, что файл не...
Echo новой строки в Bash выводит литерал \n
Как мне вывести новую строку? В результате выполнения следующей команды просто выводится \n:
echo -e "Hello,\nWorld!"
Вывод:
Hello,\nWorld!
Как проверить, содержит ли строка подстроку в Bash
У меня есть строка в Bash:
string="My string"
Как я могу проверить, содержит ли она другую строку?
Я пробовал написать так:
if [ $string ?? 'foo' ]; then
echo "It's there!"
fi
Где ??
— это мой неизвестный оператор. Использовать ли мне echo
и grep
?
if...
Как объединить строковые переменные в Bash
На PHP строки объединяются следующим образом:
$foo = "Hello";
$foo .= " World";
В результате переменная $foo
становится равной "Hello World"
.
Как можно достичь такого же результата в Bash?
Что означает "2>&1"?
Я пытаюсь объединить потоки stderr и stdout в один поток stdout и применяю для этого следующий синтаксис к команде: 2>&1
Например, следующая команда позволяет мне увидеть несколько первых ошибок при компиляции файла main.cpp: g++ main.cpp 2>&1 | head
Но что именно означает...
Как проверить, существует ли программа из Bash-скрипта?
Как я могу проверить, существует ли программа, так чтобы в случае её отсутствия вернуть ошибку и завершить выполнение скрипта, или продолжить выполнение в случае, если программа найдена?
Это, казалось бы, должно быть просто, но у меня возникли сложности.
Извлечение имени файла и расширения в Bash
Я хочу получить имя файла (без расширения) и расширение отдельно.
Лучшее решение, которое я нашел до сих пор, это:
NAME=`echo "$FILE" | cut -d'.' -f1`
EXTENSION=`echo "$FILE" | cut -d'.' -f2`
Но это неверно, так как не работает, если имя файла содержит несколько символов .
....
Как изменить цвет вывода echo в Linux
Я пытаюсь вывести текст в терминале с помощью команды echo.
Я хочу, чтобы текст был напечатан красным цветом. Как мне это сделать?
Как разобрать аргументы командной строки в Bash?
У меня есть скрипт, который вызывается следующими командами:
./myscript -vfd ./foo/bar/someFile -o /fizz/someOtherFile
или вот так:
./myscript -v -f -d -o /fizz/someOtherFile ./foo/bar/someFile
Как правильно разобрать входные параметры, чтобы в обоих случаях (или в любом их...
Как установить переменную на вывод команды в Bash?
У меня есть довольно простой скрипт, который выглядит примерно так:
#!/bin/bash
VAR1="$1"
MOREF='sudo run command against $VAR1 | grep name | cut -c7-'
echo $MOREF
Когда я запускаю этот скрипт из командной строки и передаю ему аргументы, я не получаю никакого вывода. Однако, когда я...
Как проверить, установленна ли переменная в Bash
Заголовок: Как узнать, установлена ли переменная в Bash?
Описание проблемы:
Мне нужно проверить, установлен ли параметр в функции Bash. Например, как можно проверить, передан ли первый параметр в функцию? Вот мой код:
function a {
# как проверить, установлен ли $1?
}
Как мне...
Как пройтись по массиву строк в Bash?
Я хочу написать скрипт, который будет проходить по 15 строкам (возможно, это массив?). Это возможно?
Что-то вроде этого:
for databaseName in listOfNames
then
# Сделать что-то
end
Как это реализовать?
Как перезагрузить настройки .bashrc без выхода и повторного входа в систему?
Я внес изменения в файл .bashrc, но не знаю, как применить их, не выходя из системы и не заходя обратно. Как можно перезагрузить .bashrc?
Проверка существования входного аргумента в Bash-скрипте
Я пытаюсь проверить наличие входного аргумента в моем скрипте. У меня есть следующий код:
if [ "$1" -gt "-1" ]
then echo hi
fi
Однако я получаю следующую ошибку:
[: : integer expression expected
Как правильно проверить, существует ли входной аргумент перед его использованием?
Как рекурсивно посчитать все строки кода в директории?
У нас есть приложение на PHP, и нам нужно посчитать все строки кода в определенном каталоге и его подкаталогах.
Мы не хотим игнорировать комментарии, так как нам просто нужно получить общее представление о количестве строк.
Команда wc -l *.php
отлично работает для заданного каталога, но она...
Как запросить ввод Yes/No/Cancel в скрипте оболочки Linux?
Я хочу приостановить ввод в скрипте оболочки и запросить у пользователя выбор. Мне нужно задать стандартный вопрос с вариантами «Да», «Нет» или «Отмена». Как мне это сделать в типичном bash-скрипте?
Создание алиаса Bash с параметром?
Я раньше использовал CShell (csh), который позволяет создавать псевдонимы с параметрами. Нотация выглядела примерно так:
alias junk="mv \\!* ~/.Trash"
В Bash, похоже, это не работает. Учитывая, что Bash предлагает множество полезных функций, я предполагал, что эта возможность уже...
Разница между sh и Bash
Разница между Bash и sh При написании скриптов для оболочки мы часто используем /bin/sh и /bin/bash. Обычно я предпочитаю bash, но не совсем понимаю, в чем между ними разница. Какова основная разница между Bash и sh? На что нам следует обратить внимание при программировании на Bash и sh?
Как указать приватный SSH-ключ для выполнения команды shell в Git?
У меня возникла несколько необычная ситуация: я хочу указать приватный SSH-ключ, который будет использоваться при выполнении команды в оболочке (git
) на локальном компьютере.
Скорее всего, это должно выглядеть так:
git clone [email protected]:TheUser/TheProject.git -key...
echo, который выводит в stderr
Существует ли стандартная команда Bash, которая ведет себя как echo, но выводит информацию в поток ошибок (stderr) вместо стандартного вывода (stdout)? Я знаю, что можно использовать echo foo 1>&2, но это выглядит не очень красиво и, по моему мнению, может привести к ошибкам (например,...