Моя цель - эхо-символ, например #
, на основе значения, такого как num=6
, и он должен печатать #
6 раз на экране.Эхо-символ, основанный на значении переменной (linux)
Не знаете, как это получить.
Моя цель - эхо-символ, например #
, на основе значения, такого как num=6
, и он должен печатать #
6 раз на экране.Эхо-символ, основанный на значении переменной (linux)
Не знаете, как это получить.
Вы могли бы сделать что-то вроде
printf '#%.0s' {1..6}
или, в более общем случае,
printf '#%.0s' $(seq 1 $num)
'{1..6}' не будет работать в ksh. – ceving
@ceving, который [тег: ksh]? Он работает в канонической версии AT & T ksh 'AJM 93u + 2012-08-01' –
@HenkLangeveld Он может работать в версии, которую вы цитировали, но главная причина использования KornShell - писать скрипты, которые также работают на более старых системах Unix , Если вы используете синтаксис ksh, обогащенный функциями Bash, вы откажетесь от преимущества переносимости, что делает почти бесполезным использование KornShell. 'Ksh' Solaris 10 не поддерживает' {1..6} '. – ceving
printf "%*s" "$num" " " | tr " " "#"
или
yes '#' | head -"$num" | tr -d "\n"
Что вы пробовали? Есть много похожих вопросов, которые вы смотрите вокруг? – Inian
Возможный дубликат [Печатать символ повторно в bash] (http://stackoverflow.com/questions/5799303/print-a-character-repeatedly-in-bash) –
Возможный дубликат [Как я могу повторить символ в bash ?] (http://stackoverflow.com/questions/5349718/how-can-i-repeat-a-character-in-bash) – fuglede