アメリエフのブログ

Amelieff Staff Blog

システム

数値をカンマで3ケタ区切りにする

先日、数年ぶりに同い年の従兄弟に会いました。彼は正規表現の研究をしています。具体的にどんな研究をしているのか想像できないのですが、日頃からお世話になっている技術なので、お礼を言っておきました。 ということで、正規表現を使って、数値を3ケタの…

ファイルの大きさを知りたい

あるディレクトリに含まれているファイルのサイズを知りたい場合に、「du」というコマンドを使います。 $ du このコマンドを実行するとカレントディレクトリ以下の全ディレクトリのファイルのサイズを再帰的に、つまり一番深い階層のディレクトリまで全部表…

維持してコピー

Linux上でファイルをコピーする際に、「cp」というコマンドを使用します。 $ cp hoge.txt ../ このコマンドでは hoge.txt を一つ上の階層のディレクトリにコピーしていますね。またディレクトリをコピーする際は、以下のオプションを付けます。 $ cp -r hoge…

ディレクトリ内のファイル数を知りたい

ディレクトリ内のファイル数をカウントしたいことがありますが、大量のファイルが存在する場合、一つ一つ数えるのはとても面倒です。 そんなときは以下のコマンドを試してください。 $ find ./ -type f | wc -l 25 カレントディレクトリ以下に存在するファイ…

どこにあるの?

Linux上でファイルを検索する場合は以下のコマンドを使用します。 $ find /home -name hoge.txt このコマンドでは、/home ディレクトリ以下で hoge.txt を検索します。ファイル名の一部しかわかっていない時は、以下のようにワイルドカードを使用できます。 …

ファイルの更新日時を詳細に確認する

Linux上でファイルの一覧を取得する際のコマンドである、「ls」にはいろんなオプションがあります。 例えば、以下のオプションでは、日付や権限も分かるリスト形式でファイルの一覧を取得できます。 $ ls -l ところで、通常の「ls -l」では更新時間の最小単…

再帰的

recursive:再帰的なという英語があります。 再帰というのは説明が難しいのですが、wikipediaによると「あるものについて記述する際に、記述しているものそれ自身への参照が、その記述中にあらわれることをいう」のだそうです。 わかりませんね。 「Aについ…

最新のファイルを知りたい時

Linuxのコマンドで $ ls -l というのがあります。このコマンドを実行すると、ファイルとディレクトリの一覧をアルファベット順で取得できます。ですがファイルの更新日時順に並べたい時も結構あります。そんな時には以下のオプションを使ってみましょう! $ …

Pythonでグラフを書こう その3

Pythonでグラフを書こう、の第3回です。 前回の記事では、matplotlibを使用して円グラフを描いてみました。今回はそのプログラムのソースを見ていきたいと思います。 前回の記事でダウンロードした pie_chart.py をテキストエディタなどで開くと以下のよう…

Pythonでグラフを書こう その2

Pythonでグラフを書こう、の第2回です。 前回の記事では、グラフの描画パッケージであるmatplotlibのインストールを行いました。今回は、簡単なグラフを書いてみたいと思います。 matplotlibのウェブサイトには豊富なexampleが表示されていまして、任意のグ…

楽しくコマンドを覚える・7

「nice」コマンドは、プロセスの優先順位を設定するコマンドです。 プロセスの優先度(ナイス値)を-20〜19の整数で決めます。-20が最優先で、数が大きくなるほど(19に近くなるほど)優先度が低くなります。 複数のジョブのうち特に急ぎのものがある場合、よ…

楽しくコマンドを覚える・6

楽しくコマンドを覚える・1 楽しくコマンドを覚える・2 楽しくコマンドを覚える・3 楽しくコマンドを覚える・4 楽しくコマンドを覚える・5 突然ですが、選択の積み重ねこそが人生なのではないでしょうか。 かつ丼が好きだけどカレーライスも好きだ! で…

Pythonでグラフを書こう その1

バイオインフォマティクスの分野に限らず、様々な数値データをグラフで可視化したいという要望はよくあります。手作業でよければエクセル等の表計算ソフトを利用する事もできますが、グラフの描画を自動化したい場合はどうすればいいのでしょうか。 そこで、…

楽しくコマンドを覚える・5

楽しくコマンドを覚える・1 楽しくコマンドを覚える・2 楽しくコマンドを覚える・3 楽しくコマンドを覚える・4 suは別のユーザになるコマンドです。 $ su 別のユーザ のように実行します。 そのユーザのパスワードを聞かれますので入力してください。 パ…

楽しくコマンドを覚える・4

Linuxコマンドの機能を楽しく覚えるシリーズです。 今回は「ssh」コマンドです。これは、リモートマシンへのログインやコマンド実行をするためのコマンドです。クライアントとリモートマシンの通信データが暗号化されるので、インターネット経由でも比較的安…

楽しくコマンドを覚える・3

ファイルの各行を並び替えるにはsortコマンドを使います。 sortコマンドにはオプションがたくさんあります。 例えば、-nで数値としてソートしたり、-rで逆順にしたり、 -kで並び替えに使う列を指定したりできます。 また、大きいファイルをソートして途中で…

楽しくコマンドを覚える・2

hatさんの「wc」コマンドに引き続き、「chown」コマンドの覚え方です。 「chown」はファイルやディレクトリの所有者を変更するLinuxコマンドです。次のように使います。 $ chown user:group FILE これで、FILEの所有者と所属グループが変更されます。 chown…

遺伝的アルゴリズム

「遺伝的アルゴリズム(以後GA)」とは、生物の進化を模倣した最適化アルゴリズムです。 「無数のルートの中から近道を探す」というような問題のように、複数の選択肢の中から最適なもの(解)を選択したいときがあります。そんなときは、最適化アルゴリズム…

楽しくコマンドを覚える・1

「wc」はファイルの行数、単語数、バイト数を表示するコマンドです。 次のように使います。 $ wc FILE 12 27 176 FILE 実行してはみたものの、どれが行数でどれが単語数かわからなく なることはありませんか?ありますね! あるいは、3つ目の数字が何を示す…

相対パスと西瓜わり

夏の風物詩の一つと言えば「西瓜わり」ですが、 西瓜に向かっている人に、どのような指示を出しますか? 「(そこから)まっすぐ前」「ちょっと右」のように 今いる場所からどちらに向かえばいいかを伝えると思います。 「北緯36度東経140度に移動してくださ…

熱中症

暑い夏が続きますが、皆様いかがお過ごしでしょうか。 こう暑い日が続くと心配になるのは熱中症ですね。 人はもちろんペットなども熱中症には要注意です。そして、それ以外にも熱に弱いものがあります。そう、パソコンやサーバーです。 冷房の効いた涼しい部…

いろいろな「さよなら」

hatです。 久しぶりにftpをコマンドラインから使う機会があり 終了コマンドがわからなくて調べたら「bye」でした。 「bye」はかっこいいなあと思いまして、 他のコマンドやプログラミング言語についても 終了コマンドを整理してみました。 exit派 ・Windows…

scp stalled

サーバー間で、データをやり取りするときによく使用するコマンドにscpがあります。 便利なコマンドなので、私も良く利用するのですが、コピーしている途中で転送速度が急激に低下し stalled という表記と共に、コピーがストップすることがあります。 原因と…

shufコマンド

「入力行をランダムに並び替えて出力する」 shufというコマンドがあることを知りました。 早速試してみました。 こんなファイルを作りました。 $ more urashima.txt むかしむかし うらしまは たすけたかめに つれられて りゅうぐうじょうへ きてみれば えに…

改行コードを確認

Linuxで作業をしていると、ファイルの改行コードやタブがどこに含まれているかを確認したい時があります。 そのような時に、私は od -c コマンドをよく使います。 例えば、以下のようなファイル hoge があったとしましょう。 $ less hoge hoge moge moge piy…

比較演算子の比較

ShellスクリプトとPerlスクリプトを書く機会が同じくらいあるので、 しばしば文法が混乱します。 面倒くさいのが、Shellでやろうと思って書きかけた処理を 途中で「やっぱりPerlにしよう」とPerlに書き直すときで、 変数が最初に出てきたときから頭に「$」が…

MacBookにUbuntu

自宅のMacBookにUbuntuを入れてみました。 既存のOSXを再インストールする必要もなく、あっけないくらい簡単でした。 手こずったのは最初家のWifiを認識しなかったことくらいですが、有線LANにつないでapt-getでアップデートしたらつながるようになりました…

余裕が大事

linuxには、処理中の一時ファイルを出力する/tmpや/var/tmpというディレクトリがあります。 巨大ファイルのソートなど、一時ファイルを大量に出力する処理では、/tmpディレクトリの空き容量が足りないと処理が止まります。 そんな時の解決策をまとめてみまし…

あとはまかせた!

突然ですが、あなたはSEです。次のような時、どうしますか? ・A、Bというプログラムがある。 ・Aは3時間、Bは6時間かかる。 ・Bは、Aが完全に終わらないと開始できない。 ・明日の昼までにBを終わらせる必要がある。 ・Aは現在実行中で、あと2時間はかかる…

なにもしない

私はずっと、緩い言語の極致であるPerlを使ってきたので、 同じ感覚でPythonを使っているとインデントや型などが適当で、 「ちゃんとしろ」と怒られることが多いです。 私がPythonでおもしろいと思ったのは、 「なにもしない」というpassという命令文がある…