Запитання з тегом «bash»

Питання, характерні для Bourne Again SHell від GNU, на відміну від інших оболонок Bourne / POSIX. Для питань щодо оболонок Unix взагалі використовуйте тег / shell.

2
Як програми виводяться в інше місце, ніж STDOUT / STDERR? Як цього уникнути?
Мабуть, я не знаю всіх вихідних напрямків, які доступні для використання. Я знаю про stdout( &1) та stderr( &2). Однак після перенаправлення обох дескрипторів я іноді все одно отримую деякий вихід у своїй консолі! Найпростіший приклад, який я можу придумати, - це GNU Parallel; Кожного разу, коли я його використовую, …

1
exec і tee до логфайлу: поясніть ці команди bash
Я бачив це у верхній частині мого файлу скриптів bash: export LOGFILE=$LOGDIRECTORY/${SCRIPT_NAME}.log exec > >(tee $LOGFILE) exec 2>&1 Що це робить? Які два виконавчі процеси тут роблять? Я усвідомлюю, що зберігаючи його таким чином, весь результат виконання сценарію є перекладеним, $LOGFILEале я хотів зрозуміти з точки зору execтверджень.
15 bash 

6
Використання "зарезервованих" кодів для виходу зі скриптів оболонки
Нещодавно я натрапив на цей список кодів виходу із спеціальними значеннями з Посібника з розширеного сценарію Bash. Вони посилаються на ці коди як на зарезервовані та рекомендують: Згідно з наведеною вище таблицею, коди виходу 1-2, 126-165 та 255 мають особливі значення, тому слід уникати вказаних користувачем параметрів виходу. Деякий час …

3
Як читати тире-файли
Як я можу прочитати тире-файл з терміналу, крім того, щоб розмежувати його ./ Наприклад, для читання a - fileми можемо прочитати його cat ./-file_name З: Чи існує альтернативний спосіб досягти того самого?
15 bash  cat 

3
spawn - команда не знайдена!
Я використовую Mac OS X 10.9.4, наступний мій сценарій для копіювання файлів з локальної машини на інший хост #!/bin/bash #!/usr/bin/expect echo "I will fail if you give junk values!!" echo " " echo "Enter file name: " read filePath echo " " echo "Where you want to copy?" echo "Enter" …

3
Що означають `1 >>` та `2 >>` у bash-скрипті?
У мене є наступний скрипт bash, з того, що я розумію, >> використовується для додавання виводу команди до наявного файлу замість перезапису, але що це робить у цьому випадку? Цей скрипт викликає деякі файли EXE для перетворення з одного формату в інший. Кожному файлу існує багато років, тому він перебирає …


3
історія баш для поточної сесії
Можливо, я щось пропускаю, але чи є спосіб отримати вашу поточну історію баш для поточного сеансу, який ви використовуєте як якщо я біжу ssh host $ pwd $ ls $ cd /tmp Я просто хочу побачити ці 3 команди і більше нічого

2
Bash -c з позиційними параметрами
Зазвичай $0у скрипті встановлюється ім'я сценарію або те, на що він викликався (включаючи шлях). Однак, якщо я використовую bashцей -cпараметр, $0встановлюється перший з аргументів, переданих після командного рядка: bash -c 'echo $0 ' foo bar # foo Насправді, схоже, позиційні параметри зміщені, але в тому числі $0. Однак shiftкомандний рядок …
15 bash 

4
Рекурсивно повторюйте файли в каталозі
Рекурсивно ітерацію файлів у каталозі легко зробити: find . -type f -exec bar {} \; Однак вищесказане не працює для складніших речей, де потрібно зробити багато умовних гілок, петлі тощо. Раніше я використовував це для вищезазначеного: while read line; do [...]; done < <(find . -type f) Однак, схоже, це …

3
Як встановити кількість команд, що нагадує історію
Я використовую bash. Для перегляду історії моїх команд я викликаю historyкоманду, яку, на мою думку, називає однойменною програмою Gnu. (Я не знаю, чи є кращий конкретний шлях). В моєму .bashrc у мене зараз є рядок export PROMPT_COMMAND='history -a'щодо збереження історії від моїх кількох сеансів баш, які я веду. Якщо я …

5
Виконайте команду, коли система не працює та коли знову активна
Я хочу запустити команду, коли користувач стає неактивним (система не працює). Наприклад: echo "You started to be inactive." Крім того, коли користувач знову стає активним (система вже не працює): echo "You started to be active, again." Мені потрібен сценарій оболонки, який це зробить. Чи можливо це без таймера / інтервалу? …
15 linux  bash  shell 


1
Виконати команду, що надається параметрами функції
Я намагаюся створити метод функції в скрипті bash, який виконує команду, яку параметри подають до методу. Означає щось таке: special_execute() { # Some code # Here's the point where the command gets executed $@ # More code } special_execute echo "abc" Я вже пробував я $@, "$@", $*, "$*"як я …

3
Коли використовувати перенаправлення на stderr у скриптах оболонки
Я знаю, що добре керовані утиліти, такі як grep виводять "звичайні" повідомлення в stdout, а повідомлення про помилки - stderr. $ grep '^foo' file1 file2 file1:foo grep: file2: No such file or directory Коли я сам пишу сценарії оболонок, мені часто важко вирішити, який вихід і які повідомлення я повинен …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.