Я хочу написати наступну функцію bash таким чином, щоб вона могла прийняти свій вхід або з аргументу, або з каналу:
b64decode() {
echo "$1" | base64 --decode; echo
}
Бажане використання:
$ b64decode "QWxhZGRpbjpvcGVuIHNlc2FtZQ="
$ b64decode < file.txt
$ b64decode <<< "QWxhZGRpbjpvcGVuIHNlc2FtZQ="
$ echo "QWxhZGRpbjpvcGVuIHNlc2FtZQ=" | b64decode
Ви маєте рацію, однак це було просто використано як приклад.
—
tyrondis
base64іbashвсе це можна зробити. навіщо писати функцію просто, щоб уникнути використання параметра-dабо--decode? якщо ви дійсно повинні мати щось, що називаєтьсяb64decodeтодіalias b64decode='base64 --decode'.b64dхоч і коротше, і заощадити ще більше набравши тексту.