link02.at 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. # Process this file with autom4te to create testsuite. -*- Autotest -*-
  2. # Test suite for GNU tar.
  3. # Copyright 2009-2023 Free Software Foundation, Inc.
  4. # This file is part of GNU tar.
  5. # GNU tar is free software; you can redistribute it and/or modify
  6. # it under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation; either version 3 of the License, or
  8. # (at your option) any later version.
  9. # GNU tar is distributed in the hope that it will be useful,
  10. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. # GNU General Public License for more details.
  13. # You should have received a copy of the GNU General Public License
  14. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  15. # Tar 1.22 failed to recognize last hard link when creating an archive with
  16. # the --remove-files option.
  17. #
  18. # Reported by: "Theodore Y. Ts'o" <[email protected]>,
  19. # Carl Worth <[email protected]>
  20. # References:
  21. # <[email protected]>
  22. # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=188663
  23. # <[email protected]>
  24. # http://lists.gnu.org/archive/html/bug-tar/2009-07/msg00015.html
  25. AT_SETUP([preserve hard links with --remove-files])
  26. AT_KEYWORDS([hardlinks link02])
  27. AT_TAR_CHECK([
  28. genfile -l 64 -f file1
  29. ln file1 file2
  30. ln file2 file3
  31. ln file3 file4
  32. tar -c -f archive --remove-files file1 file2 file3 file4
  33. tar tfv archive | sed -n 's/.*file[[2-4]] link to //p'
  34. ],
  35. [0],
  36. [file1
  37. file1
  38. file1
  39. ])
  40. AT_CLEANUP
  41. # End of link02.at