Tag: bash

Как заставить скрипт принимать несколько аргументов?

Это очень простой скрипт #!/usr/local/bin/bash set -e if [ "$#" -lt 1 ] then echo "Please insert at least one argument" exit else echo -e "\c" fi if [ -h "$1" ] then echo "$1 is a symbolic link" else echo "$1 in not a symbolic link" fi ~ Мой вопрос: как изменить скрипт для […]

Каково использование $ & in bash?

Я изучал специальные параметры в bash. Мне любопытно узнать, что такое $& и как оно отличается от $_ . Я вижу следующий вывод при запуске команд, но не смог найти значение. k@Linux:~$ echo $& [1] 12397 $ k@Linux:~$ echo $n [1]+ Done echo $ k@Linux:~$

Подождите, пока появится окно X (исчезнет)

Внутри сценария оболочки мне нужно подождать, пока появится окно с заголовком, сделайте некоторое действие, а затем дождитесь его исчезновения и выполните другое действие. До вчерашнего дня у меня был этот простой код. Проблема заключается в том, что диск не может быть переведен в состояние энергосбережения, пока скрипт остается включенным, и это может быть в течение […]

Как захватить сообщение об ошибке из выполненной команды?

Мне было поручено создать автоматизированный скрипт для упрощения работы сервера, и одна вещь, в которой они нуждаются, – это отчет обо всех выводах каждой выполняемой команды. Я хочу сохранить сообщение об ошибке внутри строки и добавить ее в текстовый файл. Предположим, я выполнил эту команду: /sbin/modprobe -n -v hfsplus Результатом запуска этого в моей машине […]

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

Я часто ищу изменения с history | grep 'string' history | grep 'string' Я получаю список команд в моей истории, а также номер строки истории), например history | grep 'git' 755 git status 1535 git push origin master 1570 git merge origin/one-146 1667 git reset –hard origin/master Теперь я могу вспомнить и выполнить команду за […]

Может ли следующая программа в конвейере увидеть код выхода предыдущей программы?

Я хотел бы создать конвейер сценариев Bash, подобных этому prog1 | prog2 так что prog2 может видеть код выхода prog1 и действовать по-разному на основе этой информации. Это возможно?

Что это за подчеркивающие команды?

Когда я tab tab _ в терминал, Bash предлагает 206 возможностей. Я попытался запустить один из них _git_rm но ничего не случилось, что это такое? Вот скриншот:

В чем разница между этими четырьмя командами (fifo, замещение процесса, перенаправление …)

Моя цель – создать простой сервер эха с использованием nc и одного fifo . Я не ищу лучшего способа сделать это, я просто пытаюсь понять семантику следующих команд (когда происходит вилка, почему, что она меняет, почему команды ведут себя по-другому …). Я использую Bash, поэтому я не уверен, что все команды будут работать с POSIX […]

mail: отправить письмо с прикрепленным файлом из командной строки

Я знаю, как отправить электронное письмо из командной строки (скрипта) echo "body" | mail -s "subject" my@email.com Можно ли отправлять вложения из командной строки (сценарий)? Я использую heirloom-mailx в Debian Wheezy.

Какой интерпретатор оболочки запускает скрипт без shebang?

Предположим, что оболочка по умолчанию для моей учетной записи – zsh, но я открыл терминал и запустил bash и выполнил скрипт с именем prac002.sh , какой интерпретатор интерпретатора будет использоваться для выполнения скрипта zsh или bash? Рассмотрим следующий пример: papagolf@Sierra ~/My Files/My Programs/Learning/Shell % sudo cat /etc/passwd | grep papagolf [sudo] password for papagolf: papagolf:x:1000:1001:Rex,,,:/home/papagolf:/usr/bin/zsh […]

Linux и Unix - лучшая ОС в мире.