Japanese Journal of Lactic Acid Bacteria Copyright 0, Japan Society for Lactic Acid Bacteria 0 0 総 説 GUI 環 境 とコマンドライン 環 境 次 世 代 シーケンサーデータの 解 析 手 法 第 回 GUI 環 境 からコマンドライン 環 境 へ 孫 建 強 湯 敏 西 岡 輔 清 水 謙 多 郎, 門 田 幸 二 東 京 大 学 大 学 院 農 学 生 命 科 学 研 究 科 応 用 生 命 工 学 専 攻 アグリバイオインフォマティクス 教 育 研 究 ユニット 実 験 系 研 究 者 が 普 段 利 用 する Windows や Macintosh の PC 環 境 は GUI 環 境 と 呼 ばれ マウス 操 作 な どで 直 観 的 な 利 用 が 可 能 である 一 方 バイオインフォマティクス 系 研 究 者 が 普 段 利 用 するデータ 解 析 環 境 は コマンドライン 環 境 である 次 世 代 シーケンサー( 以 下 NGS)データ 解 析 用 プログラムの 多 くは Linux 上 で 動 作 し コマンドライン 環 境 での 利 用 を 想 定 している それゆえ コマンドライン 環 境 に 慣 れ 基 本 的 なコマンドを 使 いこなせるようになることが NGS データを 自 在 に 解 析 するための 前 提 条 件 といえる 連 載 第 回 では Windows および Macintosh 付 属 のコマンドライン 環 境 (コマンドプロン プトおよびターミナル)での 基 本 的 な 操 作 を GUI 環 境 と 対 比 させながら 示 し 最 低 限 必 要 だと 思 われる コマンドや 概 念 を 解 説 する 前 回 同 様 ウェブサイト(R で) 塩 基 配 列 解 析 (URL: http://www.iu.a.utokyo.ac.jp/~kadota/r_seq.html) 中 に 本 連 載 で 述 べるリンク 先 を 掲 載 してあるので 効 率 的 に 活 用 してほ しい Key words:ngs, Command prompt, Terminal, Bioinformatics, commands NGS 解 析 を 行 う 上 で 理 想 的 なデータ 解 析 環 境 は 京 や 遺 伝 研 スパコン ) である 特 に 遺 伝 研 スパコンは 頻 繁 にメンテナンスがあるものの NGS 解 析 に 適 した 構 成 と なっており ) ある 程 度 Linux に 慣 れたエンドユーザが 比 較 的 気 軽 に 利 用 可 能 なスーパーコンピュータである ただ し 他 のユーザに 迷 惑 がかからない 程 度 の Linux の 使 い 方 は 知 っておく 必 要 がある 第 回 でも 述 べたように 覚 えるのは 大 変 であるが Linux コマンドを 駆 使 することで 効 率 的 な NGS データ 解 析 が 可 能 となる Macintosh( 以 下 Mac)ユーザの 場 合 は ターミナル を 起 動 するこ とで Linux コマンドを 利 用 可 能 である ターミナルは * To whom correspondence should be addressed. Phone : +--- Fax : +--- E-mail : kadota@bi.a.u-tokyo.ac.jp アプリケーション - ユーティリティ 中 に 存 在 する Windows( 以 下 Win)で 同 様 な 役 割 を 果 たすものとしては コマンドプロンプト が 挙 げられる コマンドプロンプ トは スタート - 全 てのプログラム - アクセサリ 中 に 存 在 する 多 くの 実 験 系 研 究 者 は 普 段 マウスやタッチパッド(ノー ト PC のキーボード 手 前 にある 指 でカーソルを 動 かすも の)を 利 用 して PC 作 業 を 行 っている Win や Mac の GUI 環 境 での 作 業 の 具 体 例 として 第 回 の 最 後 に 入 力 として 用 いたLactobacillus casei A 株 の FASTA 形 式 フ ァ イ ル( Lactobacillus_casei_a.GCA_000... dna.toplevel.fa )をデスクトップ 上 の hoge フォルダ 内 に 置 く 作 業 を 解 説 する Ensembl のウェブサイトから 一 時 的 な 保 存 場 所 としてデスクトップにダウンロードした 直 後 は 拡 張 子.gz がついた gzip 形 式 の 圧 縮 ファイルとして デスクトップに 存 在 する 著 者 の Win 環 境 では Lhaplus というフリーの 圧 縮 / 解 凍 ソフトウェアがインストールさ れている 圧 縮 ファイルをマウスでダブルクリックする * 0 0
Jpn. J. Lactic Acid Bact. Vol., No. 0 0 ことで 拡 張 子.fa がついた 目 的 の FASTA 形 式 ファイル ( 以 下 FASTA ファイル)を 得 ることができる ただし FASTA ファイルは hoge フォルダに 自 動 で 入 ってくれる わけではないので ユーザは FASTA ファイルを hoge フォ ルダにドラッグアンドドロップ(マウスでつかんで hoge フォルダ 上 で 離 す 作 業 のこと)することで 上 記 目 的 を 達 成 する ユーザが Win などの PC との 情 報 のやりとりをするた めの 接 点 のことをユーザインタフェース(User Interface; UI)という ユーザは 普 段 hoge フォルダに FASTA ファ イルが 置 かれていく 様 子 を マウスを 動 かしその 挙 動 を ディスプレイ 上 で 見 ながら 作 業 している この 方 式 を GUI (Graphical UI)という 普 段 Win や Mac で 行 っている ことは GUI での 作 業 である 一 方 Mac のターミナルや Win のコマンドプロンプト 上 で 行 う 作 業 は 基 本 的 にキー ボード 経 由 での 文 字 の 打 ち 込 みである それゆえこの 方 式 を CUI(Character UI または Console UI)または CLI (Command Line Interface)という 日 本 では CUI とい う 表 現 がよく 使 われるようであるが GUI 環 境 の 対 比 的 な 用 語 はおそらくコマンドライン 環 境 である GUI 環 境 での 作 業 に 慣 れているユーザにとっては コマンドライン 環 境 に 最 初 は 戸 惑 うかもしれない コマンド( 呪 文 )を 知 らなければ 何 も 作 業 をすることができないからである し かし NGS データ 解 析 を 自 在 に 行 う 上 で Linux を 使 いこ なせるにこしたことはない そのための 第 一 歩 は コマン ドライン 環 境 に 慣 れ 基 本 的 なコマンド 群 を 使 いこなせる ようになることである Win のコマンドプロンプト デスクトップ 上 の hoge フォルダ 中 に 上 記 FASTA ファ イルが つだけ 存 在 するという 前 提 のもと コマンドライ ン 環 境 でそのファイルを 見 にいく 作 業 を 解 説 する ここで はユーザ 数 の 多 い Win のコマンドプロンプトを 用 いてコ マンドライン 環 境 を 説 明 するが 後 述 する Mac のターミ ナルも 基 本 的 な 概 念 は 同 じである 共 通 するコマンドも あるため Mac ユーザもスキップせずに 一 通 り 読 んでほ しい ユーザ 名 kadota でログインしている 状 態 でのコマンド プロンプト 起 動 直 後 は C: Users kadota> となってい ることがわかる( 図 ) もしユーザ 名 が dokusha なら 起 動 直 後 は C: Users dokusha> のように 見 えているで あろう フォントの 問 題 でバックスラッシュ(\)と 円 マー ク( )の 違 いはあるものの 基 本 的 には 見 栄 えだけの 問 題 であり 文 字 コードとしては 同 じなので 気 にする 必 要 は な い C: User kadota> の C: Users kadota は 現 在 の 作 業 ディレクトリが C ドライブ ユーザー kadota という 場 所 であることを 意 味 する フォルダとディレクト リは 正 確 には 異 なる 概 念 のものであるが 実 用 上 は 同 じ ものを 指 すという 理 解 で 差 支 えない 読 者 は フォルダや ディレクトリのことを 単 純 に 場 所 と 読 み 替 えればよい NGS 解 析 に 限 らず コマンドライン 環 境 では 自 分 が 現 在 どこで 作 業 をしているかを 正 確 に 把 握 しておくことが 重 要 である 現 在 の 作 業 ディレクトリは 図 を 眺 めるとユー ザ kadota の 直 下 であることがわかるが 作 業 ディレクト リを 表 示 するコマンド cd も 存 在 する[ウェブ 資 料 ] 通 常 コマンドプロンプト 起 動 直 後 の 作 業 ディレクトリのことを ホームディレクトリ と 呼 ぶ この 場 合 C ドライブの Users kadota がホームディレクトリ という 言 い 方 をす る cd コマンドは ここはどこ? の 結 果 であるが 私 は 誰?(Who am I?) に 対 応 する whoami コマンドも 存 在 する[ウェブ 資 料 ] この 結 果 は kadota-pc kadota となっており このノート PC の 名 前 は kadota-pc ログ インユーザ 名 は kadota と 読 みとる 作 業 ディレクトリに 何 があるかを 調 べたい 場 合 には dir コマンドを 実 行 する これは GUI 環 境 において C ドライブ ユーザー kadota のフォルダを 開 いて 何 が あるかを 眺 める 作 業 と 同 じである この PC の 日 本 語 GUI 環 境 では カタカナの デスクトップ フォルダが 見 られ る[ウェブ 資 料 ] その 一 方 で dir 実 行 結 果 のコマンド ライン 環 境 では 英 語 の Desktop になっていることが 分 かる[ウェブ 資 料 ] 作 業 ディレクトリの 移 動 は cd コマンドを 実 行 する 作 業 ディレクトリにて dir コマンド 実 行 結 果 [ウェブ 資 料 ]で 見 られるフォルダに 移 動 したい 場 合 には cd フォ ルダ 名 とすればよい ここで cd とフォルダ 名 の 間 に 図. Windows でのコマンドプロンプト 起 動 直 後 の 初 期 画 面 コマンドプロンプトは 上 記 画 像 のコマン ドライン 環 境 そのものを 指 す 以 外 に 灰 色 矢 印 で 示 した 白 い 点 滅 カーソルの 左 側 の 大 なり 記 号 (>) のことも 指 す 0 0
Vol., No. Japanese Journal of Lactic Acid Bacteria 0 0 は 半 角 スペースが 存 在 する ウェブ 資 料 は cd で 作 業 ディレクトリを 確 認 cd ですくとっぷ と 打 ち 込 んでエラーとなり cd デスクトップ でもエラーと なることを 確 認 し cd Desktop と 打 ち 込 んで 作 業 ディ レクトリが 変 更 されたことをコマンドプロンプトの 位 置 で も 認 識 し cd で 念 のため 確 認 をした という 一 連 のコー ドおよび 実 行 結 果 である なぜひらがなやカタカナではだ めで 英 語 の Desktop としなければならないのか?それは コマンドライン 環 境 での dir 実 行 結 果 が 英 語 の Desktop になっているからである ではなぜ GUI 環 境 では 日 本 語 で 見 られるのか?それは Windows のシステム 言 語 が 日 本 語 となっているからである 仮 にシステム 言 語 を 英 語 に 変 更 すれば GUI 環 境 でも 英 語 で 表 示 される ここで 当 初 の 目 的 (コマンドライン 環 境 で hoge フォ ルダ 中 の FASTA ファイルの 存 在 確 認 )を 再 確 認 する 現 在 の 作 業 ディレクトリはデスクトップである 多 少 冗 長 ではあるが dir で hoge フォルダがあることを 確 認 cd hoge で 作 業 ディレクトリの 変 更 dir で 目 的 の FASTA ファイルが 見 られることを 確 認 という 手 順 になる[ウェブ 資 料 ] Win や Mac の GUI 環 境 での 作 業 は デスクトップ 上 の hoge フォルダをダブルクリックし 視 点 をそこに 合 わせて FASTA ファイルが 確 かに 存 在 する ことをファイル 名 から 認 識 することに 相 当 する[ウェブ 資 料 ] おそらくほとんど 全 ての 読 者 は PC についての 基 本 的 な 知 識 や 技 能 (コンピュータリテラシー)が 備 わって いるため デスクトップにある hoge フォルダをダブル クリック というだけで 必 要 な 作 業 を 実 行 できるであろ う たとえメールソフトやウェブブラウザを 画 面 いっぱい 起 動 していたとしても 無 意 識 にマウスポインタをタスク バー 上 に 移 動 させ そこで 右 クリックして デスクトップ を 表 示 を 選 んでデスクトップに 存 在 する hoge フォルダ が 見 られる 状 態 にするであろう Win キー+ D という ショートカットキーを 知 っているユーザもいるかもしれな い Mac の 場 合 は 同 様 な 機 能 として Fn + F を 利 用 可 能 である PC 初 心 者 にとっては たとえ hoge フォルダを 視 認 で きたとしても マウスポインタを hoge フォルダ 上 に 移 動 し マウスの 左 側 のボタンをすばやく 回 押 す(クリック する)という 一 連 の 操 作 説 明 の 用 語 は 意 味 不 明 であろう マウス ポインタ クリック ドラッグ フォルダなど GUI 環 境 で 普 段 仕 事 をしているユーザも 無 意 識 のうちに 初 心 者 にとっては 意 味 不 明 な 用 語 を 駆 使 して PC 上 で 作 業 を 行 っている ここまで 用 いたコマンド 群 (cd, whoami, dir)のコマンドライン 環 境 での 実 行 ですら GUI 環 境 で しか 作 業 していなかったユーザにとっては 苦 行 かもしれな い しかし 最 初 は 入 力 スピードが 遅 いキータイピング 練 習 のようなものであり そのうち 指 が 慣 れてくるので 是 非 チャレンジしてほしい 尚 作 業 ディレクトリ と いう 呼 び 名 は Linux 環 境 ではあまり 一 般 的 ではない 現 在 のディレクトリという 意 味 で カレントディレクトリ (current directory) と 呼 ばれることが 多 い 作 業 フォ ルダ や ワーキングディレクトリ という 用 語 も 散 見 さ れるが いずれも 同 じ 意 味 合 いで 用 いられる Mac のターミナル( 基 礎 編 ) 次 に さきほどと 同 じくデスクトップ 上 の hoge フォル ダ 中 に FASTA ファイルが つだけ 存 在 するという 条 件 下 で Mac 環 境 でそのファイルを 見 にいく 手 順 を 解 説 す る Mac のターミナルも 基 本 的 な 見 栄 えは Win と 同 じ である ターミナル 起 動 直 後 は ユーザ 名 kadota のホー ムディレクトリ (~)がカレントディレクトリである[ウェ ブ 資 料 ] Win のコマンドプロンプト > に 相 当 するも のが $ であり カーソルが 点 滅 してコマンド 入 力 待 ち 状 態 となっている 点 も Win と 同 じである しかし 同 じ 作 業 を 実 行 する 上 でも Win と Mac ではコマンド 名 が 異 なる 場 合 がある 点 に 注 意 が 必 要 である 結 論 を 先 に 述 べると Mac のコマンドを 覚 えるほうが 有 意 義 である NGS データを 効 率 的 に 解 析 できる 環 境 は Linux であり Mac のターミナルで 用 いるコマンドは Linux コマンドそのものだからである 例 えば カレント ディレクトリ 表 示 コマンドは Win が cd であるのに 対 し て Mac(つまり Linux)では pwd である[ウェブ 資 料 ] コマンド 名 が 異 なっている 理 由 は おおまかには OS や 規 格 の 違 いによる Win は MS-DOS (Microsoft Disk Operating System)の 流 れを 汲 んでいる MS-DOS のこ とを えむえすどす と 一 続 きで 発 音 してもピンとこない かもしれないが マイクロソフト 社 が 昔 開 発 販 売 してい た OS の 略 であると 解 釈 できれば 納 得 するであろう 年 に 販 売 された Windows という OS より 前 は コマン ドライン 環 境 での 作 業 が 主 流 であった 主 にその 時 代 に 用 いられていたコマンド 群 が 今 でもコマンドプロンプトを 起 動 すれば 利 用 できるのである Mac でターミナルが 標 準 搭 載 されるようになったのは 00 年 に 販 売 された 現 行 OS である OS X(おーえす てん と 読 む) 以 降 である この OS は Linux と 同 じく UNIX (ゆにっくす と 読 む)と 呼 ばれる OS をベースとしてい る そのため UNIX システムで 利 用 可 能 なコマンド 群 の 多 くは Linux および OS X でも 継 承 されている Linux が UNIX 系 システムや UNIX の 一 種 と 表 現 されるのはそ のためである UNIX や UNIX/Linux などという 用 語 も 散 見 されるが 本 連 載 では Linux で 統 一 している Mac (Linux)でカレントディレクトリの 表 示 を 行 う pwd コマンド 実 行 結 果 は /Users/kadota であることが わかる[ウェブ 資 料 ] Win のコマンドプロンプトでカ レントディレクトリの 表 示 を 行 う cd 実 行 結 果 と 若 干 異 な り Mac では C ドライブに 相 当 する 記 述 C: が 消 えて いることがわかる しかし C ドライブという 概 念 は Win 0 0
Jpn. J. Lactic Acid Bact. Vol., No. 0 0 特 有 のものであるため 気 にする 必 要 はない Win の cd コ マンドは i)カレントディレクトリの 表 示 と ii)ディレク トリの 変 更 の つの 役 割 を 果 たしていた それに 対 して Mac の cd コマンドは ii)のディレクトリの 変 更 のみの 役 割 を 果 たす Mac のターミナル 上 で cd のみを 打 ち 込 む 作 業 は ホームディレクトリへの 移 動 を 意 味 する ターミナル 起 動 直 後 は カレントディレクトリがホーム ディレクトリである それゆえ ウェブ 資 料 で cd 実 行 後 に 何 も 起 こっていないように 見 えるのは ホームディレ クトリにいる 状 態 でホームディレクトリへの 移 動 を 行 った ことに 相 当 し 見 かけ 上 ディレクトリの 移 動 が 行 われてい ないからである 私 は 誰? コマンドは Win と 同 じく Mac でも whoami である[ウェブ 資 料 0] Win の 結 果 は PC 名 ユーザ 名 であったが Mac の 結 果 は ユーザ 名 のみが 表 示 されている この 場 合 は kadota である こ のように たとえ 同 じコマンド 名 であっても 出 力 結 果 が 若 干 異 なる 場 合 もあるので 注 意 されたい カレントディレクトリに 何 があるかを 表 示 する ls コマ ンド 実 行 結 果 は Win の dir コマンド 実 行 結 果 よりもシン プルである[ウェブ 資 料 ] ls の l は 数 字 の (いち) ではなくアルファベットの l(える)なので 注 意 されたい つまり えるえす である 著 者 らも 全 ての Linux コマ ンドを 知 っているわけではないが 経 験 上 Linux コマン ドは 小 文 字 のアルファベットで 構 成 されるという 理 解 で 差 支 えない カレントディレクトリがホームディレクトリで の ls コマンド 実 行 結 果 に 話 を 戻 す Desktop, Documents, Downloads などは Win の dir 実 行 結 果 でも 見 られ ホー ムディレクトリの 基 本 構 成 は OS 間 でそれほど 違 わないこ とがわかる Win や Mac の GUI 環 境 では フォルダ 上 部 のオプショ ン 変 更 によって 更 新 日 時 ファイルサイズや 種 類 を 表 示 させることができる 更 新 日 時 でソートさせるテクニック は フォルダ 内 のファイル 数 が 多 い 場 合 に 頻 用 しているで あろう Win の dir 実 行 結 果 は 更 新 日 時 やディレクトリ かどうか(<DIR> の 有 無 )の 詳 細 情 報 がデフォルトで 表 示 される それに 対 して Mac の ls 実 行 結 果 は ディレク トリやファイルの 名 前 のみである もちろんこれは ls の デフォルト 実 行 結 果 にすぎず ls -l のように ls コマン ドに 引 き 続 いて 指 定 する 様 々なオプションを 駆 使 すれば 表 示 形 式 を 自 在 に 変 更 可 能 である[ウェブ 資 料 ] この オプションつきコマンドは えるえす(すぺーす)はいふ んえる と 読 む 上 記 の l(える)オプションは 詳 細 情 報 を 表 示 するためのオプションであり long の 頭 文 字 の 意 味 が 込 められている メインのコマンド(この 場 合 ls) を 打 ち スペースを 入 れてからハイフンで 始 まる 任 意 のオ プション(この 場 合 -l)を 指 定 する 記 述 形 式 は Linux 環 境 で 動 作 する 多 くの NGS 解 析 用 プログラムや Linux コマ ンドを 実 行 する 上 での 基 本 である ls コマンドの 他 のオプション 使 用 例 を 紹 介 する a オプ ションは 隠 しファイルを 含 む 全 てのファイルを 表 示 した いときに 利 用 する[ウェブ 資 料 ] 主 に. から 始 ま るファイルを 表 示 する 目 的 で 使 用 される この.(どっと) から 始 まるファイルには 環 境 設 定 ファイルなどが 含 まれ る Win や Mac の 通 常 利 用 環 境 下 では 特 に 意 識 する 必 要 はないが NGS 解 析 を Linux 環 境 下 で 本 格 的 に 始 める 場 合 には 環 境 設 定 ファイルの 中 身 を 変 更 するテクニックを 身 につけておいたほうがよい ls コマンドや a オプションは 環 境 設 定 ファイルをコマンドライン 環 境 で 視 認 する 最 低 限 のリテラシーである バイオインフォマティクス 分 野 の 常 識 非 常 識 コマンドライン 環 境 初 心 者 がよく 犯 すミスは 適 切 な 場 所 への 半 角 スペースの 入 れ 忘 れである 例 えば ls -a と 打 っているつもりで ls-a と 打 つと ls と -a の 間 に 半 角 スペースが 適 切 に 挿 入 されていないため ls-a という コマンドとして 認 識 される 当 然 のことながら そのよ うなコマンドはない(command not found) といわれる [ウェブ 資 料 ] この 程 度 であれば 明 確 にエラーと 認 識 できるので 対 処 のしようはある コマンドライン 環 境 では 半 角 スペースは 明 確 な 意 味 を 持 つ 場 合 が 多 い それゆえ NGS データ 解 析 に 限 らず 解 析 したいファイルを 入 力 と して 与 える 際 にファイル 名 の 中 にスペースを 入 れるのは コマンドライン 環 境 中 心 のバイオインフォマティクスの 世 界 では 非 常 識 である 他 に 全 角 文 字 や!,, #, $ など の 英 数 字 以 外 の 文 字 も 忌 避 される 一 般 に 多 数 のファイ ルが つのディレクトリ 内 に 存 在 する 場 合 意 味 を 持 たせ たファイル 名 にすることが 多 い 例 えば group_rep.fa, group_rep.fa, group_rep.fa, group_rep.fa の よ う な 具 合 である この 場 合 上 記 のようなブラックリストを 眺 めるのではなく 使 っても 大 丈 夫 という 経 験 に 基 づくホワ イトリストを 利 用 するほうが 手 っ 取 り 早 い 例 えば 著 者 らは 主 に xxx_yy_zzzz_00.fa のような 英 数 字 とアンダー スコア(_)の 組 合 せを 利 用 する ファイルの 拡 張 子 にも 気 をつけたほうがよい 上 記 FASTA ファイルの 拡 張 子 は.fa であったが.fasta でも よい 拡 張 子 が.fa か.fasta であれば 常 識 的 な 範 囲 で 他 はなんでもよいという 意 味 合 いで*.fa や*.fasta という 表 現 もなされる 塩 基 ごとのクオリティ 情 報 を 含 む FASTQ 形 式 ファイル( 以 下 FASTQ ファイル)の 拡 張 子 は *.fq または*.fastq が 一 般 的 である もちろんそれ 以 外 の 拡 張 子 でも 受 け 入 れてくれる NGS 解 析 用 プログラムは 存 在 す るかもしれない 例 えば オプションで FASTQ 形 式 だ ということを 宣 言 さえしておけば 実 際 の 拡 張 子 は.txt で も.doc でも.pdf でも 受 け 入 れてくれるかもしれない し かし 著 者 らは *.doc や*.pdf での 動 作 確 認 (ブラックリ スト 作 成 )には 関 与 しない 無 難 な*.fq や*.fastq を 素 直 に 利 用 する 0 0
Vol., No. Japanese Journal of Lactic Acid Bacteria NGS 解 析 を 効 率 的 に 行 うスキルを 身 につける 上 で バ Linux コマンド 名 やコマンドライン 環 境 に 慣 れたヒトにし イオインフォマティクス 分 野 の 常 識 非 常 識 の 感 覚 を 知 る かわからない 専 門 用 語 を 無 意 識 に 使 って 会 話 をする 傾 向 に ことは 重 要 である 現 役 バイオインフォマティシャンの 多 ある これが 専 門 外 のヒトがよく 漏 らす バイオインフォ くは 体 系 的 なバイオインフォマティクス 教 育 を 受 けてい 系 のヒトは 何 をしゃべっているのか 分 からない という ない 研 究 室 の 先 輩 から 得 られる 情 報 は こうすればう 感 想 を 引 き 出 すのである すでにいくつかの Linux コマ まくいった 私 はこのプログラムを 使 っている これ ンドやコマンドライン 環 境 特 有 の 単 語 が 出 ているが コマ は 普 通 やらない という 経 験 談 がほとんどである そして ンドライン 環 境 に 慣 れれば 会 話 がだんだん 成 立 するように C でも Perl でも R でもなんでもよいが ある 特 定 の 目 的 なる また これらの 用 語 やコマンドを 知 っていれば こ を 達 成 するためのプログラムを 毎 回 最 初 から 作 っているバ れまで 解 読 不 可 能 であったウェブ 上 の 多 くの NGS 関 連 情 0 イオインフォマティシャンは おそらく 皆 無 である 比 較 報 を 活 かすことが 可 能 となる ここまで 身 近 な Win と 0 的 簡 単 なプログラムであっても 先 輩 からもらったものや Mac 上 で GUI 環 境 と 対 比 させながらコマンドライン 環 境 自 分 の 過 去 のプログラム 群 の 中 から 目 的 に 近 いもの( 例 : を 体 験 し NGS 解 析 を 行 う 上 で 最 低 限 必 要 だと 思 われる template.pl)を 選 びだし それをコピーして 新 たなファイ Linux コマンド 利 用 の 基 本 形 および 情 報 収 集 に 対 する 基 ル 名 ( 例 :template_jibun.pl)として 一 旦 保 存 する その 本 的 な 心 構 えを 述 べた 引 き 続 き 基 本 コマンドの 解 説 を 行 後 多 くのコマンドライン 環 境 で 利 用 可 能 な vi(ぶいあい うが これらを 土 台 として パスの 概 念 任 意 のプログラ と 読 む)や Emacs(いーまっくす と 読 む)などの 高 機 ムのインストール シェル 外 部 サーバへのアクセスなど 能 エディタを 駆 使 し 必 要 最 小 限 の 箇 所 を 変 更 することで ノート PC での 本 格 的 な Linux 環 境 上 での 作 業 へと 移 行 し 新 たな 別 のプログラムとしての 機 能 を 持 たせるのである 自 前 サーバ 構 築 やスパコン 上 での 作 業 へとステップアップ ときどき 最 低 限 必 要 な Linux コマンドについての 問 い 合 してゆく 0 わせを 受 けるが 回 答 は 難 しい 例 えば 上 記 のようなファ 0 イルのコピーを 行 う cp コマンドなどは 基 本 中 の 基 本 だと Mac のターミナル( 基 礎 編 ) 思 っているが そのコマンドを 使 うことなく 特 定 の NGS 解 析 を 行 うことは 可 能 だからである また 一 口 に NGS 基 礎 編 の 最 初 に 述 べた 本 来 の 目 的 であるデスクトッ 解 析 とはいっても ゲノム 解 析 トランスクリプトーム 解 プ 上 の hoge フォルダ 中 に 存 在 する FASTA ファイルを 視 析 エクソーム 解 析 など 応 用 分 野 は 多 岐 にわたる 例 えば 認 するやり 方 に 話 を 戻 す Desktop の 下 の 階 層 に hoge が 著 者 らにとって 未 知 の 領 域 である NGS を 用 いたメタゲノ 存 在 するということが 既 知 であれば ホームディレクトリ ム 解 析 分 野 においては どのような Linux 系 スキルが 必 がカレントディレクトリの 状 況 下 でも ls Desktop/hoge 要 とされるかについてのコメントは 難 しい また バイオ と 打 ち 込 むことで 目 的 の FASTA ファイルを 視 認 するこ インフォマティクス 初 級 中 級 上 級 といったカテゴリー とができる[ウェブ 資 料 ] ターミナル 起 動 後 の 状 態 か 分 けも あってないようなものである 初 級 とはこうある ら pwd, cd, whoami, ls, ls-a, ls Desktop, べきという 基 準 も 人 それぞれであり 結 局 は 所 属 するボス ls Desktop/hoge を 打 ち 込 んだ 一 連 の 結 果 を 図 に 示 す との 相 性 がほとんど 全 てである 手 元 に Mac のない Win ユーザも 実 際 の 操 作 のイメージが 今 日 では 多 くの 研 究 者 がツイッターやブログなどで つかめるであろう NGS 解 析 を 効 率 的 に 行 うための 自 分 の 経 験 談 やノウハウ ここで Tips( 秘 訣 や 裏 技 的 な 意 味 )を つ 紹 介 する を 公 開 している バイオインフォマティクス 分 野 のユー 落 穂 拾 い 的 な 位 置 づけではあるものの PC 上 での 作 業 効 ティリティープレイヤーとして 生 き 残 る 重 要 な 資 質 は む 率 を 上 げるものであり この 段 階 から 使 いこなせたほうが やみにヒトに 聞 かずに 自 分 で 問 題 解 決 を 試 みる 姿 勢 であろ よい つ 目 は Tab キー( 以 下 Tab)による 補 完 機 能 の う ウェブ 検 索 を 行 う( 通 称 ググる)ことで 特 定 の 目 利 用 であり 通 称 タブ 補 完 と 呼 ばれるものである こ 的 を 達 成 するための 様 々なやり 方 を 入 手 することができ れまで 出 てきた 程 度 のコマンドであれば コマンドを 見 な る それゆえ この 目 的 を 達 成 するためにはどうすれば がら 手 で 打 ち 込 むことは 容 易 である 一 般 にディレクトリ いいですか? のような 一 から 教 えてもらう 姿 勢 は 疎 まれ 名 やファイル 名 が 長 くなるほど 打 ち 間 違 う 確 率 は 上 昇 する る 場 合 が 多 い 一 通 り 自 分 で 調 べて 得 た 解 析 手 順 について が タブ 補 完 を 利 用 すればタイプミスを 大 幅 に 減 らすこと の 見 解 や ウェブ 検 索 でも 解 決 できなかった 問 題 を QA サ ができる コマンドライン 環 境 でこの 機 能 を 利 用 していな イト(ライフサイエンス QA SEQanswers ) Biostar ) ) いバイオインフォマティシャンはおそらく 一 人 もいない などで 聞 くのが 本 来 あるべき 姿 であろう 異 次 元 の 速 さでキー 入 力 しているのではなく 単 純 にタブ 現 役 のバイオインフォマティシャンは 自 力 での Linux 補 完 を 利 用 して 効 率 的 に 作 業 を 行 っているだけである 環 境 構 築 ができるなどコマンドライン 環 境 での 作 業 が 苦 も タブ 補 完 の 基 本 的 な 利 用 法 は 目 的 のディレクトリ 名 無 くできる 資 質 を 持 っていたか あるいはその 苦 行 を 乗 やファイル 名 の 最 初 の 数 文 字 を 打 ち 込 んでから Tab を り 越 えたヒトが 多 い そのためかどうかは 不 明 であるが 押 すだけである 例 えば 図 の 番 目 のコマンド ls 0
Jpn. J. Lactic Acid Bact. Vol., No. 0 0 図.MacBook のターミナル 画 面 PC 名 は agribio-macbook ユーザ 名 は kadota 計 つのコマンド を 実 行 した 結 果 を 示 している Desktop は ls De まで 打 ち 込 んでから Tab を 押 す と ls Desktop/ と 残 りの 文 字 を 自 動 的 に 補 完 してくれ るので 後 はリターンキー(Enter キー)を 押 すだけでよ い[ウェブ 資 料 ] もちろん ls Des や ls Desk 後 に Tab を 押 すのでもよいが キー 入 力 の 労 力 を 減 らすこ とを 目 的 としたタブ 補 完 の 趣 旨 にむやみに 反 することはな いだろう 次 に ls D 後 に Tab を 押 してみよう コマ ンド 実 行 結 果 に 相 当 する 部 分 に Desktop Documents Downloads が 表 示 されており 一 見 タブ 補 完 がうまく 機 能 していないように 見 える しかし 図 の ls の みの 実 行 結 果 からわかるように 大 文 字 の D から 始 まる ものは 上 記 つのみである つまり コマンド 実 行 結 果 に 相 当 する 部 分 に 表 示 されているものは D から 始 まる 候 補 をリストアップするとともに 次 に 何 か 目 的 の 名 前 をタブ 補 完 できる 最 低 限 のキー 入 力 を 促 しているのであ る 今 は Desktop の 中 身 を 表 示 させることを 目 的 として いるので 他 の つの D から 始 まる 候 補 と 区 別 する 最 小 限 の 文 字 は De である それゆえ 最 初 に 述 べたように ls De 後 に Tab を 押 せばよいのである 同 様 にして Documents の 中 身 を 表 示 させたい 場 合 には ls Doc ま で 打 ち 込 めば 最 後 までタブ 補 完 してくれる ls Do 後 に Tab では Do から 始 まる つの 候 補 (つまり Documents と Downloads)が 表 示 される[ウェブ 資 料 ] つ 目 の Tips は 上 下 左 右 の 矢 印 キー の 利 用 である 通 常 キーボードの 右 下 のほうに 配 置 されている 矢 印 キー の 上 向 き 矢 印 を 回 押 すと つ 前 に 打 ち 込 んだコマ ンドが 表 示 される 例 えば つ 前 に 打 ち 込 んだコマンド が ls Desktop/ であり 今 入 力 したいコマンドが ls Desktop/hoge なら 上 向 き 矢 印 を 回 押 せばよい そうすると ls Desktop/ が 現 れるので hoge を 追 加 入 力 するだけでよい もちろん ls Desktop/h の 状 態 か らのタブ 補 完 でもよい つ 目 の Tips は ヒストリー 機 能 の 利 用 である これは 上 下 左 右 の 矢 印 キー 利 用 の 補 完 的 な 位 置 づけという 理 解 でもよい 何 回 前 だったか 忘 れたが 確 か 前 に 打 ったコマンド を 探 す 場 合 には 上 向 き 矢 印 を 何 回 か 押 してゆき 行 き 過 ぎれば 下 向 き 矢 印 で 戻 ることで 目 的 のコマンドを 探 すのが 基 本 である しか し 常 に コマンド 分 しか 表 示 されないのを 不 便 に 感 じる ときもあろう ヒストリー 機 能 の 実 体 である history コマ ンドを 実 行 すると 直 近 のコマンド 数 十 個 を 表 示 してくれ るので その 中 から 目 的 のコマンドを 選 択 実 行 することが できる[ウェブ 資 料 -] 一 部 の 読 者 は このような Tips は 無 駄 であり NGS 解 析 に 必 要 最 小 限 の 情 報 のみ 教 えてもらえばよいと 思 うかも しれない しかし NGS 解 析 用 の 多 くのプログラムは 多 数 のオプションからなり Linux の リダイレクト という 出 力 先 を 変 更 する 機 能 や パイプ というコマンド 同 士 を 組 み 合 わせる 機 能 を 併 用 するのが 一 般 的 である 例 えば 今 自 分 がどこのディレクトリ 上 で 作 業 をしていて どこに あるファイルを 入 力 として 用 い どのディレクトリ 上 にあ るプログラムをどういうオプションを 用 いて 実 行 し 結 果 ファイルをどういう 形 式 でどのディレクトリ 上 にどういう 名 前 で 保 存 するかなどの 情 報 を 一 行 のコマンドで 記 述 す る 当 然 ながら どこか か 所 でもミスがあるとエラーが 出 ることが 多 い つの 実 行 コマンドではあるものの 長 ければターミナル 上 では 複 数 行 にわたって 折 り 返 し 表 示 さ れるコマンド 中 のたった 一 か 所 を 修 正 するだけのために 上 下 左 右 の 矢 印 キー を 利 用 しないのは 労 力 および 時 間 の 無 駄 である もちろん 結 果 に 本 質 的 な 影 響 を 与 えない 出 力 ファイル 名 の 打 ち 間 違 い 程 度 であれば ( 特 に 計 算 に 時 0 0
Vol., No. Japanese Journal of Lactic Acid Bacteria 0 0 間 がかかる 場 合 には) 普 通 はもう 一 度 実 行 することはせ ず mv というコマンドを 用 いてファイル 名 の 変 更 で 対 応 する 基 本 的 な 利 用 法 は スペースが か 所 にある mv 変 更 前 のファイル 名 変 更 後 のファイル 名 であるが 通 常 は mv のあとのファイル 名 入 力 の 際 にタブ 補 完 を 利 用 す る 本 連 載 の 想 定 読 者 は 全 く 試 行 錯 誤 やミスをせずに 一 通 りの NGS 解 析 ができる 完 璧 な 研 究 者 ではない 著 者 ら は 通 常 利 用 する Linux コマンド 群 や Tips の 積 み 重 ねこ そが 最 小 限 の 労 力 で 自 在 に NGS 解 析 を 行 う 一 番 の 近 道 というスタンスである Mac のターミナル( 基 礎 編 ) 排 他 的 なものも 存 在 するが 一 般 に Linux コマンドの オプションは 組 合 せることができる 例 えば ディレク トリやファイルの 情 報 を 表 示 する ls コマンドは 全 ファ イルを 表 示 する a オプションと 詳 細 を 表 示 する l オプショ ンを ls -la として 同 時 に 利 用 可 能 である[ウェブ 資 料 ] ls -l 実 行 結 果 のウェブ 資 料 と 比 較 することで a オプションの 有 無 による 違 いがよくわかる 尚 オプショ ンの 順 番 は 特 に 気 にする 必 要 はない 例 えば ls -al や ls a -l のいずれでもよい[ウェブ 資 料 ] ここまでは カレントディレクトリがホームディレク トリの 状 態 で Desktop 上 の hoge フォルダ 中 の FASTA ファイルを ls Desktop/hoge で 表 示 させる 作 業 を 行 っ た しかし 著 者 らは 通 常 ls コマンドのオプション( 引 数 ともいう)としてディレクトリ 名 を 指 定 することはせ ず カレントディレクトリの 変 更 を 行 う cd コマンドを 利 用 して 目 的 のディレクトリ(この 場 合 hoge)まで 移 動 す る 前 述 のように Mac のターミナル 上 で cd のみを 打 ち 込 む 作 業 は ホームディレクトリへの 移 動 を 意 味 す る[ウェブ 資 料 ] cd コマンド 実 行 時 に 引 数 として 実 在 するディレクトリ 名 を 指 定 することで 任 意 のアクセス 可 能 なディレクトリに 移 動 することができる( 図 ) 例 えば カレントディレクトリがホームディレクトリ(つ まり /Users/kadota)の 状 態 で cd De まで 打 ったのち Tab を 押 すことで cd Desktop/ となる pwd で 確 認 すると 確 かに Desktop にディレクトリ 変 更 できて いることがわかる(つまり /Users/kadota/Desktop) ls 実 行 結 果 は 図 のと 同 じである cd hoge/ 実 行 後 に pwd で 確 認 すると 確 かに hoge にディレクト リ 変 更 できていることがわかる(つまり /Users/kadota/ Desktop/hoge) ls の 結 果 は 図 のと 同 じである この ls, cd, pwd という 一 連 のコマンド 入 力 は 慣 れてく ると 無 意 識 に 利 用 するようになるだろう 前 述 の 意 味 を 持 たせたファイル 名 の 好 例 がこの FASTA ファイルである 異 様 に 長 いと 思 うかもしれないが ファ イル 名 を 見 れば 乳 酸 菌 ゲノムであること(Lactobacillus_ casei_a) Ensembl Genomes のバージョンなどの 情 報 (GCA_000..) マスクされていない DNA 配 列 で あること(dna;マスクされているものは dna_rm となっ ている) Toplevel のものであること(toplevel)などが 分 かる mv コマンドおよびタブ 補 完 機 能 を 用 いて 効 率 的 に genome.fa などにファイル 名 変 更 することはできるもの の むやみにファイル 名 変 更 しないほうがいいかもしれな い [ウェブ 資 料 0] Linux でゲノム 解 析 この FASTA ファイル( 乳 酸 菌 ゲノム 配 列 )は 個 のコンティグからなる ) 連 載 第 回 では R で FASTA ファイルの 読 み 込 みからコンティグ 数 計 測 結 果 を 含 む 各 種 解 析 が 行 えることを 示 した ) Mac のターミナルでも grep コマンドを 用 いることで という 数 値 を 得 ることが できる( 図 ) FASTA 形 式 ファイルは > から 始 まる 行 の description 行 と 行 目 以 降 に 塩 基 配 列 (やアミ ノ 酸 配 列 )を 文 字 表 記 で 記 述 したものである FASTQ 形 式 と 同 様 NGS 解 析 分 野 においても 比 較 的 よく 用 いら 図.cd, pwd, ls を 用 いて 目 的 の FASTA ファイルを 視 認 する 基 本 的 な 手 順 0 0
Jpn. J. Lactic Acid Bact. Vol., No. 0 0 図. ~ は mv コマンドで genome.fa にファイル 名 を 変 更 し 結 果 を 確 認 する 一 連 の 手 順 は grep コマ ンドを 用 いて genome.fa 中 の > を 含 む 行 数 を 出 力 している 図.コマンドプロンプトでの 作 業 例 cd コマンドを 用 いた 作 業 ディレクトリの 変 更 rename コマ ンドを 用 いたファイル 名 の 変 更 find コマンドを 用 いた > を 含 む 行 数 のカウント れるファイル 形 式 である grep は 文 字 列 検 索 コマンド である FASTA 形 式 ファイルである genome.fa を 読 み 込 んで > から 始 まる description 行 を 抽 出 し 出 力 を 行 数 表 示 にする -c オプションを 与 えているため 結 果 が ( 行 )と 返 される 行 数 表 示 の -c オプションをつけな かった 場 合 つまり grep > genome.fa を 実 行 すると description 情 報 がそのまま 表 示 される[ウェブ 資 料 ] grep は 応 用 範 囲 の 極 めて 広 い 非 常 に 強 力 なコマンドであ る 例 えば アノテーションファイルから 特 定 の 染 色 体 名 を 含 む 行 のみを 抽 出 したり grep 出 力 結 果 をパイプでつ ないで 他 のコマンドで 処 理 する 作 業 が 実 際 に 行 われる ま た 最 近 では RNA-seq データからのキメラ 転 写 物 の 同 定 に 用 いられるなど grep コマンドの NGS 解 析 での 有 効 性 も 報 告 されている ) もちろんここで 示 した 程 度 のことで あれば Win のコマンドプロンプト 上 でも 実 現 可 能 である ( 図 ;ウェブ 資 料 -) 例 えば Linux の grep に 相 当 する Win のコマンドは find である しかし Linux にも find コマンドは 存 在 し ( 文 字 列 検 索 ではなく)ファイル やディレクトリの 検 索 機 能 をもつ NGS 解 析 は Win の コマンドプロンプト 環 境 ではなく Linux 環 境 で 行 うのが 一 般 的 である バイオインフォ 業 界 では 文 字 列 検 索 する ことを grep する といい 通 常 find する はファイ ルやディレクトリ 検 索 のことを 指 す つまり 一 般 にコマ ンド 名 で 会 話 が 成 立 するのは Linux コマンドのみである Bio-Linux の 導 入 連 載 第 回 は Win のコマンドプロンプトおよび Mac のターミナルという 通 常 利 用 PC 環 境 を 用 いて GUI 環 境 とコマンドライン 環 境 の 見 栄 えの 違 い および Win と Linux の 基 本 コマンドを 紹 介 した Mac は Linux コマン ドをすぐに 使 えるため Linux 入 門 としてはおすすめであ る しかし 連 載 第 回 でも 述 べたように 仮 想 ソフトをイ ンストールして 様 々な NGS 解 析 用 プログラムが 一 通 り 組 み 込 まれた Bio-Linux ) を 導 入 すれば Win と Mac と いうホスト OS の 違 いによらず 同 じ Linux 環 境 で 解 析 が 可 能 である 0 年 月 末 にリリースされた Bio-Linux が 最 新 版 である(0 年 0 月 日 調 べ) 連 載 第 回 は Bio-Linux (ゲスト OS) 環 境 での 解 説 を 行 う 予 定 である Win 用 と Mac 用 それぞれのインストール 手 順 を 掲 載 して いるので 是 非 自 力 での Linux 環 境 構 築 にチャレンジし てほしい 0 0
Vol., No. Japanese Journal of Lactic Acid Bacteria 0 0 参 考 文 献 )Ogasawara, O., Mashima, J., Kodama, Y., Kaminuma, E., Nakamura, Y., Okubo, K., Takagi, T.: DDBJ new system and service refactoring. Nucleic Acids Res.,, D-D (0). )小 笠 原 理 :VI プロトコール データ 解 析 と 環 境 構 築 : 解 析 環 境 を 導 入 する,p.-, 実 験 医 学 別 冊 次 世 代 シーク エンス 解 析 スタンダード NGS のポテンシャルを 活 かしきる WET&DRY, 二 階 堂 愛 編, 羊 土 社, 東 京 (0). )Li, J.W., Schmieder, R., Ward, R.M., Delenick, J., Olivares, E.C., Mittelman, D.: SEQanswers: an open access community for collaboratively decoding genomes. Bioinformatics,, - (0). )Parnell, L.D., Lindenbaum, P., Shameer, K., Dall'Olio, G.M., Swan, D.C., Jensen, L.J., Cockell, S.J., Pedersen, B.S., Mangan, M.E., Miller, C.A., Albert, I.: BioStar: an online question & answer resource for the bioinformatics community. PLoS Comput. Biol.,, e00 (0). )Broadbent, J.R., Neeno-Eckwall, E.C., Stahl, B., Tandee, K., Cai, H., Morovic, W., Horvath, P., Heidenreich, J., Perna, N.T., Barrangou, R., Steele, J.L.: Analysis of the Lactobacillus casei supragenome and its influence in species evolution and lifestyle adaptation. BMC Genomics,, (0). )門 田 幸 二, 孫 建 強, 湯 敏, 西 岡 輔, 清 水 謙 多 郎 : 次 世 代 シー ケンサーデータの 解 析 手 法 第 回 イントロダクション, 日 本 乳 酸 菌 学 会 誌,,-(0). )Panagopoulos, I., Gorunova, L., Bjerkehagen, B., Heim, S.: The "grep" command but not FusionMap, FusionFinder or ChimeraScan captures the CIC-DUX fusion gene from whole transcriptome sequencing data on a small round cell tumor with t(;) (q;q). PLoS ONE,, e (0). )Field, D., Tiwari, B., Booth, T., Houten, S., Swan, D., Bertrand, N., Thurston, M.: Open software for biologists: from famine to feast. Nat. Biotechnol.,, 0-0 (00). Methods for analyzing next-generation sequencing data II. From graphical user interface to command line interface Jianqiang Sun, Min Tang, Tasuku Nishioka, Kentaro Shimizu,, and Koji Kadota Department of Biotechnology, Agricultural Bioinformatics Research Unit, Graduate School of Agricultural and Life Sciences, The University of Tokyo. Abstract Graphical user interface (GUI) is useful to perform general tasks. Analysis of next-generation sequencing (NGS) data is, however, non-trivial tasks. Many methods dedicated to NGS data have been implemented on Linux system that provides a command line interface (CLI) as an analysis environment. Therefore, it is desirable for researchers to analyze NGS data on Linux system. We here show the CLIs on Windows (i.e., Command prompts) and Macintosh (i.e., Terminal) systems in contrast with those GUIs. We also describe some basic commands such as dir and ls. 0 0