【Linuxコマンド解説事典】 037. Linuxコマンド事典 ファイル分割ツールcsplitとdpkg-splitの使い方を詳しく解説

csplit

大きなファイルを小さな部分に分割する

補足

csplit コマンドは、大きなファイルを小さなフラグメントに分割し、各フラグメントをファイルに保存するために使用されます。断片化ファイルには「xx00」、「xx01」などの名前が付けられます。csplit コマンドは、split の変形です。split はファイル サイズまたは行数に基づいてのみファイルを分割できますが、csplit はファイル自体の特性に基づいてファイルを分割できます。

文法

csplit (オプション) (引数)

オプション

  • -b<出力形式> または --suffix-format=<出力形式>: プリセット出力形式には、xx00、xx01 などのファイル名が付いています。ユーザーは、<出力形式> を変更することで出力ファイル名を変更できます。
  • -f<出力プレフィックス文字列> または --prefix=<出力プレフィックス文字列>: プリセットの出力プレフィックス文字列とそのファイル名は、xx00、xx01 などです。出力プレフィックス文字列が "hello" として指定されている場合、出力ファイルは名前は hello00、hello、01... になります。
  • -k または --keep-files: エラーが発生したり実行が中断され、保存されたファイルを削除できない場合でもファイルを保持します。
  • -n<出力ファイル名の桁数> または –digits=<出力ファイル名の桁数>: 出力ファイル名のデフォルトの桁数。ファイル名は xx00、xx01... です。ユーザーが出力ファイル名の桁数を指定した場合、出力ファイル名を「3」とすると、出力ファイル名はxx000、xx001などになります。
  • -q または -s または –quint または –silent: コマンドの実行プロセスを表示しません。
  • -z または –elide-empty-files: 長さが 0 バイトのファイルを削除します。

パラメータ

  • ファイル: 分割する元のファイルを指定します。
  • パターン: ファイルを分割するときの一致パターンを指定します。

サンプルテストファイルserver.log

cat server.log
SERVER-1
[con] 10.10.10.1 suc
[con] 10.10.10.2 fai
[dis] 10.10.10.3 pen
[con] 10.10.10.4 suc
SERVER-2
[con] 10.10.10.5 suc
[con] 10.10.10.6 fai
[dis] 10.10.10.7 pen
[con] 10.10.10.8 suc
SERVER-3
[con] 10.10.10.9 suc
[con] 10.10.10.10 fai
[dis] 10.10.10.11 pen
[con] 10.10.10.12 suc

これは、server.logに分割する必要がありこれらのファイルの内容は元のファイルの異なる SERVER 部分から取得されます。server1.logserver2.logserver3.log

[root@localhost split]# csplit server.log /SERVER/ -n2 -s {*} -f server -b "%02d.log"; rm server00.log
[root@localhost split]# ls
server01.log  server02.log  server03.log  server.log

コマンドの詳細:

  • /[正则表达式]/: テキスト パターンに一致します。たとえば/SERVER/、最初の行から SERVER を含む一致する行までです。
  • {*}:ファイルの最後まで一致に応じて繰り返し分割を行うことを示し、{整数}分割実行回数を指定する形式で実行します。
  • -s: サイレント モード。他の情報は印刷されません。
  • -n:分割後のファイル名の末尾の桁数を指定します。01、02、03など。
  • -f:分割後のファイル名の接頭辞を指定します。
  • -b: サフィックスの形式を指定します。たとえば%02d.log、これは C 言語の printf パラメータ形式に似ています。
  • rm server00.log: 分割後の最初のファイルには内容がなく、一致した単語はファイルの最初の行にあるため、最初のファイルを削除します。

dpkg-分割

Debian Linux で大きなパッケージを小さなパッケージに分割する

補足

dpkg-split コマンドは、Debian Linux の大きなソフトウェア パッケージを小さなソフトウェア パッケージに分割するために使用されます。また、分割されたファイルをマージすることもできます。

文法

dpkg-split (オプション) (引数)

オプション

  • -S: 分割後の各小さいファイルの最大サイズをバイト単位で設定します。
  • -s: パッケージを分割します。
  • -j<チャンク ファイル><チャンク ファイル>: 各チャンクを結合します。
  • -I<チャンク ファイル>: チャンク ファイルの関連情報を表示します。
  • -l: 一致しない部分をリストします。
  • -dscard <filename>: 一致しない部分を無視します。

パラメータ

  • パッケージ: 分割する必要がある「.deb」パッケージを指定します。

foo.debサイズが 460KB の N 個のファイルを分割します。

dpkg-split -s foo.deb

分割されたファイルを結合します。

dpkg-split -j "foo*"

ゼロから学ぶpython

【ゼロから学ぶPython】 92. Pythonのリクエストライブラリを使ってHTTPリクエストを送信し、レスポンスを処理する
【ゼロから学ぶPython】 91. デコレータと辞書を使ってリクエストパスの簡単なWebアプリケーションを管理する
【ゼロから学ぶPython】 93. 辞書管理を使うリクエストパス
【ゼロから学ぶPython】 89. WSGIを使ってシンプルで効率的なWebサーバーを構築する
【ゼロから学ぶPython】 88. WSGIインターフェースの詳細解説:シンプルで効率的なWeb開発を実現する
【ゼロから学ぶPython】 87. 手動で構築するHTTP サーバー Python の実装とマルチスレッド同時処理
[ゼロから学ぶ Python] 86. ブラウザとサーバー通信における HTTP プロトコルとその役割を深く理解する
[ゼロから学ぶ Python] 85. Python プロセス プールの並列コンピューティング技術の応用
[ゼロから学ぶPython】 84. スレッドとプロセスを深く理解する
【ゼロから学ぶPython】 83. Pythonのマルチプロセスプログラミングとプロセスプールの利用
【ゼロから学ぶPython】 82. マルチベースのチャットプログラムの実現スレッド化
[ゼロから学ぶ Python] 81. Python など スレッド通信とキューの応用
[ゼロから学ぶ Python] 80. グローバル変数へのスレッド アクセスとスレッド セーフティの問題
[ゼロから学ぶ Python] 79. グローバル変数へのスレッド アクセスとスレッドセキュリティの問題
[ゼロから学ぶ Python] 78. ファイル ダウンロードの事例
[ゼロから学ぶ Python] 77. TCP サーバーのプログラミングと注意事項
[ゼロから学ぶ Python] 76. サーバーとクライアント: ネットワーク通信の主要コンポーネント
[ゼロから学ぶ Python] 75 TCPプロトコル:信頼性の高いコネクション指向の伝送層通信プロトコル
【ゼロから学ぶPython】 74. UDPネットワークプログラム:ポートの問題とバインディング情報を詳しく解説
【ゼロから学ぶPython】 73. UDPネットワークプログラム – データの送信
【ゼロから学ぶPython】 72. ソケット通信とソケットの作成 【ゼロから学ぶPython】のやり方
71. ネットワークポートとその機能
【ゼロから学ぶPython】 70. ネットワークの通信方法とその応用:ルータへの直接通信から複数のネットワークを接続するまで
【ゼロから学ぶPython】 69.ネットワーク通信とIPアドレス分類分析
[ゼロから学ぶPython] 68. Python正規表現の貪欲モードと非貪欲モード
[ゼロから学ぶPython] 67. Pythonのreモジュール:正規置換と高度なマッチング技術
[ゼロから学ぶPython] 66 .正規表現を深く理解する:パターンマッチングとテキスト処理のための強力なツール
【ゼロから学ぶPython】 65. Pythonの正規表現修飾子とその応用を詳しく解説
【ゼロから学ぶPython】 64. re.compileメソッドin Python正規表現 詳細解説
【ゼロから学ぶPython】 63. 正規表現のre.Matchクラスとその属性、メソッドの紹介
【ゼロから学ぶPython】 62. Pythonの正規表現:強力な文字列マッチングツール
【ゼロから学ぶPython】ゼロ】 61. Python のプロパティ属性の詳しい説明と応用例
【ゼロから学ぶ Python】 60. 探索ジェネレータ:反復のための柔軟なツール
【ゼロから学ぶ Python】 59. イテレータ:データトラバーサルを最適化する効率的なツール
【ゼロから学ぶ Python】ゼロから】 58. Pythonのカスタム例外と例外発生方法
【ゼロから学ぶPython】 57. Pythonのwithキーワードを使ってリソースを正しくクローズする
【ゼロから学ぶPython】 56. プログラミングにおける例外処理の重要性と応用
【ゼロから学ぶPython】 55. Pythonのシリアライズと処理 デシリアライズ、 JSONとpickleモジュールの応用
【ゼロから学ぶPython】 54. メモリにデータを書き込む
【ゼロから学ぶPython】 53. CSVファイルとPython CSVモジュール
【ゼロから学ぶPython】 52. ファイルの読み書き - Pythonファイル操作ガイド
[ゼロから学ぶPython】 51. Pythonでのファイルのオープンとクローズとその応用
【ゼロから学ぶPython】 49. Pythonのオブジェクト関連の組み込み関数とその使い方
【ゼロから学ぶPython】 48 . 継承とその使い方を詳しく解説Python の多重継承
[ゼロから学ぶ Python] 47. オブジェクト指向プログラミングにおける継承の概念と基本的な使い方
[ゼロから学ぶ Python] 46. Python の __new__ および __init__ メソッドの分析とシングルトン デザイン パターン
[ゼロから学ぶ Python] 45 . Pythonのクラスメソッドと静的メソッド
【ゼロから学ぶPython】 44. オブジェクト指向プログラミングのプライベート属性とメソッド
【ゼロから学ぶPython】 43. Pythonのオブジェクト指向プログラミングの例 属性とクラス属性
【ゼロから学ぶPython】 42. Pythonの組み込み属性とメソッド
【ゼロから学ぶPython】 41. Pythonの魔法のメソッド(2)
【ゼロから学ぶPython】 40. Pythonの魔法のメソッド(1)
【ゼロから学ぶPython】 39. オブジェクト指向の基本文法と応用例
【ゼロから学ぶPython】 38. Pythonパッケージの利用とインポート
【ゼロから学ぶPython】 37. Pythonカスタムモジュールの使い方と注意点
【ゼロから学ぶPython】 】 36. サードパーティパッケージ管理にPythonでpipを使う方法とスキル
【ゼロから学ぶPython】 35. Pythonの共通システムモジュールとその使い方
【ゼロから学ぶPython】 34. Pythonモジュールのインポートと使い方を詳しく解説
【ゼロから学ぶPython】 33. デコレータの役割(2)
【ゼロから学ぶPython】 32. デコレータの役割(1)
【ゼロから学ぶPython】 31. 高階関数とクロージャを深く理解するPython
【ゼロから学ぶPython】 30. 再帰関数と無名関数を深く理解する
【ゼロから学ぶPython】 29. 「関数パラメータの詳細解説」 - Python関数パラメータの使い分けを理解する
【ゼロから学ぶPython】 28 . Pythonのローカル変数とグローバル 変数
【ゼロから学ぶPython】 27. Python関数の使い方と入れ子呼び出し
【ゼロから学ぶPython】 25. 関数:コード作成効率を上げるツール
【ゼロから学ぶPython】 24. 文字列操作Pythonのトラバース方法とトラバーサル方法
【ゼロから学ぶPython】 23. Pythonの集合(set)の使い方とよくある操作
【ゼロから学ぶPython】 22. Pythonの辞書と辞書の変数の追加・削除・変更・問い合わせ
【 Pythonをゼロから学ぶ】 21. Pythonのタプルと辞書
【ゼロから学ぶPython】 20. Pythonのリスト操作スキルと例題
【ゼロから学ぶPython】 19. リストのループとリストのネスティングの応用
【ゼロから学ぶPython】 18. Pythonのリストの基本操作を詳しく解説(1)
【ゼロから学ぶPython】 17. Pythonの文字列の整形方法(2)
【ゼロから学ぶPython】 16. Pythonの文字列の整形方法(1)
【ゼロから学ぶPython】 15. 文字列と文字セットのエンコーディングを深く理解する
【ゼロから学ぶPython】 14. Pythonの文字列のよくある操作(2)
【ゼロから学ぶPython】 13. Pythonの文字列のよくある操作(1)
【ゼロから学ぶPython】 12. Pythonの文字列の操作と応用
【ゼロから学ぶPython】 11. Pythonのループ文と制御フロー
【ゼロから学ぶPython】 10. Pythonの条件文とifネストの詳細解説
【ゼロから学ぶPython】 09. Pythonの条件判定文
【ゼロから学ぶPython】 08. ビット演算がわかるPython演算子、演算子の優先順位
【ゼロから学ぶPython】 07. Pythonの演算子を詳しく解説:代入、比較、論理演算子
【ゼロから学ぶPython】 06. Pythonで算術演算子を使って計算や文字列連結をする
【ゼロから学ぶPython】 05. Python の出力と入力
【ゼロから学ぶ Python】 04. Python プログラミングの基礎: 変数、データ型、識別子
【ゼロから学ぶ Python】 03. Python 対話型プログラミングと詳細なアノテーション
【ゼロから学ぶPython】02. 開発ツールの紹介
【ゼロから学ぶPython】01. Pythonのインストールと設定

Guess you like

Origin blog.csdn.net/qq_33681891/article/details/132596102