= ターミナルコマンドの一覧 = <> 基本的なコマンドの説明. コマンドの説明の前に, 基本的な単語の説明. * ディレクトリ:フォルダのこと * カレントディレクトリ:現在いるディレクトリのこと * ホームディレクトリ:ターミナルを起動した時のデフォルトのフォルダのこと == lsコマンド == カレントディレクトリにあるファイルの一覧を表示する. {{{ ls #カレントディレクトリ内のファイルやディレクトリの表示 ls -l #ファイルやディレクトリの詳細も一緒に表示する ls -a #隠しファイルも含めて表示する ls -la #隠しファイルも含めてファイルやディレクトリの詳細も一緒に表示する ls -lt #時間が新しい順に並べる ls -lh #ファイルサイズが読みやすくなる hって--human-readableのhなのか? }}} == cdコマンド == カレントディレクトリにあるディレクトリに移動する. {{{ cd test #testというディレクトリに移動する. cd ~/ #ホームディレクトリに移動 cd .. #1つ前のディレクトリに移動 }}} == pwdコマンド == 今いるディレクトリのパス,自分が今どこにいるか表示する. {{{ pwd }}} == mkdirコマンド == 新しいディレクトリを作成する. {{{ mkdir test }}} このあと, {{{ls}}}コマンドを実行するとtest2というディレクトリが作成されていることが確認できるはず. {{{ ls test }}} == mvコマンド == ファイルを別のディレクトリに移動させたり, ファイル名を変更する. {{{ mv test1.C test/ #test1.Cというファイルをtestというディレクトリに移動 mv test1.C test3.C #test1.Cというファイルをtest3.Cという名前に変更 }}} == cpコマンド == ファイルを別のディレクトリにコピーする. {{{ cp test2.C test/ #test2.Cをtestというディレクトリにコピーする cp test2.C test3.C #test2.Cをtest3.Cという名前で複製 cp -r testdir test/ #testdirというディレクトリ内を全てtestというディレクトリにコピーする. }}} サーバー間でコピーしたい場合は {{{ $scp コピーしたいファイルがあるサーバー:ディレクトリ/ファイル コピー先のサーバー:ディレクトリ     $scp mfujimot@lxplus.cern.ch:/ANY_DIRECTORY_YOU_WANT/file.txt . #.(今いる場所)にfile.txtをコピー }}} == fileの受け渡し == fileを受け渡したい場合は圧縮して受け渡すのが望ましい。 {{{ zip hoge.zip hoge // fileの圧縮 zip -r hoge.zip hoge // directorごと圧縮 }}} サーバー上にファイルがある場合は圧縮したファイル/ディレクトリがある場所を教えれば受け渡しのやりとりができる。lxplusを使用している場合は/afs/cern.ch/user/k/kasai/work/public/以下に置く。(k/kasaiは例なので自分のuser nameに変更すること。) == xAOD fileの容量の確認 == lxplusであれば {{{ asetup Athena,21.0.70,here checkAOD hoge.root > hoge.txt }}} とすることで、hoge.txtに容量が書き込まれているはずである。 == jobに関するコマンド == 実行したはいいが、やっぱり削除したいという時は {{{ $ jobs [1] Stopped hoge0 [2] Stopped hoge1 [3] Stopped hoge2 }}} で確認。[数字]に対応するjobを削除したい時は {{{ $ kill %1 %2 [1] Terminated hoge0 [2] Terminated hoge1 }}} のようにすればok。一気に全てのjobを削除したい時は {{{ $ killall [1] Killed hoge0 [2] Killed hoge1 [3] Killed hoge2 }}} で全てkilされる。 == grepコマンド & findコマンド == 特定のワードを含んだファイルを出力してほしい {{{ $grep -n -r "探したい文字列" ./* }}} これは今いるディレクトリ.以下の全てを探してほしいときのコマンド grep:ファイルの中のワードで検索するコマンド -n: 行番号を出力<
> -r: ディレクトリ内も検索対象にする(これがないとディレクトリ下を探してくれないのであんまりよくわからない感じになる)<
> -i: 大文字と小文字を無視する {{{ $find . -type f | xargs grep -n "探したい文字列" }}} でも同じことができる find: ファイルやディレクトリを探すコマンド<
> -name: ファイルやディレクトリ名の一部のみ指定して検索<
> -type f: ファイルのみを対象として検索 {{{ $find . -type f -name "*.txt" | xargs grep -n "探したい文字列" }}} だとその中から.txtファイルだけが探される == Linuxでの移動の仕方 == 多分emacsと同じです Ctrl+a : 行の最初にとぶ<
> Ctrl+e : 行の最後にとぶ<
> Ctrl+f : forwardに1文字ずつ進む<
> Ctrl+b : backwardに1文字ずつ進む<
> Ctrl+d : delete(1字ずつ)<
> Ctrl+k : delete(1行ずつ)<
> Ctrl+y : paste(Ctrl+kとかでdeleteしたやつが貼られる)<
> Ctrl+r なんか文字列 : 検索<
> Alt+Shift+> : 履歴の一番下に戻る<
> == rsyncコマンド == ファイルやディレクトリを同期したいときに。scpよりこっちのが速いし、実行権限ごとコピーできるし、止まって再開した時に途中から再開してくれるので便利 {{{ $rsync -av 元のディレクトリ 同期先のディレクトリ }}} == nautilus == たいていのLinux...Gnomeでファイルをみるときに便利かも {{{ $nautilus ./ディレクトリ& }}} == screenコマンド == 一回サーバーとの接続が切れても大丈夫コマンド {{{ $screen }}} で新しくスクリーンを開く<
> 環境設定があれば最初からやる {{{ $Ctrl+a d #スクリーンを出る $screen -ls #今開いているスクリーンを表示 There is a screen on: 1855.pts-31.lxplus074 (Detached) 1 Socket in /var/run/screen/S-mfujimot. }}} こんな感じで出た場合 {{{ $screen -r 1855.pts-31.lxplus074 #スクリーンに戻る }}} アクセスしたサーバー(上の例の場合lxplus074)に戻らないとスクリーンはないので気をつける