У меня есть сценарий оболочки в формате.custom_functions.sh.В прошлом это работало хорошо, но есть одна машина, которая частично использует функции и не учитывает другие.Я использую его на HP Prodesk под управлением Ubuntu 18.04.
Дополнительная информация У меня есть несколько пользовательских функций для быстрого форматирования, установки и т. Д. В одном файле (называемом custom_functions.sh).Я обычно поставляю этот файл в другие скрипты для повторного использования.Вот часть файла:
# !/bin/bash
# custom_functions.sh
. colour.sh
function commaToSpace()
{
sed -r 's/,/ /g'
}
function hyphenToCamel()
{
tr '_' '\n' | awk '{printf "%s%s", toupper(substr($0,1,1)), substr($0,2)}'
}
function camelToHyphen()
{
sed -r 's/([A-Z])/_\L\1/g'
}
function hyphenToSentence()
{
tr '_' ' ' | awk '{printf "%s%s", toupper(substr($0,1,1)), substr($0,2)}'
}
function spaceToCamel()
{
tr ' ' '\n' | awk '{printf "%s%s", toupper(substr($0,1,1)), substr($0,2)}'
}
function lowerCase()
{
tr '[:upper:]' '[:lower:]'
}
function properCase()
{
tr '[:upper:]' '[:lower:]' | awk 'BEGIN{OFS=FS=""}{$1=toupper($1);print}'
}
function stringSortDropDuplicatesNums()
{
string=$(awk '{print !a[$0]++}' <<< "$1")
printf '%s\n' "${string//[[:digit:]]/}"
}
function trimString(){
tr -d '\040\011\012\015'
}
.
.
.
Только некоторые из этих функций * создаются другими сценариями на указанном компьютере, а оставшиеся к концу файлапропускаются.Если я переименую этот файл и поставлю его, то все функции будут включены.Обратите внимание, я заверил, что нет именных столкновений.Это явление наблюдалось только на конкретной машине, и другие типы той же машины, работающей на той же операционной системе, не имеют проблем.Благодаря.