SaveText.Ru

Без имени
  1. sh-4.2$ trap 'echo Завершение работы...; sleep 2' EXIT
  2. sh-4.2$ trap -p EXIT
  3. trap -- 'echo Завершение работы...; sleep 2' EXIT
  4. sh-4.2$ exit
  5. Завершение работы...
  6. [[email protected] ~]$ cat test-trap.sh
  7. #!/bin/bash
  8.   declare -i i=0
  9.   trap 'echo "Аварийное завершение..."; exit 1' SIGINT
  10.   while [ $i -lt 100 ]
  11.   do
  12.         (( i++ ))
  13.         echo $i
  14.         sleep 1
  15.   done
  16. [[email protected] ~]$ chmod +x test-trap.sh
  17. [[email protected] ~]$ ./test-trap.sh
  18. 1
  19. 2
  20. 3
  21. 4
  22. 5
  23. 6
  24. 7
  25. 8
  26. 9
  27. 10
  28. 11
  29. 12
  30. 13
  31. 14
  32. 15
  33. 16
  34. 17
  35. 18
  36. 19
  37. 20
  38. 21
  39. 22
  40. 23
  41. 24
  42. 25
  43. 26
  44. 27
  45. 28
  46. 29
  47. 30
  48. 31
  49. 32
  50. 33
  51. 34
  52. 35
  53. 36
  54. 37
  55. 38
  56. 39
  57. 40
  58. 41
  59. 42
  60. 43
  61. 44
  62. 45
  63. 46
  64. 47
  65. 48
  66. 49
  67. 50
  68. 51
  69. 52
  70. 53
  71. 54
  72. 55
  73. 56
  74. 57
  75. 58
  76. 59
  77. 60
  78. 61
  79. 62
  80. 63
  81. 64
  82. 65
  83. 66
  84. 67
  85. 68
  86. 69
  87. 70
  88. 71
  89. 72
  90. 73
  91. 74
  92. 75
  93. 76
  94. 77
  95. 78
  96. 79
  97. 80
  98. 81
  99. 82
  100. 83
  101. 84
  102. 85
  103. 86
  104. 87
  105. 88
  106. 89
  107. 90
  108. 91
  109. 92
  110. 93
  111. 94
  112. 95
  113. 96
  114. 97
  115. 98
  116. 99
  117. 100
  118. [[email protected] ~]$ ./test-trap.sh
  119. 1
  120. 2
  121. 3
  122. ^CАварийное завершение...
  123.  

Share with your friends:

Print