Это лучше было бы сделать с помощью алгоритма Люна. Обсуждение того, как реализовать его в bash, можно найти здесь https://codereview.stackexchange.com/questions/95211/validating-a-credit-card-number -using-luhns-algorithm
Устанавливаемые вами функции находятся в контексте вашей оболочки.
Так храни их там:~/.bash_functions
Каждый раз, когда загружается ваша оболочка, она загружает команды, ~/.bashrc
и даже псевдонимы, ~/.bash_aliases
. Это сценарии оболочки, которые просто добавляют команды в переменную PATH оболочки или устанавливают псевдонимы. Сценарии оболочки, которые определяют функции, также должны быть определены здесь.
Затем добавьте строку к вашему .profile
или .bashrc
, чтобы убедиться, что они загружены для вашего терминала или только в начале ваших сценариев оболочки, которые зависят от них:
if [ -f ~/.bash_functions ]; then
. ~/.bash_functions
fi
Добавить нужные функции к файлу:
#!/bin/bash
# ~/.bash_functions file
function_one () {
echo "hi"
}
function_two() {
...