km@Karls-MBP ~/dev/form (master) $ SS="----\n----"
km@Karls-MBP ~/dev/form (master) $ printf "$SS" | head -1
bash: printf: --: invalid option
printf: usage: printf [-v var] format [arguments]

Я пытаюсь вывести вторую последнюю строку из переменной. Кажется, что строка интерпретируется как флаг.

2 ответа2

2

Скажите printf что больше нет вариантов:

printf -- "$SS"
0

Если вы не хотите, чтобы оболочка интерпретировала \n , используйте это:

printf -- "%s" "$SS"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .