Linuxの貼り付けコマンドの使い方

Linuxの貼り付けコマンドの使い方

01. コマンドの概要

貼り付けコマンドは各ファイルを列ごとに結合します。これは、2 つの異なるファイルの内容を貼り付けて新しいファイルを作成するのと同じです。

注: paste のデフォルトの貼り付け方法は列に貼り付けることですが、行に貼り付けることができないわけではありません。行に貼り付けるには、-s オプションを追加できます。

02. コマンド形式

使用法: [オプション]... [ファイル]... を貼り付けます

03. 共通オプション

指定された各ファイルの各行を対応する行に書き込み、タブで区切って標準出力に書き込みます。
ファイルが指定されていない場合、または「-」が指定されている場合、プログラムは標準入力からデータを読み取ります。

長いオプションに必要な引数は、短いオプションにも必要です。
-d, --delimiters=list タブ区切りの代わりに指定されたリスト内の文字を使用する
-s, --serial 並列行出力モードは使用しませんが、各ファイルは1行を占めます
--help このヘルプメッセージを表示して終了する
--version バージョン情報を表示して終了する

04. 参考例

ファイルの内容は次のとおりです

[deng@localhost test]$ cat ファイル1
1
2
3
4
5
6
[deng@localhost test]$ cat ファイル2
AA
BB
CC
DD
EE
FF
[deng@localhost テスト]$

4.1 2つのファイルを結合する

[deng@localhost test]$ ファイル1 ファイル2を貼り付け
1 AA
2 BB
3CC
4DD
5 EE
6 FF
[deng@localhost テスト]$ 

デフォルトではタブが区切り文字として使用されていることがわかります。

[deng@localhost test]$ ファイル1 ファイル2を貼り付け | sed -nl
1\tAA$
2\tBB$
3\tCC$
4\tDD$
5\tEE$
6\tFF$
[deng@localhost テスト]$ 

4.2 タブを区切り文字として表す文字の指定

[deng@localhost test]$ paste -d '*' file1 file2
単3電池1本
2*BB
3*CC
4*DD
5*EE
6*FF
[deng@localhost テスト]$ 

4.3 各ファイルを行ごとに貼り付けるのではなく、行ごとに結合します。 (行と列の転置が使用されます)

[deng@localhost test]$ paste -s -d '*' file1 file2
1*2*3*4*5*6
AA*BB*CC*DD*EE*FF
[deng@localhost テスト]$ 

注意すべき点は、アスタリスクを引用符 (一重引用符または二重引用符) で囲む必要があることです。そうしないと、シェルはアスタリスクを現在のディレクトリ内のファイルのリストに展開するため、注意してください。

4.4 行と列の反転

[deng@localhost test]$ paste -s file1
1 2 3 4 5 6
[deng@localhost テスト]$ 

4.5 2つのファイルの行数が異なる

[deng@localhost test]$ ファイル1 ファイル2を貼り付け
1 AA
2 BB
3CC
4DD
5 EE
6 FF
7
[deng@localhost テスト]$ 

パラメータの順序は出力に影響することに注意してください。

[deng@localhost test]$ ファイル2 ファイル1を貼り付け
AA1 1
BB2 2015/03/13
CC3 3 3 4 5 6 7 8 9 10 11 12 13
DD4 4 号
EE5 ...
FF6 攻略
    7
[deng@localhost テスト]$ 

4.6 複数のファイルの結合

[deng@localhost test]$ ファイル1 ファイル2 ファイル3を貼り付け
1 AA 単3形
2 BB BB
3 CC cc
4 DD DD
5 EEEE
6 FF ff
7
[deng@localhost テスト]$ 

貼り付けは非常に強力です。複数のファイルを 1 行ずつ連結できます。また、貼り付けの連結はファイル リストの順序に関連していることがわかります。

貼り付けコマンドには非常に便利なオプション (-) もあります。これは、各 (-) について、データが標準入力から 1 回読み取られることを意味します。フィールド区切りとしてスペースを使用して、6 列形式でディレクトリ リストを表示します。方法は次のとおりです。

[root@master など]# cat /etc/passwd|head -n 5|cut -d : -f 1,3-5|paste -d@ - - -
ルート:0:0:root@bin:1:1:bin@デーモン:2:2:デーモン
adm:3:4:adm@lp:4:7:lp@
[root@master など]# cat /etc/passwd|head -n 5|cut -d : -f 1,3-5|paste -d@ - - - 
ルート:0:0:root@bin:1:1:bin@デーモン:2:2:デーモン
adm:3:4:adm@lp:4:7:lp@
[root@master など]# cat /etc/passwd|head -n 5|cut -d : -f 1,3-5|paste -d@ - - - -
ルート:0:0:root@bin:1:1:bin@デーモン:2:2:デーモン@adm:3:4:adm
lp:4:7:lp@@@
[root@master など]# cat /etc/passwd|head -n 5|cut -d : -f 1,3-5|paste -d@ - - - - -
ルート:0:0:root@bin:1:1:bin@daemon:2:2:daemon@adm:3:4:adm@lp:4:7:lp
[root@master など]# cat /etc/passwd|head -n 5|cut -d : -f 1,3-5|paste -d@ - - - - - -
ルート:0:0:root@bin:1:1:bin@デーモン:2:2:デーモン@adm:3:4:adm@lp:4:7:lp@
[root@master など]# cat /etc/passwd|cut -d : -f 1,3-5|paste -d@ - - - - - -
ルート:0:0:root@bin:1:1:bin@daemon:2:2:daemon@adm:3:4:adm@lp:4:7:lp@sync:5:0:sync
シャットダウン:6:0:shutdown@halt:7:0:halt@mail:8:12:mail@uucp:10:14:uucp@operator:11:0:operator@games:12:100:games
gopher:13:30:gopher@ftp:14:50:FTP ユーザー@nobody:99:99:Nobody@dbus:81:81:システム メッセージ bus@usbmuxd:113:113:usbmuxd ユーザー@avahi-autoipd:170:170:Avahi IPv4LL スタック
vcsa:69:69:仮想コンソール メモリ所有者@rtkit:499:497:RealtimeKit@abrt:173:173:@haldaemon:68:68:HAL デーモン@saslauth:498:76:"Saslauthd ユーザー"@postfix:89:89:
ntp:38:38:@apache:48:48:Apache@avahi:70:70:Avahi mDNS/DNS-SD スタック@pulse:497:496:PulseAudio システム デーモン@gdm:42:42:@sshd:74:74:権限分離 SSH
tcpdump:72:72:@zookeeper:500:500:zookeeper@hadoop:501:501:@@@

Linux pasteコマンドの使い方についてはこれで終了です。Linux pasteコマンドの詳細については、123WORDPRESS.COMの過去の記事や以下の関連記事を検索してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Linux topコマンドの使い方の詳しい説明
  • Linuxのcutコマンドの使い方
  • Linuxシステムのsudoコマンドの詳細な説明
  • Linux マウントコマンドの使用法の詳細な分析
  • Linux tar 圧縮およびパッケージ化コマンドの使い方
  • Linux systemctlコマンドの詳細な説明
  • Linux での rz コマンドと sz コマンドの使用法の詳細な説明
  • Linux ls コマンドパラメータの詳細な説明

<<:  ミニプログラムカスタムコンポーネントの非効率的なグローバルスタイルの解決策

>>:  MySQL データベース開発の 36 の原則 (要約)

推薦する

mysql5.7.19 解凍版の詳細なインストール チュートリアル (純粋なクラックされた中国語版 SQLYog を使用)

Mysql5.7.19バージョンは今年リリースされた新しいバージョンです。最近のMySQLのバージ...

MySQL ビューの一貫性を確保する方法の詳細な説明 (チェック オプション付き)

この記事では、例を使用して、MySQL ビューの一貫性を確保する方法 (チェック オプションを使用)...

Mariadb リモート ログイン構成と問題解決

序文:インストール プロセスについては詳しく説明しません。問題に直接触れましょう。MySQL のリモ...

Linux の MariaDB データベースについて

目次Linux の MariaDB データベースについて1. データベースとは何ですか? 2. デー...

Linux で MySQL データベースのインポートおよびエクスポート コマンドを実装する方法

1. mysqldump コマンドを使用してデータベースをエクスポートします (このコマンドのパスで...

Vueメソッドに基づくシンプルなタイマーの実装

Vueのシンプルなタイマーを参考にしてください。具体的な内容は以下のとおりです原理: setInte...

抽選効果を実現するJavaScript

この記事では、宝くじマシンの効果を実現するためのJavaScriptの具体的なコードを参考までに共有...

Vueは新しいウィンドウを開き、パラメータ転送のグラフィック例を実装します。

私が実現したい機能は、新しいウィンドウを開いて新しいページを表示することですが、パラメータを渡す必要...

Vue 親子コンポーネントの相互値の転送と呼び出し

目次1. 親が子コンポーネントに値を渡す2. 子コンポーネントが親コンポーネントに値を渡す3. 子コ...

Vueルーティングナビゲーションガードの簡単な理解

目次1. グローバルガード1. グローバル前線警備2. グローバル解像度ガード3. グローバルポスト...

HTML テーブルタグチュートリアル (35): 列間属性 COLSPAN

複雑なテーブル構造では、一部のセルが垂直方向に複数のセルにまたがるため、列間属性 COLSPAN を...

MySQL のスローログオンラインの問題と最適化ソリューション

MySQL スロー ログは、MySQL DBA やその他の開発および運用担当者が細心の注意を払う必要...

TomcatコンポーネントはWebサーバーのアーキテクチャの進化を示しています

1. tomcat とは誰ですか? 2. Tomcat は何ができますか? Tomcat は Web...

クエリでのMySQLのユニークキーの使用と関連する問題

1. テーブルステートメントを作成します。 テーブル「従業員」を作成します( `emp_no` in...

Ubuntu 19にTheanoをインストールする際の問題を解決する

解決: pythearn2 パッケージをダウンロードしたディレクトリで、setup.py ファイルを...