tarアーカイブがあり、グループIDとユーザーIDを含むコンテンツを見たいです。使用するとき
tar --list -v --file file.tar
ユーザーとグループ名が表示されますが、ユーザーIDとグループIDを見たいです。この目標をどのように達成できますか?それとも、ID以外のユーザー自体がtarアーカイブに保存されていますか?
答え1
tarアーカイブを作成すると、tarユーティリティはユーザーIDを保存します。何かが表示されたら、/ etc / passwdでユーザーを見つけて見つけた場合はユーザー名を印刷し、そうでない場合はIDを印刷します。
この動作を回避するには、この--numeric-owner
オプションを試してください。
答え2
使用--to-command
オプション:
tar xf file.tar --to-command 'echo $TAR_FILENAME:$TAR_UID:$TAR_GID'
uid/gid の代わりにユーザー名とグループ名を表示するには:
tar xf file.tar --to-command 'echo $TAR_FILENAME:$TAR_UNAME:$TAR_GNAME'
答え3
抽出せずに一覧を表示したい場合は、次のことをお勧めします。
tar --list -tf data.tar.xz
例は次のとおりです。--numeric-owner
$ tar --list --numeric-owner -tf data.tar.xz
drwxr-xr-x 0/0 0 2013-07-15 04:41 ./
drwxr-xr-x 0/0 0 2013-07-15 04:41 ./usr/
drwxr-xr-x 0/0 0 2022-10-18 10:30 ./usr/bin/
-rwxrwxr-x 0/0 60 2022-10-18 10:25 ./usr/bin/furiusisomount
drwxr-xr-x 0/0 0 2013-07-15 04:41 ./usr/share/
drwxr-xr-x 0/0 0 2013-07-15 04:41 ./usr/share/menu/
-rw-r--r-- 0/0 189 2013-07-11 17:14 ./usr/share/menu/furiusisomount
例なし
$ tar --list -tf data.tar.xz
drwxr-xr-x root/root 0 2013-07-15 04:41 ./
drwxr-xr-x root/root 0 2013-07-15 04:41 ./usr/
drwxr-xr-x root/root 0 2022-10-18 10:30 ./usr/bin/
-rwxrwxr-x root/root 60 2022-10-18 10:25 ./usr/bin/furiusisomount
drwxr-xr-x root/root 0 2013-07-15 04:41 ./usr/share/
drwxr-xr-x root/root 0 2013-07-15 04:41 ./usr/share/menu/
-rw-r--r-- root/root 189 2013-07-11 17:14 ./usr/share/menu/furiusisomount