BASH_HELP Telegram 859
⚙️ Скрытие пользовательского ввода в скриптах bash

✔️Это может быть полезно, когда вы просите пользователей ввести пароли, API-токены или что-то еще, что вы не хотите выводить на экран.

▶️Мы рассмотрим два решения.
Одно работает с любой оболочкой Bash или Bash-подобной оболочкой, а другое соответствует POSIX, если вам нужна максимальная совместимость.
Скрипт ниже включает в себя оба решения.

▶️Это пример, который вы можете запустить, но в нем есть только 1-3 строки кода в середине, которые сосредоточены на скрытии пользовательского ввода.
Вы можете раскомментировать вариант 1 или 2 в зависимости от вашего случая использования.

#!/usr/bin/env bash

set -o errexit
set -o nounset

while true; do
printf "Please input your API key and hit enter: "

# ВАРИАНТ 1: ТРЕБУЕТСЯ ОБОЛОЧКА BASH ИЛИ BASH-ПОДОБНАЯ ОБОЛОЧКА (BASH, ZSH, ASH И Т. Д.)
read -sr key

# ВАРИАНТ 2: ДЛЯ МАКСИМАЛЬНОЙ СОВМЕСТИМОСТИ С ОБОЛОЧКАМИ (SH, DASH И Т. Д.)
# stty -echo
# read -r key
# stty echo

if [ -z "${key}" ]; then
printf "\n\nPlease input your API key or hit CTRL+c to halt this script\n\n"
else
# TODO: Вставьте свою пользовательскую логику, которая использует этот ключ.
printf "\n\nFor demo purposes, your API key is: %s\n" "${key}"
break
fi
done

▶️Основное отличие заключается в том, что флаг -s из read недоступен в sh и других минимальных оболочках.
Флаг -s не позволяет передавать ввод пользователя через echo.

▶️Чтобы обойти это ограничение, мы можем использовать stty, чтобы отключить эхо, возвращающее наш чувствительный текст, записать этот ввод в переменную, а затем снова включить echo.

🖼️ Ссылка на источник

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM



tgoop.com/bash_help/859
Create:
Last Update:

⚙️ Скрытие пользовательского ввода в скриптах bash

✔️Это может быть полезно, когда вы просите пользователей ввести пароли, API-токены или что-то еще, что вы не хотите выводить на экран.

▶️Мы рассмотрим два решения.
Одно работает с любой оболочкой Bash или Bash-подобной оболочкой, а другое соответствует POSIX, если вам нужна максимальная совместимость.
Скрипт ниже включает в себя оба решения.

▶️Это пример, который вы можете запустить, но в нем есть только 1-3 строки кода в середине, которые сосредоточены на скрытии пользовательского ввода.
Вы можете раскомментировать вариант 1 или 2 в зависимости от вашего случая использования.

#!/usr/bin/env bash

set -o errexit
set -o nounset

while true; do
printf "Please input your API key and hit enter: "

# ВАРИАНТ 1: ТРЕБУЕТСЯ ОБОЛОЧКА BASH ИЛИ BASH-ПОДОБНАЯ ОБОЛОЧКА (BASH, ZSH, ASH И Т. Д.)
read -sr key

# ВАРИАНТ 2: ДЛЯ МАКСИМАЛЬНОЙ СОВМЕСТИМОСТИ С ОБОЛОЧКАМИ (SH, DASH И Т. Д.)
# stty -echo
# read -r key
# stty echo

if [ -z "${key}" ]; then
printf "\n\nPlease input your API key or hit CTRL+c to halt this script\n\n"
else
# TODO: Вставьте свою пользовательскую логику, которая использует этот ключ.
printf "\n\nFor demo purposes, your API key is: %s\n" "${key}"
break
fi
done

▶️Основное отличие заключается в том, что флаг -s из read недоступен в sh и других минимальных оболочках.
Флаг -s не позволяет передавать ввод пользователя через echo.

▶️Чтобы обойти это ограничение, мы можем использовать stty, чтобы отключить эхо, возвращающее наш чувствительный текст, записать этот ввод в переменную, а затем снова включить echo.

🖼️ Ссылка на источник

🔨 bash_help

BY BashMaster




Share with your friend now:
tgoop.com/bash_help/859

View MORE
Open in Telegram


Telegram News

Date: |

Clear Matt Hussey, editorial director at NEAR Protocol also responded to this news with “#meIRL”. Just as you search “Bear Market Screaming” in Telegram, you will see a Pepe frog yelling as the group’s featured image. Ng Man-ho, a 27-year-old computer technician, was convicted last month of seven counts of incitement charges after he made use of the 100,000-member Chinese-language channel that he runs and manages to post "seditious messages," which had been shut down since August 2020. In the next window, choose the type of your channel. If you want your channel to be public, you need to develop a link for it. In the screenshot below, it’s ”/catmarketing.” If your selected link is unavailable, you’ll need to suggest another option. The court said the defendant had also incited people to commit public nuisance, with messages calling on them to take part in rallies and demonstrations including at Hong Kong International Airport, to block roads and to paralyse the public transportation system. Various forms of protest promoted on the messaging platform included general strikes, lunchtime protests and silent sit-ins.
from us


Telegram BashMaster
FROM American