Вопросы с тегом «bash»

Для вопросов о скриптах, написанных для командной оболочки Bash. Для сценариев оболочки с ошибками / синтаксическими ошибками, пожалуйста, проверьте их с помощью программы shellcheck (или на сервере веб-проверки оболочки по адресу https://shellcheck.net) перед размещением здесь. Вопросы об интерактивном использовании Bash, скорее всего, будут касаться темы Super User, а не переполнения стека.

4
Как в bash привязать функциональную клавишу к команде?
Пример: я хочу привязать F12ключ к команде echo "foobar", чтобы каждый раз, когда я нажимаю, F12на экран выводилось сообщение «foobar». В идеале это может быть любая произвольная команда оболочки, а не только встроенные команды. Как это сделать?
91 bash  shell  binding 

6
Почему я не могу указать переменную среды и повторить ее в той же командной строке?
Рассмотрим этот фрагмент: $ SOMEVAR=AAA $ echo zzz $SOMEVAR zzz zzz AAA zzz Здесь я установил $SOMEVARзначение AAAв первой строке - и когда я повторяю его во второй строке, я получаю AAAсодержимое, как и ожидалось. Но затем, если я попытаюсь указать переменную в той же командной строке, что и echo: …

5
Как заставить sed читать со стандартного ввода? [дубликат]
На этот вопрос уже есть ответы здесь : sed unknown option для `s 'в сценарии bash [дубликат] (4 ответа) Закрыт 3 месяца назад . я стараюсь grep searchterm myfile.csv | sed 's/replaceme/withthis/g' и получение unknown option to `s' Что я делаю неправильно? Редактировать: Согласно комментариям, код действительно правильный. Мой полный …
91 linux  bash  shell 

16
tar: добавить все файлы и каталоги в текущий каталог, ВКЛЮЧАЯ .svn и т. д.
Я пытаюсь создать каталог tar.gz и использовать tar -czf workspace.tar.gz * Полученный tar включает .svnкаталоги в подкаталогах, но НЕ в текущем каталоге (поскольку он *расширяется только до `` видимых '' файлов, прежде чем он будет передан в tar Я попытался tar -czf workspace.tar.gz .вместо этого, но тогда я получаю сообщение …

3
Командная строка Bash и ограничение ввода
Есть ли какое-то ограничение на количество символов в bash (или других оболочках) на продолжительность ввода? Если да, то каков этот лимит символов? Т.е. можно ли написать в bash команду, которая слишком длинна для выполнения из командной строки? Если необходимого ограничения нет, есть ли предлагаемый предел?

8
Использование цветов с printf
При таком написании он выводит текст синим цветом: printf "\e[1;34mThis is a blue text.\e[0m" Но я хочу, чтобы формат был определен в printf: printf '%-6s' "This is text" Теперь я попробовал несколько вариантов добавления цвета, но безуспешно: printf '%-6s' "\e[1;34mThis is text\e[0m" Я даже безуспешно пытался добавить код атрибута в …
90 linux  bash  colors  printf 

2
В чем разница между использованием терминала на Mac и Linux? [закрыто]
Закрыто. Этот вопрос не по теме . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме Stack Overflow. Закрыт 9 лет назад . Уточните этот вопрос Я использую Ubuntu последние четыре года. У меня есть базовые знания команд оболочки, и я предпочитаю …
89 macos  bash  shell  ubuntu  terminal 


2
Путаница в отношении $ {array [*]} и $ {array [@]} в контексте завершения bash
Я впервые пытаюсь написать завершение bash, и меня немного смущают два способа разыменования массивов bash ( ${array[@]}и ${array[*]}). Вот соответствующий фрагмент кода (кстати, он работает, но я хотел бы понять его лучше): _switch() { local cur perls local ROOT=${PERLBREW_ROOT:-$HOME/perl5/perlbrew} COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} perls=($ROOT/perls/perl-*) # remove all but the final part of …

9
Как выполнить вывод команды в текущей оболочке?
Мне хорошо sourceизвестна .утилита (также известная как ), которая берет содержимое из файла и выполняет его в текущей оболочке. Теперь я преобразую некоторый текст в команды оболочки, а затем запускаю их следующим образом: $ ls | sed ... | sh lsэто просто случайный пример, исходный текст может быть любым. sedтоже …
89 bash  shell  unix  pipe 

3
cp -r без скрытых файлов
У меня два каталога и один пустой. В первом каталоге есть много подкаталогов со скрытыми файлами. Когда я cp -rперехожу из первого каталога во второй, скрытые файлы тоже копируются. Какие-нибудь решения, чтобы избежать их?
89 linux  bash  cp 

7
Самый простой способ проверить индекс или ключ в массиве?
С помощью: set -o nounset Имея индексированный массив, например: myArray=( "red" "black" "blue" ) Какой самый короткий способ проверить, установлен ли элемент 1? Иногда использую следующее: test "${#myArray[@]}" -gt "1" && echo "1 exists" || echo "1 doesn't exist" Я хотел бы знать, есть ли предпочтительный вариант. Как работать с …
89 arrays  bash  indexing  key 

4
Как показать номер строки при выполнении сценария bash
У меня есть тестовый скрипт, который имеет множество команд и будет генерировать много вывода, я использую set -xили set -vи set -e, поэтому скрипт остановится при возникновении ошибки. Однако мне все еще довольно сложно определить, в какой строке остановилось выполнение, чтобы найти проблему. Есть ли метод, который может выводить номер …
89 linux  bash  testing 

18
Спите до определенного времени / даты
Я хочу, чтобы мой сценарий bash спал до определенного времени. Итак, мне нужна такая команда, как «сон», которая принимает не интервал, а время окончания и спит до этого момента. «At» -daemon не является решением, так как мне нужно заблокировать работающий скрипт до определенной даты / времени. Есть такая команда?
89 bash  sleep  wait 

13
Принудительно сбрасывать вывод в файл, пока скрипт bash все еще запущен
У меня есть небольшой скрипт, который ежедневно вызывается crontab с помощью следующей команды: /homedir/MyScript &> some_log.log Проблема с этим методом заключается в том, что some_log.log создается только после завершения MyScript. Я хотел бы сбрасывать вывод программы в файл во время ее работы, чтобы я мог делать такие вещи, как tail …
89 bash  file  flush 

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