shell ×60
Создан 03.01.2025
0
голоса
3
ответов
0
просмотров
Почему в моем терминале неправильно отображаются юникодные символы?

Заголовок: Проблема с выводом символов Unicode в терминале Gnome на Arch Linux

Описание:

Я сталкиваюсь с проблемой при выводе символов Unicode в терминале Gnome 3 на Arch Linux. Когда я выполняю следующую команду:

$ echo -e "\xE2\x98\xA0"

Я получаю следующее...

5
голоса
5
ответов
21
просмотров
Может ли shell-скрипт устанавливать переменные окружения вызывающей оболочки?

Я пытаюсь написать оболочку (shell) сценарий, который, когда выполняется, будет устанавливать некоторые переменные окружения, остающиеся установленными в оболочке вызывающей стороны.

Я знаю, что в csh/tcsh можно использовать команду:

setenv FOO foo

или, в случае sh/bash, выполнится...

5
голоса
5
ответов
11
просмотров
Как добавить индикатор прогресса в shell-скрипт?

Проблема: Добавление индикатора прогресса в скрипты оболочки

Когда я пишу скрипты на bash или любой другой оболочке в *NIX, возникает необходимость отображать индикатор прогресса при выполнении команд, которые занимают более нескольких секунд.

Например, это может быть при копировании...

5
голоса
5
ответов
13
просмотров
Как автоматически создать cron-задачу с помощью Bash без интерактивного редактора?

Существует ли возможность в crontab создать задания Cron без использования редактора (crontab -e)? Если да, то каков будет код для создания задания Cron из Bash-скрипта?

6
голоса
5
ответов
13
просмотров
Как выделить команды bash/shell в Markdown?

Как выделить команды Bash/шела в Markdown файлах?

Я пытаюсь выделить команды Bash/шела в своих Markdown файлах, но не уверен, как это сделать. Например, для выделения кода на JavaScript я использую следующий синтаксис:

function () { return "Этот код выделен как JavaScript!" }

Для...

5
голоса
5
ответов
12
просмотров
Как выполнить кодирование URL для команды curl?

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

Вот мой базовый скрипт на данный...

5
голоса
2
ответов
13
просмотров
Как добавить однострочный комментарий к многострочной команде

Я знаю, как писать многострочные команды в Bash-скрипте, но как можно добавить комментарий для каждой строки в многострочной команде? Вот пример:

CommandName InputFiles      \ # Это комментарий для 1-й строки
            --option1 arg1  \ # Это комментарий для 2-й строки
           ...
5
голоса
4
ответов
14
просмотров
Как проверить существование переменной окружения и получить её значение?

Я пишу скрипт на оболочке и у меня есть переменная, которая может либо принимать значение по умолчанию, либо значение из переменной окружения. Однако переменная окружения не обязательно должна присутствовать.

Например, предположим, что перед запуском скрипта я выполняю следующую...

5
голоса
5
ответов
13
просмотров
Как убить процесс по имени вместо PID в Linux?

Проблема с завершением процесса Firefox

Когда я пытаюсь запустить Firefox, он выдает сообщение "Процесс Firefox уже запущен". В таких случаях мне приходится вручную искать и убивать этот процесс. Для этого я использую следующие команды:

jeremy@jeremy-desktop:~$ ps aux | grep...
6
голоса
5
ответов
14
просмотров
Пример использования getopts в bash

Я хочу вызвать файл myscript следующими способами:

$ ./myscript -s 45 -p any_string

или

$ ./myscript -h  # должен показать помощь
$ ./myscript     # должен показать помощь

Мои требования следующие:

  • Использовать getopts для получения входных аргументов
  • Проверить, существует...
7
голоса
5
ответов
41
просмотров
sudo echo "что-то" >> /etc/привилегированныйФайл не работает

Заголовок: Проблема с использованием sudo для редиректа вывода в файл, на который нет разрешений

Текст вопроса:

Это довольно простая проблема, по крайней мере, так кажется. Я сталкиваюсь с ней, когда пытаюсь использовать sudo для изменения файловой системы в Linux, например, пытаюсь добавить...

6
голоса
5
ответов
19
просмотров
Длина строки в Bash

Заголовок: Как сохранить длину строки в другой переменной?

Описание проблемы:

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

myvar="some string"
echo ${#myvar}  
# 11

Теперь я хочу сохранить результат...

6
голоса
5
ответов
41
просмотров
Прерывание скрипта оболочки при возвращении любой команды ненулевого значения

У меня есть Bash-скрипт, который выполняет несколько команд. Я хотел бы, чтобы скрипт автоматически завершался с кодом возврата 1, если любая из команд возвращает ненулевое значение.

Есть ли способ сделать это без явной проверки результата каждой команды?

Например, вместо следующего...

7
голоса
5
ответов
34
просмотров
Проверьте, нужно ли выполнять pull в Git

Заголовок: Как проверить, изменился ли удаленный репозиторий, и нужно ли выполнять pull?

Я использую следующий простой скрипт:

git pull --dry-run | grep -q -v 'Already up-to-date.' && changed=1

Однако этот способ довольно тяжелый и неэффективный.

Есть ли более оптимальное решение?...

7
голоса
5
ответов
32
просмотров
Окрашенный grep — просмотр всего файла с подсвеченными совпадениями

Я нахожу флаг --color=always утилиты grep чрезвычайно полезным. Однако grep выводит только строки с совпадениями (если не запрашивать контекстные строки). Поскольку каждая напечатанная строка содержит совпадение, подсветка не добавляет столько возможностей, сколько могла бы.

Мне бы очень хотелось...

6
голоса
5
ответов
39
просмотров
Как получить пароль из оболочки без вывода в терминал?

У меня есть скрипт, который автоматизирует процесс и требует доступа к защищенной паролем системе. Доступ к системе осуществляется через командную программу, которая принимает пароль пользователя в качестве аргумента.

Я хотел бы запросить у пользователя ввод пароля, присвоить его переменной...

8
голоса
5
ответов
43
просмотров
Почему не удается изменить директорию с помощью "cd" в скрипте?

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

#!/bin/bash
cd /home/tree/projects/java

Я сохранил этот файл как proj, добавил права на выполнение с помощью chmod и скопировал его в /usr/bin. Когда я вызываю его с помощью...

6
голоса
5
ответов
37
просмотров
Есть ли команда TRY CATCH в Bash?

Я пишу оболочку и мне нужно проверить, установлено ли терминальное приложение. Я хочу использовать команду TRY/CATCH для этого, если нет более элегантного способа. Есть ли какие-то рекомендации по проверке установки приложения в оболочке?

7
голоса
5
ответов
31
просмотров
Как узнать имя скрипта в Bash?

Как я могу определить имя файла Bash-скрипта внутри самого скрипта?

Допустим, мой скрипт находится в файле runme.sh, как мне сделать так, чтобы он выводил сообщение "Вы запускаете runme.sh", не зашивая это имя в код?

6
голоса
5
ответов
36
просмотров
Как проверить статус завершения с помощью оператора 'if'

Я столкнулся с проблемой проверки статуса выхода в условии if для вывода определённого сообщения. В данный момент я вот как это представляю:

if [ $? -eq 1 ]; then
    echo "blah blah blah"
fi

Однако у меня есть ещё одна проблема: инструкция exit стоит перед if, так как необходимо...