[要まとめ整理]linuxスキル

4656 ワード

  • lsの結果を1行に表示:
  • ls | tr "
    "
    " " | <whatever you like>
    参照:https://serverfault.com/questions/105838/make-ls-print-it-all-on-one-line-like-in-terminal
  • lsの結果をパラメータ
  • とする
    ./averageDuration $(ls 2017*.kwy)
    かえって次の文が通じなくて、しばらくはなぜか分かりません.ここでaverageDurationはc++プログラムで、中のmainはパラメータを受信することができます
    ls 2017*.kwy |./averageDuration
  • 指定行をsedで抽出http://www.commandlinefu.com/commands/view/9890/print-all-lines-between-two-line-numbers
  • 指定行(ある行、ある行からある行、ある文字を待つ行など):http://ccm.net/faq/1451-delete-lines-from-a-file-using-sed
  • sedの使い方は、1つ整理したほうがいいです.http://www.yourownlinux.com/2015/04/sed-command-in-linux-append-and-insert-lines-to-file.html
  • 一連のファイルの名前をシーケンス番号に変更します.https://stackoverflow.com/questions/880467/renaming-a-set-of-files-to-001-002-on-linux
  • i=1; temp=$(mktemp -p .); for file in image*
    do
    mv "$file" $temp;
    mv $temp $(printf "image_%0.3d.jpg" $i)
    i=$((i + 1))
    done  

    https://stackoverflow.com/questions/9605232/how-to-merge-every-two-lines-into-one-from-the-command-line
  • コマンドの出力結果を関数に渡すには、次の
  • に$を追加することを覚えておいてください.
    arg=$(ls *ep.out);./jumpstartFromAveraged.py $arg 
    ただしarg=(ls*ep.out);./jumpstartFromAveraged.py$argはだめです.そうすれば、後でpyにあげるargはls*epです.lsの結果ではなくout.
    そしてls*ep.out|./jumpstartFromAveraged.pyも通用しません
  • インストールソフトウェア、tar.gzパケットの方法
  • tar -zxvf file.tar.gz
    それからフォルダに入ってinstallの説明を見てインストールします
  • 百思不得解の問題:
  • sed -i '/plot\\/a\"200ep.out\" title\"rrr\"ls 2,\\' MygraphTest.gnuplot
    この文は正常ですが、次の文(単一引用符を二重引用符に変更します):
    sed -i "/plot\\/a\"200ep.out\" title\"rrr\"ls 2,\\"MygraphTest.gnuplot
    常にエラー:sed:-e expression 1,char 43:unterminated address regex
    どうして原因がどこにあるのか分からない.
    また、dir=200 epを定義して、その文の中の200 epを$dirに変えるのもいつも通じないと思います.しばらくはどうやって解決するか分かりません.