2011-10-07 3 views
1

이것은 내가하고있는 프로그램의이 부분부터 시작하는 숙제가 아니다. 내가하려는 일은 bash 루프를 사용하여이 모양을 인쇄하는 것이다. 배시 루프 프로그램


******** 
    **** 
    ** 


예를 들어 내가 바르를 넣어 경우, 그래서 내가 지금까지 무엇을, 그것은 모양을 인쇄합니다,하지만 난 echo 문에 사용하는 돌기 수있는 방법을 찾기 위해 노력하고있다 = "8"다음 var를 2 씩 줄이고 같은 줄에 인쇄하십시오. 어떤 도움 당신은 $를 사용하여 bash는 산술 루프를 할 수있는 어떤 다른 프로그래밍 언어에서와 같은 정도 ((EXPR)) 표기법을, 감사

#!/bin/bash 
     COUNTER="1" 
      until [ $COUNTER -lt 1 ]; do 
echo "**********" 
echo " ******** " 
echo " ****** " 
echo " **** " 
echo " ** " 

       let COUNTER-=1 
     done 

답변

1

을 환영합니다. 그래서 (내가 그것을 확인 때까지 약 엄청나게 스크립트 languaes에. 제가 프로그램을 구문에 의존하지 말고 그들을 혼란스러워.)

function printNx { 
    N=$1 
    X=$2 
    count=0 
    while $(($count++ < $N)) 
    do 
     echo -n $X 
    done 
    echo "" 
} 

같은 함수를 작성

업데이트

은 거의 그것을했다 :

bash $ cat foo.bash 
function printNx { 
    N=$1 
    X=$2 
    count=0 
    while [ $((count ++)) -lt $N ] 
    do 
     echo -n "$X" 
    done 
    echo "" 
} 

printNx 5 '*' 
bash $ bash foo.bash 
***** 
bash $ 
+0

감사 찰리 나는 그것을 시도하고 당신이 알려 드릴 것입니다 –