• 検索結果がありません。

/home/usr2/13OTlec0/lec/Hello/hello.c

40 と同じファイルを作成して

gcc ファイル名 でコンパイル。

./a.out で実行。

username@t2a006163:~/mylec>cat ~13OTlec0/lec/Hello/hello.c

#include<stdio.h>

int main(void){

printf("Hello World!!\n");

return 0;

}

username@t2a006163:~/mylec>emacs hello.c username@t2a006163:~/mylec>ls -l

total 128

-rw-r--r-- 1 username users 42 2014-04-07 20:47 emacstest.txt -rw-r--r-- 1 username users 12 2014-04-07 20:46 emacstest.txt~

-rw-r--r-- 1 username users 78 2014-04-07 20:59 hello.c -rw-r--r-- 1 username users 13 2014-04-07 20:44 vitest.txt username@t2a006163:~/mylec>cat hello.c

#include<stdio.h>

int main(void){

printf("Hello World!!\n");

return 0;

}

username@t2a006163:~/mylec>gcc hello.c username@t2a006163:~/mylec>ls -l total 160

-rwxr-xr-x 1 username users 11782 2014-04-07 20:59 a.out

-rw-r--r-- 1 username users 42 2014-04-07 20:47 emacstest.txt -rw-r--r-- 1 username users 12 2014-04-07 20:46 emacstest.txt~

-rw-r--r-- 1 username users 78 2014-04-07 20:59 hello.c -rw-r--r-- 1 username users 13 2014-04-07 20:44 vitest.txt

username@t2a006163:~/mylec>./a.out Hello World!!

実際に操作をしてください。

username@t2a006180:~/mylec>mkdir modetest username@t2a006180:~/mylec>cd modetest/

username@t2a006180:~/mylec/modetest>cp -i ~13OTlec0/lec/Mode_test/make_sh_mode_test.c .

username@t2a006180:~/mylec/modetest>less make_sh_mode_test.c username@t2a006180:~/mylec/modetest>gcc make_sh_mode_test.c username@t2a006180:~/mylec/modetest>ls -l

total 64

-rwxr-xr-x 1 username users 11934 2014-04-08 21:00 a.out

-rw-r--- 1 username users 2304 2014-04-08 20:59 make_sh_mode_test.c username@t2a006180:~/mylec/modetest>./a.out

実際に操作をしてください。

username@t2a006180:~/mylec/modetest>cd ..

username@t2a006180:~/mylec>mkdir bigmem username@t2a006180:~/mylec>cd bigmem

username@t2a006180:~/mylec/bigmem>cp -i ~13OTlec0/lec/Big_memory/big_memory.c . username@t2a006180:~/mylec/bigmem>cat big_memory.c

#include <stdio.h>

#define ROW_SIZE 1000*1000*1000

#define COLUMN_SIZE 8

int main(void){

char str[ROW_SIZE][COLUMN_SIZE];

unsigned long i_r,i_c;

for( i_r=0 ; i_r<ROW_SIZE ; i_r++ ){

for( i_c=0 ; i_c<COLUMN_SIZE ; i_c++ ){

if( i_c==0 ){

str[i_r][i_c]='H';

コメント [A75]: あとはC言語を勉強すれ ば、ここまででTSUBAMEでC言語のプ ログラムを作成して、実行できるようにな りました。…が…1行の実行結果だし、ス ーパーコンピューターじゃなくても…

コメント [A76]: 結果が長い …ファイルに 保存したい…

コメント [A77]: たくさんメモリが必要な プログラム

42 }else if( i_c==1 ){

str[i_r][i_c]='e';

}else if( i_c==2 ){

str[i_r][i_c]='l';

}else if( i_c==3 ){

str[i_r][i_c]='l';

}else if( i_c==4 ){

str[i_r][i_c]='o';

}else if( i_c>=5 ){

str[i_r][i_c]='!';

}

if( i_c==COLUMN_SIZE-1 ){

str[i_r][i_c]='\0';

} } }

printf("str[0]:%s\n",str[0]);

printf("str[%lu]:%s\n",ROW_SIZE/(unsigned long)2,str[ROW_SIZE/(unsigned long)2]);

printf("str[%lu]:%s\n",(unsigned long)ROW_SIZE-1,str[(unsigned long)ROW_SIZE-1]);

return 0;

}

username@t2a006180:~/mylec/bigmem>gcc big_memory.c username@t2a006180:~/mylec/bigmem>ls -l

total 64

-rwxr-xr-x 1 username users 11789 2014-04-08 21:04 a.out -rw-r--- 1 username users 807 2014-04-08 21:03 big_memory.c username@t2a006180:~/mylec/bigmem>./a.out

Segmentation fault

username@t2a006180:~/mylec/bigmem>

TSUBAME2.5利用の手引き 3.1.2 インタラクティブノードでの制限

http://tsubame.gsic.titech.ac.jp/docs/guides/tsubame2/html/resources.

html#id4

コメント [A78]: 実行できない。

これを実行するためには...シェルスクリプ トとt2sub

…メモリの使用量に制限があり、メモリ不足のため「Segmentation fault」となり、

実行できない。

TSUBAME2.5利用の手引き 3.1.3 バッチノード

http://tsubame.gsic.titech.ac.jp/docs/guides/tsubame2/html/resources.

html#resources-batch

8 grep

grep パターン ファイル パターンに一致する行を出力する。

たぶん時間がないので紹介だけ username@t2a006174:~>less /etc/services

username@t2a006174:~>grep smtp /etc/services smtp 25/tcp # Simple Mail Transfer smtp 25/udp # Simple Mail Transfer

# Boris B. Maiden <Boris_Maiden&smtp.microcom.com>

rsmtp 2390/tcp # RSMTP rsmtp 2390/udp # RSMTP

44 9 リダイレクト

デフォルトの標準入力はキーボードです。

デフォルトの標準出力はディスプレイです。

デフォルトの標準エラー出力はディスプレイです。

コマンド > ファイル:標準出力をファイルにします。

コマンド 1> ファイル:標準出力をファイルにします。(上と同じ) コマンド >> ファイル:標準出力をファイルにします。(追加書き込み)

見てるだけでも大丈夫です。

username@t2a006168:~/mylec>vi aaa.txt username@t2a006168:~/mylec>cat aaa.txt aaa

username@t2a006168:~/mylec>vi bbb.txt username@t2a006168:~/mylec>cat bbb.txt bbb

コマンド

標準出力

標準エラー出力 標準入力

コマンド

標準出力

標準エラー出力 標準入力

username@t2a006168:~/mylec>cat aaa.txt bbb.txt aaa

bbb

username@t2a006168:~/mylec>cat bbb.txt aaa.txt bbb

aaa

username@t2a006168:~/mylec>cat aaa.txt bbb.txt > 0.txt username@t2a006168:~/mylec>cat 0.txt

aaa

bbb

username@t2a006168:~/mylec>cat aaa.txt bbb.txt 1> 1.txt username@t2a006168:~/mylec>cat 1.txt

aaa

bbb

username@t2a006168:~/mylec>cat aaa.txt bbb.txt >> 0.txt username@t2a006168:~/mylec>cat 0.txt

aaa

bbb

aaa

bbb

username@t2a006168:~/mylec>cat bbb.txt aaa.txt > 0.txt username@t2a006168:~/mylec>cat 0.txt

bbb

コメント [A79]: こうすると、aaa.txtと

bbb.txtを順番に表示します。

46 aaa

username@t2a006168:~/mylec>

コマンド 2> ファイル:標準エラー出力をファイルにします。

コマンド 2>> ファイル:標準エラー出力をファイルにします。(追加書き込み)

見てるだけでも大丈夫です。

username@t2a006168:~/mylec>ls -l total 352

-rw-r--r-- 1 username users 10 2014-04-09 18:02 0.txt -rw-r--r-- 1 username users 10 2014-04-09 18:01 1.txt -rw-r--r-- 1 username users 5 2014-04-09 17:31 aaa.txt -rwxr-xr-x 1 username users 11782 2014-04-07 20:59 a.out -rw-r--r-- 1 username users 5 2014-04-09 17:31 bbb.txt drwxr-xr-x 2 username users 32768 2014-04-08 21:04 bigmem -rw-r--r-- 1 username users 42 2014-04-07 20:47 emacstest.txt -rw-r--r-- 1 username users 12 2014-04-07 20:46 emacstest.txt~

-rw-r--r-- 1 username users 78 2014-04-07 20:59 hello.c drwxr-xr-x 2 username users 32768 2014-04-08 21:00 modetest -rw-r--r-- 1 username users 13 2014-04-07 20:44 vitest.txt username@t2a006168:~/mylec>cat ccc.txt

cat: ccc.txt: No such file or directory

username@t2a006168:~/mylec>cat ccc.txt > stdout.txt cat: ccc.txt: No such file or directory

username@t2a006168:~/mylec>ls -l total 352

コマンド

標準出力

標準エラー出力 標準入力

コメント [A80]: 上書きされてしまう。

コメント [A81]: これが標準エラー出力

-rw-r--r-- 1 username users 10 2014-04-09 18:02 0.txt -rw-r--r-- 1 username users 10 2014-04-09 18:01 1.txt -rw-r--r-- 1 username users 5 2014-04-09 17:31 aaa.txt -rwxr-xr-x 1 username users 11782 2014-04-07 20:59 a.out -rw-r--r-- 1 username users 5 2014-04-09 17:31 bbb.txt drwxr-xr-x 2 username users 32768 2014-04-08 21:04 bigmem -rw-r--r-- 1 username users 42 2014-04-07 20:47 emacstest.txt -rw-r--r-- 1 username users 12 2014-04-07 20:46 emacstest.txt~

-rw-r--r-- 1 username users 78 2014-04-07 20:59 hello.c drwxr-xr-x 2 username users 32768 2014-04-08 21:00 modetest -rw-r--r-- 1 username users 0 2014-04-09 18:06 stdout.txt -rw-r--r-- 1 username users 13 2014-04-07 20:44 vitest.txt username@t2a006168:~/mylec>cat stdout.txt

username@t2a006168:~/mylec>cat ccc.txt 2> stderr.txt username@t2a006168:~/mylec>cat stderr.txt

cat: ccc.txt: No such file or directory

username@t2a006168:~/mylec>cat ddd.txt 2>> stderr.txt username@t2a006168:~/mylec>cat stderr.txt

cat: ccc.txt: No such file or directory cat: ddd.txt: No such file or directory username@t2a006168:~/mylec>

コマンド 1> ファイル 2>&1:標準出力をファイルにして、標準エラー出力を標準出 力(=ファイル)にします。

見てるだけでも大丈夫です。

コマンド

標準出力 標準入力

標準エラー出力

コメント [A82]: ファイルはできる

コメント [A83]: 何も表示されない

48 username@t2a006168:~/mylec>cat aaa.txt ccc.txt aaa

cat: ccc.txt: No such file or directory

username@t2a006168:~/mylec>cat aaa.txt ccc.txt 1> stdouterr.txt 2>&1 username@t2a006168:~/mylec>cat stdouterr.txt

aaa

cat: ccc.txt: No such file or directory

コマンド < ファイル:標準入力をファイルにします。

見てるだけでも大丈夫です。

username@t2a006168:~/mylec>sort suzuki

watanabe

sato ←”sato” Enter Ctrl D

sato suzuki watanabe

username@t2a006168:~/mylec>emacs meibo.txt username@t2a006168:~/mylec>cat meibo.txt suzuki

watanabe sato

username@t2a006168:~/mylec>sort < meibo.txt sato

コマンド

標準出力

標準エラー出力 標準入力

コメント [A84]: 標準出力の部分

コメント [A85]: 標準エラー出力の部分

suzuki watanabe

username@t2a006168:~/mylec>

関連したドキュメント