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

Аргумент зазвичай визначається як фактичне значення, передане функції, процедурі або програмі командного рядка.

2
Як видалити позиційний параметр з $ @
В основному, я хочу "вирвати" перше виникнення -infзі списку параметрів. (Решта параметрів будуть передані іншій команді.) У мене сценарій має таку структуру: #!/bin/sh <CODE> for POSITIONAL_PARAM in "$@" do <CODE> if [ "$POSITIONAL_PARAM" = '-inf' ] then <PLUCK $POSITIONAL_PARAM FROM $@> break fi <CODE> done <CODE> some-other-command "$@" # end …

3
Як запобігти введенню команд через параметри команд?
У мене є програма для обгортки, де мені потрібно дозволити користувачеві вказати спеціальні параметри для переходу на тренажер. Однак я хочу переконатися, що користувач не вводить інші команди через користувацькі параметри. Який найкращий спосіб досягти цього? Наприклад. Користувач надає: -a -b Виконання програми: mysim --preset_opt -a -b Однак я не …

4
Як я можу аналізувати необов'язкові аргументи в bash-скрипті, якщо не наводиться порядок?
Мене бентежить як включити необов'язкові аргументи / прапорці під час написання bash-скрипту для наступної програми: Програма вимагає двох аргументів: run_program --flag1 <value> --flag2 <value> Однак є кілька необов’язкових прапорів: run_program --flag1 <value> --flag2 <value> --optflag1 <value> --optflag2 <value> --optflag3 <value> --optflag4 <value> --optflag5 <value> Я хотів би запустити скрипт bash …

4
Чому не використовується декілька команд із || або && умовна робота?
Це працює на оболонці (bash, dash): [ -z "" ] && echo A || echo B A Однак я намагаюся написати сценарій оболонки POSIX , він починається так: #!/bin/sh [ "${#}" -eq 1 ] || echo "Invalid number of arguments, expected one."; exit 1 readonly raw_input_string=${1} [ -z "${raw_input_string}" ] …

2
Зв'язування рядків Bash, що використовується для складання списку параметрів
З огляду на цей шматок басу: PARMS='-rvu' PARMS+=" --delete --exclude='.git'" echo $PARMS rsync ${PARMS} . ${TARGET} Відлуння показує рядок PARMS як очікувалося, помилка не відображається, але rsync мовчки діє так, як ніби опції, додані знаком + =, не існували. Однак це працює, як очікувалося: PARMS='-rvu' rsync ${PARMS} --delete --exclude='.git' . …

3
Як я можу генерувати аргументи для іншої команди за допомогою підстановки команд
Слідом за: несподівана поведінка підстановки командної оболонки У мене є команда, яка може взяти величезний перелік аргументів, деякі з яких можуть законно містити пробіли (і, можливо, інші речі) Я написав сценарій, який може генерувати ці аргументи для мене з цитатами, але я повинен скопіювати та вставити вихід, наприклад ./somecommand <output …

3
Як виконувати команду кілька разів з різними аргументами?
Я на Ubuntu. Я скопіював деякі аргументи (розділені новим рядком) і можу використовувати xsel, щоб надрукувати їх так $ xsel arg1 arg2 arg3 arg4 ... Тепер я хочу використовувати кожен з цих аргументів для іншої команди і виконувати цю команду стільки разів, скільки є аргументів. Тому я спробував $ xsel …

3
Чи є простий спосіб реєстрації всіх виконаних команд, включаючи аргументи командного рядка?
Я намагаюся знайти, як записати конкретну інстанцію, rrdtoolщоб побачити, чи невірний він шлях. Я знаю, що міг би обернути виконуваний файл у скрипт оболонки, який би реєстрував параметри, але мені було цікаво, чи існує більш специфічний для ядра спосіб контролю за цим, можливо, зворотний виклик файлової системи, який бачить, коли …
11 logs  proc  arguments  audit 


1
Видалення файлів старше 500 днів
У мене є каталог з файлами 2010 року. Я хочу видалити всі файли старші 500 днів, і я спробував це: find /var/log/arc/* -type f -mtime +500 -delete {}\; Але я розумію: -bash: /usr/bin/find: Argument list too long Як я знаю, це означає, що файлів занадто багато, і findїх не вдається …

2
Передайте аргументи, щоб функціонувати саме так, як є
У мене є така функція: bar() { echo $1:$2; } Я називаю цю функцію з іншої функції, foo. fooсебе називають так: foo "This is" a test Я хочу отримати такий результат: This is:a Тобто аргументи, які barотримує, повинні бути тими ж лексемами, які я передаю foo. Як це fooпотрібно здійснити …

3
Як передавати файли, знайдені знаходженням, як аргументи?
По- перше , щоб відрізати тривіальних , але непридатних відповідей: Я можу використовувати ні find+ xargsтрюк , ні його варіанти (наприклад , findз -exec) , тому що мені потрібно використовувати кілька таких виразів на виклик. Я повернусь до цього наприкінці. Тепер для кращого прикладу розглянемо: $ find -L some/dir -name …

4
Чи може сценарій оболонки надрукувати свій аргумент, цитуючи так, як ви їх записували в підказці оболонки?
У сценарії оболонки моє розуміння полягає в тому, що "$@"розширюється на аргументи сценарію, цитуючи їх за потребою. Наприклад, це пересилає аргументи сценарію до gcc: gcc -fPIC "$@" <<<Хоча при використанні синтаксису передачі до stdin bash "@$"не працює, як я очікував. #!/bin/bash cat <<< "$@" Викликаючи сценарій як ./test.sh foo "bar …

4
Передача декількох каталогів до опції -prune in find
Я використовую findдля пошуку та видалення резервних файлів, але хочу виключити певні каталоги з пошуку. Резервні імена файлів може закінчуватися .bck, bak, ~або backup. Код мінімального робочого прикладу (MWE) з виключенням лише трьох каталогів: #! /bin/bash find . -type d \( -path "./.*" -o -path "./Music" -o -path "./Documents" \) …

2
Який канонічний спосіб знайти фактичну максимальну довжину списку аргументів?
Після ARG_MAX максимальна довжина аргументів для нового процесу, схоже ARG_MAX, неправильно (або принаймні неоднозначно) визначена в моєму Mac Mini 3,1 під керуванням Ubuntu 12.04: $ getconf ARG_MAX # arguments 2097152 $ locate limits.h | xargs grep -ho 'ARG_MAX[ \t]\+[0-9]\+' | uniq | cut -d ' ' -f 8 131072 Здається, …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.