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

Оболочка является интерфейсом командной строки Unix. Вы можете вводить команды в оболочке в интерактивном режиме или писать сценарии для автоматизации задач. Используйте этот тег для вопросов, относящихся к / bin / sh и большинству совместимых оболочек (ash, bash, ksh, zsh,…). Для сценариев оболочки с ошибками, пожалуйста, проверьте их в http://shellcheck.net перед публикацией здесь.

3
Добавление чрезвычайно больших чисел в сценарии оболочки
Предположим, что два числа хранятся в двух разных файлах, a.txtи b.txt. Каждое число достаточно большое (более 30 цифр), чтобы его не поддерживал числовой тип данных, используемый bash. Как я могу добавить их в оболочку?

1
Как поиск в $ PATH работает под капотом?
В Интернете слишком много статей / ресурсов, которые учат людей, КАК устанавливать переменную среды, PATHчтобы они могли использовать короткий javaили и pythonт. Д. Вместо абсолютного пути в интерфейсе командной строки. Что мне интересно знать, так это то, что скрывается за сценой, когда мы вводим команду и нажимаем клавишу ввода (аналогично …
8 shell  path 

3
Команда, с которой был запущен процесс
Предположим, я запустил процесс с помощью следующей команды: myapp -e -c -f myapp.config > /var/log/myapp/myapp.log 2>&1 Через некоторое время я только pidв myappпроцессе, например , 1234. Есть ли способ , чтобы получить команду со всеми флагами и перенаправив вывод myapp.logкак - то просто pid?

3
Отправить stdout и stderr в файл, системный журнал и терминал
Для некоторых облачных машин, которые я запускаю, я пытаюсь войти в определенный файл, системный журнал и терминал / консоль. В верхней части сценариев настройки моего компьютера / cloud-init у меня есть следующее: #!/bin/bash exec &> >(tee "/tmp/box-setup.log" | logger -t box-setup) apt-get install -y some-package Это прекрасно работает при отправке …

2
Почему эта операция sudo mv не работает с подстановочными знаками?
Я думаю, что должен быть простой ответ на это, но я не могу понять, почему это не работает! У меня есть папка в моем домашнем каталоге (ну, несколько уровней ниже), называемая установленными плагинами. Я хочу перенести все содержимое этой папки (около 15 файлов .jar) в другие папки, также называемые установленными …
8 shell  sudo  wildcards  mv 

3
Sed с редактированием на месте меняет группу владельцев файла
У меня есть phpскрипт shell ( ), который связывается с целевым файлом следующим образом: проверяет, можно ли записать файл и каталог с помощью phps is_writable()(я не думаю, что это проблема) выполняет редактирование файла на месте с помощью sedкоманды: grep -q "$search" "$passwd_file" && { sed -i "s|$search|$replace|" "$passwd_file"; printf "Password …

3
Как я могу CTRL ^ C из запроса пароля?
Скажем, я запустил suкоманду и хочу ее отменить. Control+ Cне работает так, suкак работает sudo... Я должен завершить запрос (либо введя неправильный пароль достаточно много раз, либо получив правильный). Что-то, что я могу напечатать, чтобы убить приглашение пароля?

2
Назначение переменных влияет на текущую работающую оболочку
При написании кода я обнаружил, что эта строка: $ TZ="America/Los_Angeles" date; echo "$TZ" Thu Dec 24 14:39:15 PST 2015 Правильно показывает фактическое время в «Лос-Анджелесе» и то, что значение переменной TZне сохраняется. Все как и следовало ожидать. Однако с этой строкой, которую я использовал для расширения некоторых форматов до настоящего …

4
Как напечатать название отсутствующих файлов в папке?
У меня в папке более 2000 файлов, но в папке мало файлов. Наименования файлов похожи GLDAS_NOAH025SUBP_3H.A2003 001,0000 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 001,0600 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 001,1200 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 001,1800 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 002,0000 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 002,0600 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 002,1200 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 002,1800 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 003,0000 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003003.0600 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 003.1200 .001.2015210044609.pss.grb GLDAS_NOAH025SUBP_3H.A2003 003.1800 .001.2015210044609.pss.grb …

2
Какие оболочки не поддерживают расширение в виде круглых скобок и требуют запятых?
Современная рекомендация заключается в использовании: $(...) вместо старшего: `...` главным образом для удобочитаемости и избежания необходимости экранирования при вложении. Какие оболочки не поддерживают $(...)форму, и используются ли они до сих пор?

1
Расширение параметра в переменной, назначенной с подстановочным знаком
У меня есть два файла в моей текущей папке (MA502), чьи имена - MA502_TAAGGCGA-TCGCAGG_L001_R1_001.at.fastq MA502_TAAGGCGA-TCGCAGG_L001_R2_001.at.fastq У меня есть много таких папок - например, MA503, MA504 и т. Д., И я хочу зациклить их. Я назначаю имена переменных с помощью подстановочных знаков - Forward=*R1*.at.fastq Reverse=*R2*.at.fastq Я хочу , чтобы обработать эти …

4
Почему SIGKILL не завершает остановленную программу (да)?
Я использую Ubuntu 14.04 и у меня такое поведение, которое я не могу понять: Запустите yesкоманду (в оболочке по умолчанию: Bash ) Тип, CtrlZчтобы остановитьyes Беги jobs. Вывод: [1]+ Stopped yes Беги, kill -9 %1чтобы остановиться yes. Вывод: [1]+ Stopped yes Беги jobs. Вывод: [1]+ Stopped yes Это на Ubuntu, …

2
Почему xargs пропускает первый аргумент при передаче в subshell?
Ища способ вызывать более одной команды в однострочнике xargs, я нашел рекомендацию в findutils для вызова оболочки из xargs, например: $ find ... | xargs sh -c 'command $@' Самое смешное, что если я использую xargs вот так, по какой-то причине он пропускает первый аргумент: $ seq 10 | xargs …
8 shell  xargs 

4
Как мне выполнить xargs grep для вывода grep с пробелами?
Я ищу файлы на основе регулярного выражения, а затем пытаюсь найти в этих файлах контент. Так, например, у меня есть что-то вроде #Find all C++ files that match a certain pattern and then search them find . -name "*.cpp" | grep "<name regex>" | xargs grep "<content regex>" Проблема, с …
8 shell  grep  find  quoting  xargs 

3
Как эффективно использовать GNU параллельно
Предположим, я хочу найти все совпадения в сжатом текстовом файле: $ gzcat file.txt.gz | pv --rate -i 5 | grep some-pattern pv --rateиспользуется здесь для измерения пропускной способности трубы. На моей машине это около 420Mb / s (после распаковки). Сейчас я пытаюсь сделать параллельный grep, используя GNU параллельно. $ gzcat …

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