2011-11-01から1ヶ月間の記事一覧

shiftコマンドの使い方(シェルスクリプトの引数処理)

シェルスクリプトのshiftコマンド。スクリプト実行時に与えられた引数の位置パラメータを順にずらしていく。 書式 shift [number] numberで何個ずらすかを指定する。省略時には、number=1と解釈される。 使い方 例えば、複数の引数を与えられるスクリプトで…

今日のLinuxコマンド

ldconfig --- 動的リンカが、共有ライブラリを探すためのお膳立てをする。 (http://www.pochinet.org/linux2L006.htm) nm --- 実行モジュールの中で、どの関数を呼んでいるか確認できる。 (nmコマンドの使い方: UNIX/Linuxの部屋)

Ubuntuのコードネームを確認するコマンド

Ubuntuのコードネームを確認するときは、lsb_releaseコマンドが使える。オプションは-c。 $ lsb_release -c Codename: oneiric 上記の実行例は、バージョン11.10の場合。

findコマンドでファイルを探すときのエラーメッセージはいらない

findコマンドでファイルを探すとき、広範囲で検索すると(ルート以下のすべてのファイルを検索対象とするとき等)自分にアクセス許可がないディレクトリなども探そうとして、膨大なエラーメッセージが表示されることがよくある。このようなエラーメッセージ…

Matplotlibでグラフを描くpythonスクリプト

Excelでプロットする際に、ファイルを開いたり、移動したり、座標軸を設定したりという作業が面倒だったので、データのファイルを読み込んで、matplotlibでグラフを描くスクリプト。 #!/bin/env python import os from pylab import * namf = [ 'data.lst_no…

ソースコードの73カラム目以降を削除する

Fortranのソースコード等では、各行の73カラム以降はコンパイル時に無視されるため、何を書いてもよくコメントを書くことに使われる場合がある。そのようなソースを紙に印刷する場合、一行分が紙での2行以上に渡って印刷されてしまうことがある。これは紙の…

大量のソースコードの中の文字列をしたり、元に戻したりするスクリプト

大量にあるプログラムのソースコードの中の、指示行と付けたりとったりしてデバッグするときに使用したシェルスクリプト。このスクリプトを実行後、makeする。 #!/bin/sh MODE=1 FILE="src01r src02 src03 src04 src05" if [ $MODE = 0 ] then echo $MODE fo…

特定の文字列をその中に含むファイルのリストを 作りたい

例えば、AAAという文字列が書かれているファイルを抽出するには下のスクリプトになる。 #!/bin/sh for FILE in `ls *f` do if grep 'AAA' $FILE > /dev/null then echo $FILE fi done grepの結果は必要ないので/dev/nullに捨てている。そうしないと、grepの…

ファイルの中の文字列を置換するスクリプト

複数のファイルの中の特定の文字列を置換する。ファイルが数百あるので、手作業でやることはありえない。Pythonを使うことも考えたが、シェルの方がこの場合、楽だ。以下のスクリプトを実行する。 #!/bin/sh for file in `ls *.cpp` do echo -e "%s/AAAA/BBB…

gcc44のインストール (CentOS)

CentOSで使っているgccのバージョンが4.1だったので、更新する。 検索して見付かったgcc44というのはバージョン4.4なのだろうと思うので、これをインストール。 # yum install gcc* でできた。 参考サイト Lightning bug 【備忘録】CentOS 4.7にgccをインス…