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 の原則 (要約)

推薦する

適応幅(パーセンテージ)に応じて Div の高さを調整する純粋な CSS

今日のレスポンシブ レイアウトの要件では、サイズを自動的に調整できる多くの要素で高さと幅の適応を実現...

5つのクールで実用的なHTMLタグと属性の紹介

実はこれもクリックベイトのタイトルであり、「派手」とは言えません。ただ私が無知で、こうしたラベルを見...

Vue での this.$set の使用に関する詳細な説明

目次Vue での this.$set の使用使用なぜレスポンシブなのか?分析する要約するVue での...

マークアップ言語 - フレーズ要素

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

Windows10 HomeバージョンにDockerをインストールするときに発生する問題の概要

Docker ダウンロード アドレス: http://get.daocloud.io/#instal...

JavaScript はマウスのドラッグを実装して div のサイズを調整します

この記事では、マウスをドラッグしてdivのサイズを調整するJavaScriptの具体的なコードを参考...

MySQLカスタム関数とストアドプロシージャの詳細な説明

序文この記事では主にMySQLのカスタム関数とストアドプロシージャに関する関連コンテンツを紹介し、皆...

シンプルなカレンダー効果を実現する JavaScript コード

この記事では、シンプルなカレンダー効果を実現するためのJavaScriptの具体的なコードを参考まで...

Docker を使用して Go Web アプリケーションをデプロイする方法

目次なぜ Docker が必要なのでしょうか? Docker デプロイメントの例コードの準備Dock...

CSV、Excel、SQL ファイルを MySQL にインポートするためのヒント

1. csvファイルをインポートする次のコマンドを使用します。 1.mysql> infile...

vite+vue3+element-plus プロジェクトをビルドする手順

viteを使用してvue3プロジェクトを構築するターミナルで次のコマンドを実行すると、Vite を使...

ウォーターフォールフローレイアウトを実装する3つの方法

序文今日、Xianyuを閲覧していたとき、各行の高さが同じではないことに気付きました。調べてみると、...

MySQLの半同期の詳細な説明

目次序文MySQL マスタースレーブレプリケーションMySQL でサポートされているレプリケーション...

仮想マシンでXshell5をLinuxに接続する方法と障害の解決方法

かなり前に仮想マシンをインストールしましたが、ようやく Linux をインストールしました。マシンの...

ElementuiはデータをxlsxとExcelテーブルにエクスポートします

最近、Vue プロジェクトについて知り、ElementUI でデータを xlsx および Excel...