Tag: function

Возможно ли использовать специальные символы в имени функции оболочки?

Мне нужно создать функцию в сценарии оболочки, это имя функции должно содержать специальные символы. как >() { echo $1 $2 } Здесь мое имя функции > , Если его возможно, как я могу дать, Как и выше, я пробовал это, Но это произойдет через ошибку

Как передать путь файла к функции вместо содержимого файла?

Я использую оболочку bash на Ubuntu Linux. У меня это в моем сценарии output_file=create_test_results_file "$TFILE1" Через эхо-инструкции я проверил, что значение $ TFILE1 является файловым путем, например /tmp/run_tests.sh1.7381.tmp Но когда я запускаю свой скрипт, каким-то образом содержимое файла передается моей функции, содержимое которой #!/bin/bash create_test_results_file () { RESULTS_INPUT_FILE=$1 OUTPUT_FILE="/tmp/output`date +%m`_`date +%d`_`date +%y`.txt" touch $OUTPUT_FILE marker="" […]

тайм-аут вызывает, когда цикл чтения заканчивается, когда `cat` отключен

Я не могу понять, почему timeout в вызове функции приведет к остановке цикла. У меня есть «решение», но я действительно очень заинтригован, как / почему это происходит! Кажется, что что-то связано с тем, что cat стала таймаутом команды? TL; DR while read -r line; do … done < file while read -r line; do … […]

Определение функции bash динамически с использованием eval

Я пытаюсь определить функцию bash динамически, используя следующий код: delegate_function() { echo "output from delegate"; } eval "parent_function() { echo $(delegate_function); }" Цель состоит в том, чтобы динамическая отправка родительской функции в делегат при выполнении. Однако из-за того, как работает eval моя функция определяется следующим образом: kshitiz:/tmp$ type parent_function parent_function is a function parent_function () […]

Проблема со всей функцией в скрипте

Я хочу обнаружить онлайн-службы сети / оболочки в моей Solaris. Для этого я пишу следующий скрипт: compare_ser() { if [ "$1" != "" ]; then echo "True" >> Solaris.txt fi } export -f compare_ser svcs network/shell | cut -d ' ' -f1 | grep "online" | xargs -n1 bash -c 'compare_ser $@' когда я запускаю […]

Использование функции, определенной в родительском скрипте

Я написал следующий скрипт в test.sh: #!/bin/sh compare() { if [ $1 != root ]; then echo "Fail" >> CAT1.txt fi } awk -F: '$4 == 0' /etc/passwd | cut -d: f1 | xargs -n1 -i bash -c 'compare "$@"' _ при выполнении этих скриптов, получите следующую ошибку: _: compare: command not found

как получить или отразить имя вызываемой функции bash?

Я еще не нашел решения для этого. Любой намек? Я иногда пишу bash-функции в своих сценариях оболочки, и мне нравится, когда мои скрипты являются подробными, а не только для отладки. поэтому иногда мне хотелось бы отобразить «имя» вызываемой функции bash как «переменную» в моих скриптах. то, что я иногда делал, устанавливает только обычную переменную, содержащую […]

Bash Scripting echo локально в функции

В сценариях bash я стараюсь, чтобы мои переменные были локальными для функций, где бы я ни был, а затем передаю то, что мне нужно, из функций, таких как ниже #!/bin/bash function FUNCTION() { local LOCAL="value" echo "$LOCAL" # return this variable } GLOBAL=$(FUNCTION) echo "$GLOBAL" Но возможно ли это сделать, включая собственные эхо-функции, чтобы, если […]

Как подсчитать подпроцессы, достигшие определенного состояния

У меня есть сценарий bash, который запускает> 20 подпроцессов (функции, запущенные с использованием & in background) и хочу включить индикатор прогресса, который сообщает пользователю, сколько из этих подпроцессов уже запущено. Проблема в том, что для этих подпроцессов достаточно времени для загрузки (~ 20 секунд, в зависимости от сети). Есть ли способ подсчитать количество подпроцессов, которые […]

Вызовите скрипт после отключения от сервера

У меня есть сценарий, который я сделал для работы, который вызовет функцию, которая принимает аргумент. Я использую аргументы для ssh на наших серверах. Мой вопрос: есть ли способ вызвать метод, чтобы, если / когда я отсоединяюсь от наших серверов, он будет автоматически вызывать скрипт? Так, например, я могу ssh на одном из наших серверов. У […]

Linux и Unix - лучшая ОС в мире.