ycat

提供: Personal Tukubai for Academic
2021年6月7日 (月) 08:37時点におけるPt4a editor (トーク | 投稿記録)による版 (Batch Update)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

名前

ycat : ファイルの横連結をする

書式

使い方とオプション

Usage

ycat [-<n>] [-T<tmpdir>] file1 file2 ...

Option

-<n>
-T<tmpdir>

説明

引数で指定した複数のファイルを横に並べて連結して出力します。各ファイルの形は崩れることはなく、ファイルの見た目そのままに横連結します。

-T<tmpdir> オプションを指定すると、一時ファイルが必要な場合に一時ファイルをディレクトリ <tmpdir> に作成します。デフォールトは /tmp です。一時ファイルが必要な場合は、入力ファイルがパイプ等の特殊ファイルの場合です。

例(その1)

基本的な使い方

$ cat file1
0000000 浜地______ 50 F
0000001 鈴田______ 50 F
0000003 杉山______ 26 F
0000004 白土______ 40 M
0000005 崎村______ 50 F
0000007 梶川______ 42 F


$ cat file2
0000000 91 59 20 76 54
0000001 46 39 8  5  21
0000003 30 50 71 36 30
0000004 58 71 20 10 6
0000005 82 79 16 21 80
0000007 50 2  33 15 62


$ ycat file1 file2 > file3
$ cat file3
0000000 浜地______ 50 F 0000000 91 59 20 76 54
0000001 鈴田______ 50 F 0000001 46 39 8  5  21
0000003 杉山______ 26 F 0000003 30 50 71 36 30
0000004 白土______ 40 M 0000004 58 71 20 10 6
0000005 崎村______ 50 F 0000005 82 79 16 21 80
0000007 梶川______ 42 F 0000007 50 2  33 15 62

例(その2)

-<n> オプションを使用すると、ファイル間の空白を <n> 文字分にすることができます。

$ ycat -3 file1 file2 > file3
$ cat file3
0000000 浜地______ 50 F   0000000 91 59 20 76 54
0000001 鈴田______ 50 F   0000001 46 39 8  5  21
0000003 杉山______ 26 F   0000003 30 50 71 36 30
0000004 白土______ 40 M   0000004 58 71 20 10 6
0000005 崎村______ 50 F   0000005 82 79 16 21 80
0000007 梶川______ 42 F   0000007 50 2  33 15 62
                       ↑ 3文字分空いている。

例(その3)

-0 を指定すると、ファイルの隙間を空けません。

$ ycat -0 file1 file2 > file3
$ cat file3
0000000 浜地______ 50 F0000000 91 59 20 76 54
0000001 鈴田______ 50 F0000001 46 39 8  5  21
0000003 杉山______ 26 F0000003 30 50 71 36 30
0000004 白土______ 40 M0000004 58 71 20 10 6
0000005 崎村______ 50 F0000005 82 79 16 21 80
0000007 梶川______ 42 F0000007 50 2  33 15 62

例(その4)

ファイル名に “-” を指定すると、標準入力から読み込みます。

$ cat file1 | ycat - file2 > file3
$ cat file2 | ycat file1 - > file3

備考

ycat は、連結後の各ファイルの形が崩れないように、まず始めに各ファイルの最大幅を測ります。単純に空白横連結したいだけなら、paste コマンドを使う方が高速です。

$ paste -d" " file1 file2 file3

Version and Edition

Version : Tue Jun 18 19:00:37 JST 2019

Edition : 2


© 2021 Universal Shell Programming Laboratory site