«Mod + X» по умолчанию. Это означает, что вы не настроили свои сочетания клавиш на что-то другое.
С регулярным выражением:
if [[ $1 =~ ^$'\n'*$ ]]; then
echo empty or only contains newlines
else
echo contains non-newline characters
fi
С подстановочными знаками, вместо прямой проверки наличия только новых строк, проверьте наличие не -символа новой строки:
if [[ $1 == *[^$'\n']* ]]; then
echo contains non-newline characters
else
echo empty or only contains newlines
fi
Или простой путь:
nl='
'
case $1 in
*[!$nl]*) echo contains non-newline characters;;
*) echo only contains newlines;;
esac
Для положительного совпадения с подстановочными знаками вам понадобится#
extendedglob
оператор (эквивалент *
оператора регулярного выражения):
set -o extendedglob
if [[ $1 == $'\n'# ]]; then
echo empty or only contains newlines
else
echo contains non-newline characters
fi