TVアニメ『プリンセス・プリンシパル』 オープニング映像
アニメ『プリンセス・プリンシパル』(2017)
プリプリと略されてるので、軟弱なアニメかと思いきや、結構ハードでした。
ハードなので、ちゃんと撃つし、ちゃんと斬ります。
今回はコマンドラインで文字列の生成です。
中身は使用しないファイルの、名前だけを利用して、文字列定義を生成してみます。
takk@deb9:~/tmp$ ls
takk@deb9:~/tmp$ touch {A..Z}
takk@deb9:~/tmp$ ls
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
takk@deb9:~/tmp$
26個のアルファベットのファイルができました。次に、lsコマンドのオプションを使って、プログラミングに使える文字列定義の形にしてみます。
takk@deb9:~/tmp$ ls -Qm -Itest.c > test.c takk@deb9:~/tmp$ cat test.c "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" takk@deb9:~/tmp$
適当にこの定義を使うプログラムを作ってみます。
takk@deb9:~/tmp$ cat test.c
#include <stdio.h>
char *str[]={
"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P",
"Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"
};
int main()
{
puts(str[1]);
}
takk@deb9:~/tmp$
ビルドして確認。
takk@deb9:~/tmp$ gcc test.c takk@deb9:~/tmp$ ./a.out B
ランダムな英単語で同じことをやってみましょう。先ほど作ったファイルは全部削除した後、次のコマンドで英単語のファイルを作ります。
takk@deb9:~/tmp$ grep -v "'" /usr/share/dict/words | shuf | head | xargs touch takk@deb9:~/tmp$
ランダムな英単語のファイルが10個できました。
takk@deb9:~/tmp$ ls Byrd Persepolis enunciating lorded strutted Hiram basics lechers roasters trespassed takk@deb9:~/tmp$
あとはlsで文字列定義を生成して出来上がり。
takk@deb9:~/tmp$ ls -Qm "Byrd", "Hiram", "Persepolis", "basics", "enunciating", "lechers", "lorded", "roasters", "strutted", "trespassed" takk@deb9:~/tmp$


コメント