とりとめのないことを書いております。
by tempurature
カテゴリ
全体
プログラミング
scheme
verilog
未分類
以前の記事
2016年 04月
2016年 03月
2016年 02月
2016年 01月
2015年 12月
2015年 11月
2015年 10月
2015年 09月
2015年 08月
2015年 07月
2015年 06月
2015年 03月
お気に入りブログ
PHPで競技プログラミング
メモ帳
最新のトラックバック
ライフログ
検索
タグ
人気ジャンル
ブログパーツ
最新の記事
情報処理技術者試験 お疲れ様..
at 2016-04-17 18:55
基本情報技術者試験 平成27..
at 2016-04-14 04:48
基本情報技術者試験 平成27..
at 2016-04-13 23:03
苦い薬(ハーブ、サプリメント..
at 2016-04-09 14:03
「おバカ度チェックリスト」を..
at 2016-03-24 09:54
外部リンク
ファン
記事ランキング
ブログジャンル
画像一覧
タグ:Cygwin ( 4 ) タグの人気記事
Cygwinで find . | xargs grep [keyword] したい時は?
find . | xargs grep [keyword]
というコマンドは、カレントディレクトリ以下のすべてのファイル内の[keyword]を検索するときに使います。

ただ、Cygwinでこれを実行すると、grepが以下の様な警告を沢山発生させます。

grep: ./msys/usr/share/vim/vim74/tutor: Is a directory
grep: ./msys/usr/ssl: Is a directory
grep: ./msys/usr/ssl/certs: Is a directory
grep: ./msys/usr/ssl/misc: Is a directory
grep: ./perl: Is a directory


これの対処方法として、findにファイルタイプのオプションを付加します。

find . -type f | grep [keyword]

これでfindがディレクトリパスをgrepに渡すことはなくなるので警告が表示されなくなります。

[PR]
by tempurature | 2015-12-30 19:38 | プログラミング
OS本の章末問題を解く(2)
前回の記事、「OS本の章末問題を解く(1)」で作成したプログラムをCygwinで実行してみました。改変なしにgccのコンパイルを通すことができました。

結果としては、play_child関数を10000回呼び出すのに35.5秒かかりましたので、プロセス生成のオーバーヘッドは3.55msです。

Ubuntuで実行したときと比べると、3.55ms/55.6us=83.8倍の時間がかかっています。Linuxの他のディストリビューションやBSD系OSで実行してみるともっと面白い結果が得られるかもしれません。また、VisualStudioのプロセス関数だともっと速いのかもしれないです。


[PR]
by tempurature | 2015-11-28 14:13 | プログラミング
【racket】Cygwinでracketを実行する方法
1. DrRacketのインストールディレクトリを確認します。

デフォルトでは、C:\Program Files\Racketになっているはずです。

2. Cygwin上の認識名を確認します。

Cygwinでは、C:\は/cygdrive/c/というパスなので、
C:\Program Files\Racketというパスは、/cygdrive/c/Program Files/Racketになります。実際にCygwinのターミナルでDrRacketのパスまでたどってみます。
Program Filesのように半角スペースが入っているディレクトリ名は、シングルスペース(')かダブルスペース(")でくくります。

$ cd /cygdrive/c
$ cd 'Program Files'
$ cd Racket
$ pwd
/cygdrive/c/Program Files/Racket
$ ls
collects          mred-text.exe   plt-r6rs.exe              share
doc               mzc.exe         plt-web-server.exe        slatex.exe
DrRacket.exe      mzpp.exe        Racket Documentation.exe  Slideshow.exe
etc               mzscheme.exe    Racket.exe                swindle.exe
GRacket.exe       mztext.exe      raco.exe                  Uninstall.exe
gracket-text.exe  pdf-slatex.exe  README.txt
include           PLT Games.exe   scribble.exe
lib               plt-r5rs.exe    setup-plt.exe

3. /usr/local/binにRacket.exe, DrRacket.exe, raco.exeのシンボリックリンクを張ります。

$ ln -s '/cygdrive/c/Program Files/Racket/Racket.exe' /usr/local/bin/racket
$ ln -s '/cygdrive/c/Program Files/Racket/DrRacket.exe' /usr/local/bin/drracket
$ ln -s '/cygdrive/c/Program Files/Racket/raco.exe' /usr/local/bin/raco
$ ls /usr/local/bin
drracket racket raco

4. /usr/local/binにパスが通っていることを確認します。

$ perl -e 'if (":$ARGV[0]:" =~ m|:/usr/local/bin/{0,1}:|) {print "OK\n";}' $PATH
OK

手順は以上です。


Cygwinでracketを使うメリットとしては、racketスクリプトがあります。
racketスクリプトは、拡張子が.rktsで、次のようにshebangを書きます。

#!/usr/local/bin/racket

shebangを半角スペースを含むパスに適用するとうまく行かないのですが、上記の方法ではうまく行きます。


[PR]
by tempurature | 2015-09-20 18:30 | scheme
Cygwinを10倍使いやすくするたった1つのコマンド
このコマンドを知るまではCygwinを使う気がしなかったので、VirtualBox上にUbuntuをインストールして作業していました。

Cygwinを10倍使いやすくするコマンドはこれです。

explorer .

これで、Cygwinのホームディレクトリ(フォルダ)のエクスプローラが開きます。
これを知らないと自分でホームをたどらないといけないので面倒です。

Cygwinは日本語対応がきちんとしているし、bashコマンドも一通り揃っているし、WindowsユーザーはCygwinを使うべきでしょう。


[PR]
by tempurature | 2015-07-04 19:33