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

18
Собирать коды выхода параллельных фоновых процессов (подоболочек)

Скажем, у нас есть скрипт bash, например: echo "x" & echo "y" & echo "z" & ..... echo "Z" & wait Есть ли способ собрать коды выхода для вложенных оболочек / подпроцессов? Ищите способ сделать это и ничего не можете найти. Мне нужно запустить эти подоболочки параллельно, иначе да,...

18
В чем разница между env, setenv, export и когда использовать?

Недавно я заметил, что у нас есть 3 варианта установки переменных среды: export envVar1=1 setenv envVar2=2 env envVAr3=3 Если есть другие способы, пожалуйста, просветите нас. Когда я должен предпочесть одно другому? Пожалуйста, предложите рекомендации. Что касается совместимости с оболочкой,...

18
Почему параметры в кавычках не работают, но работают без кавычек?

Я читал о том, что я должен заключать в кавычки переменные в bash, например, «$ foo» вместо $ foo. Однако при написании скрипта я обнаружил случай, когда он работает без кавычек, но не с ними: wget_options='--mirror --no-host-directories' local_root="$1" # ./testdir recieved from command line...

18
bash меняет свое поведение в зависимости от значения переменной «IFS»

Когда я устанавливаю IFSпеременную в пробел, bashобрабатывает несколько пробелов как один пробел ( myprogramэто программа, которая печатает полученные аргументы командной строки): IFS=" " x="hello hi world" ./myprogram $x argv[1] = hello argv[2] = hi argv[3] = world Но когда я устанавливаю...

18
«Запустите любую команду, которая передаст ненадежные данные командам, которые интерпретируют аргументы как команды»

Из руководства по findutils: Например, такие конструкции, как эти две команды # risky find -exec sh -c "something {}" \; find -execdir sh -c "something {}" \; очень опасны Причина этого заключается в том, что символ {{} расширяется до имени файла, которое может содержать точку с запятой или другие...

18
Почему $ {$ #} возвращает тот же результат, что и $$ в оболочке?

Пытаясь получить последний набор позиционных параметров /bin/dash, я пытался echo ${$#}. Удивительно, но это привело не к ошибке, а к PID, который совпадает с $$содержимым переменной. Вопрос, почему этот синтаксис работает? Какое синтаксическое правило применяется к этой оболочке? В основном то,...

17
команда find для определенных подкаталогов

Скажем , у меня есть каталог dirс тремя подкаталогами dir1.. dir3. А внутри у меня много файлов и других подкаталогов. Я хотел бы найти файл внутри, скажем, с *.c окончанием, но я бы хотел искать только в подкаталоге "dir / dir2" и во всех его подкаталогах. Как я могу сформулировать это?...

17
Как копировать и переименовывать найденные файлы в «функцию поиска» Linux?

У меня есть папка с именем, /home/user/tempsкоторая имеет 487 папок. В каждой папке у меня есть файл с именем thumb.png. Я хочу скопировать все файлы с именем thumb.png в отдельную папку и переименовать их в соответствии с папкой, из которой они...

17
Как временно обойти псевдоним в tcsh?

Я использую tcsh. bash и zsh и другие предложения здесь не помогут. У меня есть несколько псевдонимов, которые называются так же, как и другие команды, поэтому, если бы я делал это с псевдонимами, то при вводе одной и той же вещи теперь происходило бы что-то другое. Большую часть времени я хочу...

17
См. Перенаправление STDOUT запущенного процесса

Если я запускаю приложение с этой командой: /path/to/my/command >> /var/log/command.log И команда не возвращается, есть ли способ из другого приглашения посмотреть, на что установлен перенаправление STDOUT? Я ищу что-то вроде cat /proc/PID/redirects или ps -??? | grep PID но любой метод...

17
Как мне работать с переключателями в сценарии оболочки?

Существуют ли какие-либо встроенные инструменты, которые распознают -xи --xxxxкак переключатели, а не аргументы, или вам нужно пройти через все входные переменные, проверить на наличие тире, а затем проанализировать...

17
Извлечь среднюю часть строк из текстового файла?

Я пишу сценарий PHP для анализа большого текстового файла, чтобы сделать из него вставки базы данных. Однако на моем хосте файл слишком велик, и я достиг предела памяти для PHP. Файл имеет около 16 000 строк; Я хочу разделить его на четыре отдельных файла (сначала), чтобы посмотреть, смогу ли я их...

17
Запустить скрипт в неинтерактивной оболочке?

У меня есть работа cron, которая запускает скрипт. Когда я запускаю скрипт через интерактивную оболочку (ssh'ed to bash), он работает нормально. Когда скрипт запускается сам по себе через cron, он не работает. Я предполагаю, что он использует некоторые переменные среды, установленные в...

17
Пара команд, связанных с арифметикой, Dash, POSIX shell, sh, Increment

При увеличении переменной до / после, в POSIX Shell, в чем разница между этими двумя примерами. Кажется, что они будут иметь те же последствия, но будут ли они использоваться по-другому? Когда бы вы предпочли одно другому? X=$((X+1)) :...

17
Как скопировать из / в буфер обмена tmux с трубами оболочки?

При работе в среде оболочки я довольно часто сталкиваюсь с необходимостью копировать «промежуточный вывод канала» (например, из / в уже работающие редакторы, в другие оболочки, на другие машины и т. Д.). В оконной среде простой (и универсальный) метод решения этой проблемы часто осуществляется...

17
xargs: использование одного и того же аргумента в нескольких командах

Я пытаюсь написать однострочную строку, которая может проверять вывод df -hи оповещать, когда на одном из разделов заканчивается [или почти] свободное место. Это та часть, которая использует xargs, которая пинает меня в задницу сейчас ... echo 95 | xargs -n1 -I{} [ {} -ge 95 ] && echo "No...