2016-09-05 1 views
0

私はステートメント/出力をlinuxでループしようとしています。だから私のsshディレクトリに私は私が行う場合。 Hello Jamesを出力するファイル呼び出しhello.cがあります。私がしようとしているのは、それを4回印刷するforループです。linuxのステートメントをループする方法

これは私が試みたものです。

for((int i=1;i<=4;i++)); 
do 
./hello.c 
echo $i 
done 

何も印刷されていません。

答えて

1

プログラミング言語としてのBashは、動的に型指定されるため、型宣言はありません。ですから、ライン怒鳴るからの型宣言を削除することができます。

for((int i=1;i<=4;i++)); 
    ^^^ 

すなわちさらに

for((i=1;i<=4;i++)); 

に変更し、あなたが ./hello.cを言ってプログラムを呼び出すことができることを確信していますか?これは通常はソースファイルであり、実行可能ではありません。

echo '#!/bin/bash' > my_script.sh 
echo 'for((i=1;i<=4;i++)); do echo "hello"; done' >> my_script.sh 

して、パーミッションを変更:スクリプトを作成する必要があるものは何でも

for((i=1;i<=4;i++)); do echo "hello"; done 
# outputs "hello" four times 

は、あなたがファイルを編集する必要があります(シェルプロンプトで)入力したシェルコマンドラインを使用して

+0

あなたの権利私はそれを呼び出すことはできません。私のディレクトリには3つのファイルがあります。それらの1つはa.out、hello、hello.cです。 –

+0

./hello.cは出力を呼び出しませんが、./helloは出力hello Jamesを呼び出します –

0

実行可能にする。

chmod +x my_script.sh 
./my_script.sh 

シェル(bashの)プログラミングに関する多くのチュートリアルの1、 http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.htmlは良いものですが必ずお読みください。

関連する問題