タグ

xargsに関するU1and0のブックマーク (5)

  • xargs を使ってカジュアルに並列処理 - たごもりすメモ

    シェルからでも重い処理というのはちょこちょこあって、例えば超デカいログファイルを移動して圧縮したりというお仕事は世界中のあらゆる場所で毎日行われていたりする。コマンドラインからでも大量の圧縮済みログファイルをいっぺんに展開したい、とか。 あるディレクトリ以下に存在するたくさんのファイルを(圧縮済みのものを除いて)全部 bzip2 圧縮したい!と思ったら、とりあえずさくっと次のようにコマンドラインで叩けばいい。 $ find . -not -name '*.bz2' | xargs bzip2 これで、まあそんなに問題なく効率的にbzip2圧縮ができる。だがしかし。 最近は複数コアのCPUが普通に転がってるし、あまつさえHyperThreadingが有効になってたりしてOSから見える論理CPU数がハンパない。普通に8とかある。その一方で複数コアを使用してくれるコマンドというのはあんまりなくて

    xargs を使ってカジュアルに並列処理 - たごもりすメモ
    U1and0
    U1and0 2019/06/29
    xargs -L 引数上限 -P コア数 として使用する。-P0で最大まで使うとOS動かなくなっちゃうから重い処理には使わない。 -L指定しないと引数が5000とか1万とか越えない限りパラレルに実行してくれない
  • GNU parallel でコマンドを並列実行する - それマグで!

    コマンドを並列実行したい時があります。 たとえば、たくさんの画像を変換したり、動画を変化したりなどジョブを大量に起動することをしたいとき コマンド実行中もマルチコアのCPUが余っててもったいなーって思います。i7などは4コア2スレッドの8CPU有りますからね。 またruby などはGIL ( global interpreter lock )で上限ストップがかかってたり。 普段は xargs 並列実行は xargs を使ってます。 find | xargs -P0 GNU parallel というものを見つけた GNU Parallel を使うと並列実行が可能になるということを知りました。 早速インストール brew install parallel sudo apt install parallel prallel の特徴 並列実行したいコマンドと並列実行したいファイルを引数を指定する。

    GNU parallel でコマンドを並列実行する - それマグで!
    U1and0
    U1and0 2019/06/29
    コマンドによってはparallelよりもxargsの方が早い(し使いやすいしなんといってもどこにでもある)
  • xargsコマンドで覚えておきたい使い方・組み合わせ7個(+1個) | 俺的備忘録 〜なんかいろいろ〜

    LinuxやUNIXで、コマンドちょっと組み合わせて利用する際、非常に役に立つxargsコマンド。 今回は、このxargsコマンドで覚えておきたい使い方・組み合わせについて紹介する。 1.基的な使い方 まず、そもそもこのコマンドはどういう使い方をするのか。 基的には、以下のようにパイプでつなぐことで前のコマンド(コマンド1)で取得した値(標準出力)を利用してxargsで指定した別のコマンド(コマンド2)に引数として渡して実行させる事ができるコマンドだ。 コマンド1 | xargs コマンド2 [root@test-centos7 ~]# find /work -type f /work/test2.txt /work/test.txt /work/aaaaa.txt /work/bbbbb.txt /work/ccccc.txt /work/ddddd.txt /work/sample

  • はてなブログ | 無料ブログを作成しよう

    オーベルジーヌ実レポ べ物の鼻塩塩(未だに通じるのかな) オーベルジーヌというカレーをご存知だろうか 都内にあるデリバリー専門のカレー屋で、 ロケ弁などで大人気の格欧風カレーが楽しめるらしい いいな〜 いいな〜オブザイヤー 都内の奴らはこんな良いモンってんのか 許せねえよ………

    はてなブログ | 無料ブログを作成しよう
    U1and0
    U1and0 2017/05/09
    $ find . -name *.sublime-project | xargs -i mv {} ~/SublimeText3/Packages/User/Projects/
  • lessで複数のファイルを順番にながめる - たまめも(tech)

    ls -1 path/to/file | xargs less # :n (next) / :p (prev) でファイルを行き来できるMacに標準で入ってるxargsは-iとか{}とかつけなくてよいかんじ。 ほんとはhead / tailしたときみたいに ==> path/to/file/1 <== xxxxx... ==> path/to/file/2 <== xxxxx...ファイル名と中身を並べてlessでつらつら見たかったのだけど、できないのかな…

    lessで複数のファイルを順番にながめる - たまめも(tech)
    U1and0
    U1and0 2016/12/04
    “# :n (next) / :p (prev) でファイルを行き来できる”
  • 1