aboutsummaryrefslogtreecommitdiff
path: root/ja_JP.eucJP/man/man1/tar.1
blob: 7893d88b101f56228904ca85687f6ea0aafd0170 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
.\" Copyright (c) 1991, 1992, 1993 Free Software Foundation	-*- nroff -*-
.\" See /usr/src/gnu/COPYING for conditions of redistribution
.\"
.\"	Written by John F. Woods <jfw@jfwhome.funhouse.com>
.\"
.\"	%Id: tar.1,v 1.6.2.1 1997/06/05 23:13:54 max Exp %
.\" jpman %Id: tar.1,v 1.2 1997/06/24 07:09:44 bobson Stab %
.\"
.Dd 6 August 1994
.Os FreeBSD
.Dt TAR 1
.Sh 名称
.Nm tar
.Nd
テープアーカイバ; "tar" アーカイブファイルの操作
.Sh 書式
.Nm
.Op Cm Bq -
.Op Cm bundled-options
.Op Ar [gnu-style-flags]
.Op Ar tarfile
.Op Ar blocksize
.Op Ar exclude-file
.Op Ar filenames
.Op Fl C Ar directory-name
.Sh 解説
.Nm
は、歴史的な理由により
.Dq tape archiver
を省略して名付けられました。
.Nm
プログラムは、
.Ar tarfile
と呼ばれる
.Dq tar
フォーマットのアーカイブファイルを作成し、アーカイブにファイルを追加したり、
またアーカイブからファイルを抽出したりします。
tarfile は通常磁気テープを指しますが、フロッピーディスケットや
通常のファイルでも構いません。
.Pp
通常、
.Nm
コマンドラインの最初の引数は、機能文字および機能変更文字からなる単語であり、
その前に ダッシュ(-)をつけてもつけなくてもいいようになっています。
単語には、次の機能文字のうちちょうど 1 つを含んでいなければなりません:
.Cm A ,
.Cm c ,
.Cm d ,
.Cm r ,
.Cm t ,
.Cm u ,
.Cm x ,
これらはそれぞれ 追加 (append) 、作成 (create) 、差分 (difference) 、
置換 (replace) 、リスト表示 (table of contents) 、更新 (update) 、
そして抽出 (extract) を意味しています (下記に詳細があります) 。
これらの他に、以下に詳細を述べる機能変更文字を、コマンド単語に
含めることができます。それらのいくつかは、コマンド単語内と同じ順で
コマンドライン引数を要求します (EXAMPLE セクションを参照) 。
機能文字と機能変更文字は、GNU 形式の引数で指定することもできます
(2 つのダッシュを最初につけ、1 つのコマンド単語ごとに機能文字か
機能変更文字を 1 つだけ指定する) 。
アーカイブから追加、抽出、またはリスト表示するためにコマンドライン指定する
ファイル名には、シェルのパターンマッチ文字列を使用することができます。
.Sh 機能
以下の機能のいずれか1つだけを必ず指定しなければなりません。
.Pp
.Bl -tag -width "--concatenate" -compact
.It Fl A
.It Fl -catenate
.It Fl "-concatenate"
指定された(tar アーカイブ形式の)ファイルを tar アーカイブの末尾
に追加します。(追加する前の古い end-of-archive ブロックは削除さ
れます。)
これは、指定されたファイルがアーカイブの中の1ファイルとなるので
はなく、指定したファイルの中に含まれているファイルを、最初に指定
したアーカイブに追加するという効果を持ちます。
.Em 注:
このオプションは tarfile を再書き込みする必要があるため、1/4 イ
ンチカートリッジテープでは動作しません。
.It Fl c
.It Fl -create
新しいアーカイブを作成して (もしくは古い内容を切り捨てて)、指定
されたファイルをアーカイブに書き込みます。
.It Fl d
.It Fl -diff
.It Fl -compare
アーカイブの中のファイルと、それに相当するファイルシステム内のファ
イルとの違いを調査します。
.It Fl -delete
指定されたファイルをアーカイブから削除します。(1/4 インチテープ
では動作しません。)
.It Fl r
.It Fl -append
アーカイブの末尾にファイルを追加します。(1/4 インチテープでは動
作しません。)
.It Fl t
.It Fl -list
アーカイブ内容のリスト表示をします。もし引数としてファイル名が指
定されていれば、そのファイルだけがリスト表示されます。そうでなけ
れば、アーカイブに含まれるすべてのファイルリストが表示されます。
.It Fl u
.It Fl -update
指定したファイルのうち、アーカイブ内のファイルよりもディスク上の
ファイルの変更時刻が新しいものだけを追加します。1/4 インチテープ
では動作しません。
.It Fl x
.It Fl -extract
.It Fl -get
アーカイブからファイルを抽出します。可能ならば、オーナー、変更時
刻、ファイル属性はリストアされます。もし
.Ar file
引数が指定されていなければ、アーカイブ内の全ファイルが抽出されま
す。もし
.Ar filename
引数がテープ上のディレクトリ名にマッチしていれば、そのディレクト
リとディレクトリ内のファイルが抽出されます。(ディレクトリ内のす
べてのディレクトリについても同様に抽出されます。)
もしアーカイブ内に、相当する同じファイルが複数含まれていれば(上
記の
.Fl -append
コマンドを参照)、最後に含まれているものが他のすべてのファイルを
上書きする形で抽出されます。
.Sh オプション
.Nm
の他のオプションは、組み合わせて使用することができます。
1文字オプションは、コマンド単語の中で指定することができます。
引数を与えるべきオプションの場合、オプションに続けて引数を指定し
ます。1文字オプションであれば、したコマンドラインに続けて引数を
指定することになるでしょう (以下の
.Sx EXAMPLES
を参照してください。)
.Pp
.Bl -tag -width "--preserve-permissions" -compact
.It Fl -help
tar のすべてのコマンドオプションについて一覧と解説を表示します。
.It Fl -atime-preserve
テープに書かれている、ファイルのアクセス時刻をリストアします。
(inodeの変更時刻が変更されることに注意してください!)
.It Fl b
.It Fl -block-size Ar number
読み書きするブロックサイズを512-byte ブロック N 個ぶんに設定します。
.It Fl B
.It Fl -read-full-blocks
短い読みだしブロックを、完全なブロックに再組み立てします。
(4.2BSD パイプの読み込み用。)
.It Fl C Ar directory
.It Fl -directory Ar directory
抽出時に
.Ar directory
へ移動します。
.It Fl -checkpoint
アーカイブを読むときディレクトリ名を表示します。
.It Fl f Ar [hostname:]file
.It Fl -file  Ar [hostname:]file
指定された
.Ar file
(デフォルトは /dev/rst0) を読み書きします。
もし
.Ar hostname
が指定されていれば、
.Nm
は
.Xr rmt 8
を使って、リモートマシン上の
.Ar file
を読み書きします。"-" はファイルネームとして使用されることもありますが、
これは標準入力から読み出したり、標準出力へ書き出したりするために使用されます。
.It Fl F Ar file
.It Fl -info-script Ar file
.It Fl -new-volume-script Ar file
それぞれのアーカイブの最後にスクリプトを走らせます (暗黙の
.Fl M
指定が行なわれます。)
.It Fl -fast-read
ワイルドカードで指定されていないすべての抽出ターゲットが
アーカイブ内に見つかったら、その時点で終了します。
.It Fl G
.It Fl -incremental
古い GNU-format インクリメンタルバックアップファイルを作成/リス
ト/抽出します。
.It Fl g Ar file
.It Fl -listed-incremental Ar file
新しい GNU-format インクリメンタルバックアップファイルを作成/リ
スト/抽出します。
.It Fl h
.It Fl -dereference
シンボリックリンクをシンボリックのまま書き込みません。シンボリッ
クリンクが指しているデータを書き込みます。
.It Fl i
.It Fl -ignore-zeros
アーカイブの中のゼロブロック(通常、End-Of-File を意味する)を無視します。
.It Fl -ignore-failed-read
ファイルが読めなくても、非 0 のステータスで exit しません。
.It Fl k
.It Fl -keep-old-files
ディスク上に既にあるファイルを保持します。つまり、アーカイブから
抽出するファイルは、ディスク上のファイルへ上書きしません。
.It Fl K Ar file
.It Fl -starting-file Ar file
アーカイブの中の
.Ar file
から(抽出、リストなどを)始めます。
.It Fl l
.It Fl -one-file-system
あるファイルシステム内にあるファイルだけでアーカイブを作成します。
(他ファイルシステムへのマウントポイントは使われません。)
.It Fl L Ar number
.It Fl -tape-length Ar number
N*1024 バイトを書き込んだ後テープの交換を要求します。
.It Fl m
.It Fl -modification-time
ファイルの変更時刻を抽出しません。
.It Fl M
.It Fl -multi-volume
マルチボリュームアーカイブを作成/リスト/抽出します。
.It Fl N Ar date
.It Fl -after-date Ar date
.It Fl -newer Ar date
.Ar date
より新しいファイルだけを抽出します。
.It Fl o
.It Fl -old-archive
.It Fl -portability
POSIX フォーマットではなく、V7 フォーマットのアーカイブを作成し
ます。
.It Fl O
.It Fl -to-stdout
ファイルを標準出力に抽出します。
.It Fl p
.It Fl -same-permissions
.It Fl -preserve-permissions
保護情報を完全に抽出します。
.It Fl -preserve
.Fl p s
の指定と同じ効果を持ちます。
.It Fl P
.It Fl -absolute-paths
ファイル名から先頭の`/'をとりません。
.It Fl R
.It Fl -record-number
メッセージ中にアーカイブ内のレコード番号を埋め込み表示します。
.It Fl -remove-files
アーカイブに追加したファイルを、追加後に削除します。
.It Fl s
.It Fl -same-order
.It Fl -preserve-order
アーカイブ内から抽出するファイルを、指定された順のままにします。
.It Fl S
.It Fl -sparse
「少ない」ファイルを効率的に扱うようにします。
.It Fl T Ar file
.It Fl -files-from Ar file
.Ar file
から抽出もしくは作成するファイル名を得ます。(1行1ファイル名。)
.It Fl -null
nullで終わっている名前を考慮し、
.Fl T
の振舞を変更します。
これは
.Fl C
指定を無効にします。
.It Fl -totals
--create によって書かれたトータルバイト数を表示します。
.It Fl v
.It Fl -verbose
--create でアーカイブに書くファイルや --extract でアーカイブから
取り出すファイル名をリスト表示します。ファイルの保護情報をファイ
ル名とともに表示させるには、--list を使います。
.It Fl V Ar volume-name
.It Fl -label Ar volume-name
指定された
.Ar volume-name
を持ったアーカイブを作成します。
.It Fl -version
tar プログラムのバージョン番号を表示します。
.It Fl w
.It Fl -interactive
.It Fl -confirmation
すべての動作に対して、確認を求めるようになります。
.It Fl W
.It Fl -verify
アーカイブを書き込んだ後、ベリファイを試みます。
.It Fl -exclude Ar pattern
.Ar pattern
にマッチするファイルを除外します。
(抽出しません。追加しません。リスト表示しません。)
.It Fl X Ar file
.It Fl -exclude-from Ar file
.Ar file
に一覧されているファイルを除外します。
.It Fl Z
.It Fl -compress
.It Fl -uncompress
アーカイブを
.Xr compress 1
でフィルタリングします。
.It Fl z
.It Fl -gzip
.It Fl -gunzip
アーカイブを
.Xr gzip 1
でフィルタリングします。
.It Fl -use-compress-program Ar program
アーカイブを
.Ar program
でフィルタリングします。
(これは、
.Fl d
が指定されたときは  ``decompress'' を意味しなければなりません。)
.It Fl -block-compress
テープもしくはフロッピーのために、圧縮プログラムの出力をブロック
化します。(そうでないとき奇数長を書き込むと、デバイスドライバは
それを拒絶するでしょう。)
.It Fl [0-7][lmh]
テープドライブと密度を指定します。
.It Fl -norecurse
作成時にサブディレクトリ内の内容を無視します。
.It Fl -unlink
ファイルを作成する前に、いったん削除します。
.El
.Sh 使用例
"bert" と "ernie" というファイルを含む、ブロックサイズが 20 ブロッ
クのアーカイブを、テープドライブ /dev/rst0 に作るには、
.Pp
.Dl tar cfb /dev/rst0 20 bert ernie
.Pp
もしくは
.Pp
.Dl tar --create --file /dev/rst0 --block-size 20 bert ernie
.Pp
と入力します。
.Fl f
および
.Fl b
フラグは両方とも引数を必要としていることに注意してください。
この引数は、コマンド単語に書かれているのと同じ順序でコマンドライ
ンから取得されます。
.Pp
/dev/rst0 はデフォルトのデバイスであり、20 はデフォルトのブロッ
クサイズですので、上記の例は次のように単純化できます。
.Pp
.Dl tar c bert ernie
.Pp
"backup.tar" というアーカイブから、すべての C ソース及びヘッダを
抽出するには、次のようにタイプします。
.Pp
.Dl tar xf backup.tar "*.[ch]"
.Pp
シェルがカレントディレクトリ内のファイル名に展開しないよう、パタ
ーンをクォートしなければならないことに注意してください。(当然、
シェルはアーカイブ内のファイル一覧にアクセスすることはできません。)
.Pp
ファイルを階層構造ごとコピーするには、このようにコマンドを使用してください:
.Bd -literal
tar cf - -C srcdir . | tar xpf - -C destdir
.Ed
.Pp
ディスケットに、gzip を使った圧縮アーカイブを作成するには、次の
ようなコマンドラインを使うといいでしょう。
.Pp
.Dl tar --block-compress -z -c -v -f /dev/rfd1a -b 36 tar/
.Pp
まとめ指定フラグと --スタイルのフラグを混在させることができない
ことに注意してください。次のようにタイプしなければならないわけで
はなく、上記のような書き方で1文字フラグを使うことができます。
.Pp
.Dl tar --block-compress --gzip --verbose --file /dev/rfd1a --block-size 20 tar/
.Pp
上のようにして作成したディスクの内容は、次のようにすればリスト表
示できます。
.Pp
.Dl tar tvfbz /dev/rfd1a 36
.Pp
2 つの tar アーカイブを 1 つのアーカイブにまとめるには、
.Pp
.Dl tar Af archive1.tar archive2.tar
.Pp
を使います。こうすると、archive2.tar に含まれているファイルが 
archive1.tar の末尾に追加されます。(単純に
.Pp
.Dl cat archive2.tar >> archive1.tar
.Pp
とタイプしてもうまくいかないことに注意してください。なぜなら、
tar アーカイブの末尾には end-of-file ブロックがあるからです。)
.Sh 環境変数
tar プログラムは、以下の環境変数を参照します。
.Bl -tag -width "POSIXLY-CORRECT"
.It POSIXLY-CORRECT
通常、tar はファイル指定の中に混ざったフラグを処理します。
この環境変数を設定すると、tar は最初のフラグ以外の引数を見つける
とそれ以降の引数に対してフラグ処理を行なわないという、POSIX 仕様
に合わせた動作を行なうようになります。
.It SHELL
インタラクティブモードにおいて、サブシェルの起動が要求されたとき、
SHELL 変数が設定されていればそれが、設定されていなければ
"/bin/sh" が使用されます。
.It TAPE
tar のデフォルトのテープドライブを変更します。(これは、さらに
.Fl f
フラグによって変更することができます。)
.El
.Sh 関連ファイル
.Bl -tag -width "/dev/rst0"
.It Pa /dev/rst0
デフォルトのテープドライブ
.El
.\" This next request is for sections 1, 6, 7 & 8 only
.\"     (command return values (to shell) and fprintf/stderr type diagnostics)
.\" .Sh 診断
.Sh 関連項目
.Xr compress 1 ,
.Xr gzip 1 ,
.Xr pax 1 ,
.Xr ft 8 ,
.Xr rmt 8
.\" .Sh 規格
.Sh 歴史
tar フォーマットは立派な歴史を持っていて、Sixth Edition UNIX に
原点があります。
この tar の実装は GNU 実装であり、John Gilmore によって書かれた
パブリックドメイン tar が元になっています。
.Sh 作者
次の人を含む、大変多くの人々。[ソースの中の ChangeLog ファイルに記
述されている人々] John Gilmore (オリジナルのパブリックドメイン版の
作者), Fenlason (最初の GNU 作者), Joy Kendall, Jim Kingdon, David
J. MacKenzie, Michael I Bushnell, Noah Friedman, そして 
バグフィックスや追加を貢献してくれた無数の人々。

このマニュアルページは NetBSD 1.0 release から、FreeBSD グループが
取り込んだものです。
.Sh バグ
特徴的な
.Fl C
オプションは、これまでの tar プログラムのようには動作しないため、
おそらく信頼できません。
.Pp
-A コマンドは、任意の数の tar アーカイブを結合するよう動くべきで
すが、そうは動作しません。2 番目やそれ以降のアーカイブの 
end-of-archive ブロックを取り除くことを試みます。