]> git.ipfire.org Git - thirdparty/bash.git/commitdiff
fix error message when completing backquote command substitution; fix test builtin...
authorChet Ramey <chet.ramey@case.edu>
Tue, 28 Jun 2022 20:15:24 +0000 (16:15 -0400)
committerChet Ramey <chet.ramey@case.edu>
Tue, 28 Jun 2022 20:15:24 +0000 (16:15 -0400)
CWRU/CWRU.chlog
builtins/printf.def
po/ko.gmo
po/ko.po
po/nl.gmo
po/nl.po
subst.c
test.c
tests/RUN-ONE-TEST
tests/test.right
tests/test.tests

index c6d0c3a5e0e6891299bec298432f8b036d627ac9..f3d531cc1bc0c300220273910f9b73b86be3e727 100644 (file)
@@ -3715,5 +3715,19 @@ execute_cmd.c
        - execute_select_command: set this_command_name to NULL after running
          any DEBUG trap like execute_for_command does
 
+                                  6/23
+                                  ----
+test.c
+       - three_arguments: when given [ ! ! arg ], make sure to advance POS
+         after calling two_arguments to avoid a `too many arguments' error.
+         Report from Steffen Nurpmeso <steffen@sdaoden.eu>
 
-       
+                                  6/27
+                                  ----
+subst.c
+       - expand_word_internal: when expanding backquoted command substitution,
+         call string_extract with the SX_REQMATCH flag (closing backquote
+         required) only if the word flags don't contain W_COMPLETE,
+         indicating that we're doing this for completion, probably to
+         determine whether or not to append something to the word. Fixes bug
+         reported by Emanuele Torre <torreemanuele6@gmail.com>.
index 22560991ded38c190adc17715ccf0e06af8debf4..84658c3990c822bccb146ecf964af0ddb4398b7d 100644 (file)
@@ -250,7 +250,7 @@ printf_builtin (list)
      WORD_LIST *list;
 {
   int ch, fieldwidth, precision;
-  int have_fieldwidth, have_precision, use_Lmod;
+  int have_fieldwidth, have_precision, use_Lmod, altform;
   char convch, thisch, nextch, *format, *modstart, *precstart, *fmt, *start;
 #if defined (HANDLE_MULTIBYTE)
   char mbch[25];               /* 25 > MB_LEN_MAX, plus can handle 4-byte UTF-8 and large Unicode characters*/
@@ -341,7 +341,7 @@ printf_builtin (list)
       for (fmt = format; *fmt; fmt++)
        {
          precision = fieldwidth = 0;
-         have_fieldwidth = have_precision = 0;
+         have_fieldwidth = have_precision = altform = 0;
          precstart = 0;
 
          if (*fmt == '\\')
@@ -379,9 +379,11 @@ printf_builtin (list)
              continue;
            }
 
-         /* found format specification, skip to field width */
+         /* Found format specification, skip to field width. We check for
+            alternate form for possible later use. */
          for (; *fmt && strchr(SKIP1, *fmt); ++fmt)
-           ;
+           if (*fmt == '#')
+             altform++;
 
          /* Skip optional field width. */
          if (*fmt == '*')
index e8dbf4963447029ab9a8c8dceee7c1ff22964daa..11fe7d2e9858d04c9db976bb385371ebee86eab1 100644 (file)
Binary files a/po/ko.gmo and b/po/ko.gmo differ
index 0131769131c7fce0746e3dd10ee0555407e74149..4b3fbc621f8fd05f0f8d5ebc0db7ee66db954f57 100644 (file)
--- a/po/ko.po
+++ b/po/ko.po
@@ -2,14 +2,15 @@
 # Copyright (C) 2019 Free Software Foundation, Inc.
 # This file is distributed under the same license as the bash package.
 # SooHyun Kim <soohyunkim@kw.ac.kr>, 2019.
+# Seong-ho Cho <darkcircle.0426@gmail.com>, 2022.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: bash-5.0\n"
+"Project-Id-Version: bash-5.2-rc1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-11-28 12:51-0500\n"
-"PO-Revision-Date: 2019-11-23 16:28+0900\n"
-"Last-Translator: SooHyun Kim <soohyunkim@kw.ac.kr>\n"
+"POT-Creation-Date: 2022-01-11 14:50-0500\n"
+"PO-Revision-Date: 2022-06-25 01:50+0900\n"
+"Last-Translator: Seong-ho Cho <darkcircle.0426@gmail.com>\n"
 "Language-Team: Korean <translation-team-ko@googlegroups.com>\n"
 "Language: ko\n"
 "MIME-Version: 1.0\n"
@@ -17,99 +18,95 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "X-Bugs: Report translation errors to the Language-Team address.\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Poedit 2.3.1\n"
 
 #: arrayfunc.c:66
 msgid "bad array subscript"
 msgstr "잘못된 배열 첨자"
 
-#: arrayfunc.c:421 builtins/declare.def:638 variables.c:2274 variables.c:2300
-#: variables.c:3133
+#: arrayfunc.c:471 builtins/declare.def:709 variables.c:2242 variables.c:2268
+#: variables.c:3101
 #, c-format
 msgid "%s: removing nameref attribute"
 msgstr "%s: 이름 참조 속성을 지우는 중"
 
-#: arrayfunc.c:446 builtins/declare.def:851
+#: arrayfunc.c:496 builtins/declare.def:868
 #, c-format
 msgid "%s: cannot convert indexed to associative array"
-msgstr "%s: ì\9d¸ë\8d±ì\8a¤ 배열을 연관 배열로 변환할 수 없음"
+msgstr "%s: ì\83\89ì\9d¸ 배열을 연관 배열로 변환할 수 없음"
 
-#: arrayfunc.c:700
-#, c-format
-msgid "%s: invalid associative array key"
-msgstr "%s: 유효하지 않은 연관 배열 키"
-
-#: arrayfunc.c:702
+#: arrayfunc.c:777
 #, c-format
 msgid "%s: cannot assign to non-numeric index"
 msgstr "%s: 숫자가 아닌 인덱스에 할당할 수 없음"
 
-#: arrayfunc.c:747
+#: arrayfunc.c:822
 #, c-format
 msgid "%s: %s: must use subscript when assigning associative array"
-msgstr "%s: %s: 연관 배열을 할당하기 위해서 반드시 첨자를 사용해야 함"
+msgstr "%s: %s: 연관 배열을 할당하려면 반드시 첨자를 사용해야 함"
 
-#: bashhist.c:452
+#: bashhist.c:455
 #, c-format
 msgid "%s: cannot create: %s"
 msgstr "%s: 생성할 수 없음: %s"
 
-#: bashline.c:4310
+#: bashline.c:4479
 msgid "bash_execute_unix_command: cannot find keymap for command"
-msgstr "bash_execute_unix_command: ëª\85ë ¹ì\96´ë¥¼ ì\9c\84í\95\9c keymap을 찾을 수 없음"
+msgstr "bash_execute_unix_command: ëª\85ë ¹ì\9d\98 keymap을 찾을 수 없음"
 
-#: bashline.c:4459
+#: bashline.c:4637
 #, c-format
 msgid "%s: first non-whitespace character is not `\"'"
-msgstr "%s: 공백이 아닌 첫 문자가 '\"' 가 아님"
+msgstr "%s: 공백이 아닌 첫 문자가 `\"'가 아님"
 
-#: bashline.c:4488
+#: bashline.c:4666
 #, c-format
 msgid "no closing `%c' in %s"
-msgstr "%2$s에 닫는 '%1$c' 없음"
+msgstr "%2$s에 닫는 `%1$c' 없음"
 
-#: bashline.c:4519
+#: bashline.c:4697
 #, c-format
 msgid "%s: missing colon separator"
-msgstr "%s: 콜론(:) 구분자 없음"
+msgstr "%s: 콜론 구분자 없음"
 
-#: bashline.c:4555
-#, fuzzy, c-format
+#: bashline.c:4733
+#, c-format
 msgid "`%s': cannot unbind in command keymap"
-msgstr "'%s': unbind 할 수 없음"
+msgstr "`%s': 명령 keymap의 바인딩을 해제할 수 없음"
 
 #: braces.c:327
 #, c-format
 msgid "brace expansion: cannot allocate memory for %s"
-msgstr "괄호 확장: '%s'를 위해 메모리를 할당할 수 없음"
+msgstr "괄호 확장: %s의 메모리를 할당할 수 없음"
 
 #: braces.c:406
 #, c-format
 msgid "brace expansion: failed to allocate memory for %u elements"
-msgstr "괄호 확장: %uê°\9c ì\9a\94ì\86\8c를 ì\9c\84í\95\9c ë©\94모리 í\95 ë\8b¹ ì\8b¤í\8c¨"
+msgstr "괄호 확장: ì\9a\94ì\86\8c %uê°\9cì\97\90ì\84\9c ë©\94모리 í\95 ë\8b¹ ì\8b¤í\8c¨"
 
 #: braces.c:451
 #, c-format
 msgid "brace expansion: failed to allocate memory for `%s'"
-msgstr "괄호 확장: '%s'를 위한 메모리 할당 실패"
+msgstr "괄호 확장: `%s'의 메모리 할당 실패"
 
-#: builtins/alias.def:131 variables.c:1844
+#: builtins/alias.def:131 variables.c:1817
 #, c-format
 msgid "`%s': invalid alias name"
-msgstr "'%s': 유효하지 않은 별명"
+msgstr "`%s': 부적절한 별명"
 
 #: builtins/bind.def:122 builtins/bind.def:125
 msgid "line editing not enabled"
-msgstr "줄 편집 활성화되어있지 않음"
+msgstr "줄 편집 기능 꺼짐"
 
 #: builtins/bind.def:212
 #, c-format
 msgid "`%s': invalid keymap name"
-msgstr "'%s': 유효하지 않은 keymap 이름"
+msgstr "`%s': 부적절한 keymap 이름"
 
 #: builtins/bind.def:252
 #, c-format
 msgid "%s: cannot read: %s"
-msgstr "%s: %s 읽을 수 없음"
+msgstr "%s: %s을(를) 읽을 수 없음"
 
 #: builtins/bind.def:328 builtins/bind.def:358
 #, c-format
@@ -119,17 +116,17 @@ msgstr "`%s': 알 수 없는 함수 이름"
 #: builtins/bind.def:336
 #, c-format
 msgid "%s is not bound to any keys.\n"
-msgstr "%s 는 어느 키에도 bind 되어있지 않음.\n"
+msgstr "%s은(는) 어떤 키에도 바인딩하지 않음.\n"
 
 #: builtins/bind.def:340
 #, c-format
 msgid "%s can be invoked via "
-msgstr "%s 는 다음을 통해 호출될 수 있음 "
+msgstr "%s은(는) 다음을 통해 호출될 수 있음 "
 
 #: builtins/bind.def:378 builtins/bind.def:395
 #, c-format
 msgid "`%s': cannot unbind"
-msgstr "'%s': unbind 할 수 없음"
+msgstr "`%s': 바인딩 해제 불가"
 
 #: builtins/break.def:77 builtins/break.def:119
 msgid "loop count"
@@ -137,7 +134,7 @@ msgstr "반복 횟수"
 
 #: builtins/break.def:139
 msgid "only meaningful in a `for', `while', or `until' loop"
-msgstr "'for', 'while' 또는 'until' 반복문에서만 의미가 있음"
+msgstr "'for', 'while', 'until' 반복문에서만 의미 있음"
 
 #: builtins/caller.def:136
 msgid ""
@@ -150,27 +147,35 @@ msgid ""
 "    The value of EXPR indicates how many call frames to go back before the\n"
 "    current one; the top frame is frame 0."
 msgstr ""
+"현재 하위루틴 호출의 컨텍스트를 반환합니다.\n"
+"    \n"
+"    <표현식>을 지정하지 않으면 \"$line $filename\"을 반환합니다.\n"
+"    <표현식>을 지정하면 \"$line $subroutine $filename\"을 반환합니다.\n"
+"    추가 정보는 스택 추적을 제공할 때 활용할 수 있습니다.\n"
+"    \n"
+"    <표현식>의 값은 현재 호출 프레임에서 얼마나 뒤로 돌아가야 하는지를\n"
+"    나타냅니다. 최상단 호출 프레임은 프레임 0번입니다."
 
 #: builtins/cd.def:327
 msgid "HOME not set"
-msgstr "HOME 설정ë\90\98ì§\80 ì\95\8aì\9d\8c"
+msgstr "HOME 설정í\95\98ì§\80 ì\95\8aì\9d\8c"
 
-#: builtins/cd.def:335 builtins/common.c:161 test.c:901
+#: builtins/cd.def:335 builtins/common.c:161 test.c:916
 msgid "too many arguments"
 msgstr "인자가 너무 많음"
 
 #: builtins/cd.def:342
 msgid "null directory"
-msgstr "null 디렉토리"
+msgstr "디렉터리 값이 비어있음"
 
 #: builtins/cd.def:353
 msgid "OLDPWD not set"
-msgstr "OLDPWD 설정ë\90\98ì§\80 ì\95\8aì\9d\8c"
+msgstr "OLDPWD 설정í\95\98ì§\80 ì\95\8aì\9d\8c"
 
 #: builtins/common.c:96
 #, c-format
 msgid "line %d: "
-msgstr "%d 줄: "
+msgstr "행 %d번: "
 
 #: builtins/common.c:134 error.c:264
 #, c-format
@@ -182,7 +187,7 @@ msgstr "경고: "
 msgid "%s: usage: "
 msgstr "%s: 사용법: "
 
-#: builtins/common.c:193 shell.c:516 shell.c:844
+#: builtins/common.c:193 shell.c:524 shell.c:866
 #, c-format
 msgid "%s: option requires an argument"
 msgstr "%s: 옵션에 인자가 필요함"
@@ -190,243 +195,248 @@ msgstr "%s: 옵션에 인자가 필요함"
 #: builtins/common.c:200
 #, c-format
 msgid "%s: numeric argument required"
-msgstr "%s: 숫자로 된 인자가 필요함"
+msgstr "%s: 숫자 인자가 필요함"
 
 #: builtins/common.c:207
 #, c-format
 msgid "%s: not found"
 msgstr "%s: 찾을 수 없음"
 
-#: builtins/common.c:216 shell.c:857
+#: builtins/common.c:216 shell.c:879
 #, c-format
 msgid "%s: invalid option"
-msgstr "%s: 유효하지 않은 옵션"
+msgstr "%s: 부적절한 옵션"
 
 #: builtins/common.c:223
 #, c-format
 msgid "%s: invalid option name"
-msgstr "%s: 유효하지 않은 옵션 이름"
+msgstr "%s: 부적절한 옵션 이름"
 
-#: builtins/common.c:230 execute_cmd.c:2373 general.c:368 general.c:373
+#: builtins/common.c:230 execute_cmd.c:2402 general.c:368 general.c:373
 #, c-format
 msgid "`%s': not a valid identifier"
-msgstr "`%s': ì\9c í\9a¨í\95\9c ì\8b\9dë³\84ì\9e\90ê°\80 아님"
+msgstr "`%s': ì \81ì \88í\95\9c ì\8b\9dë³\84ì\9e\90 아님"
 
 #: builtins/common.c:240
 msgid "invalid octal number"
-msgstr "유효하지 않은 8진수"
+msgstr "부적절한 8진수"
 
 #: builtins/common.c:242
 msgid "invalid hex number"
-msgstr "유효하지 않은 16진수"
+msgstr "부적절한 16진수"
 
-#: builtins/common.c:244 expr.c:1569
+#: builtins/common.c:244 expr.c:1574
 msgid "invalid number"
-msgstr "유효하지 않은 수"
+msgstr "부적절한 숫자"
 
 #: builtins/common.c:252
 #, c-format
 msgid "%s: invalid signal specification"
-msgstr "%s: 유효하지 않은 신호 정의"
+msgstr "%s: 부적절한 시그널 정의"
 
 #: builtins/common.c:259
 #, c-format
 msgid "`%s': not a pid or valid job spec"
-msgstr "'%s': pid가 아니거나 유효한 job spec이 아님"
+msgstr "`%s': PID가 아니거나 적절한 작업 명세 없음"
 
-#: builtins/common.c:266 error.c:510
+#: builtins/common.c:266 error.c:536
 #, c-format
 msgid "%s: readonly variable"
 msgstr "%s: 읽기 전용 변수임"
 
-#: builtins/common.c:274
+#: builtins/common.c:273
+#, c-format
+msgid "%s: cannot assign"
+msgstr "%s: 할당할 수 없음"
+
+#: builtins/common.c:281
 #, c-format
 msgid "%s: %s out of range"
-msgstr "%s: %s 범위를 벗어남"
+msgstr "%s: %s이(가) 범위를 벗어남"
 
-#: builtins/common.c:274 builtins/common.c:276
+#: builtins/common.c:281 builtins/common.c:283
 msgid "argument"
 msgstr "인자"
 
-#: builtins/common.c:276
+#: builtins/common.c:283
 #, c-format
 msgid "%s out of range"
-msgstr "%s 범위를 벗어남"
+msgstr "%s이(가) 범위를 벗어남"
 
-#: builtins/common.c:284
+#: builtins/common.c:291
 #, c-format
 msgid "%s: no such job"
-msgstr "%s: ê·¸ë\9f¬í\95\9c job이 없음"
+msgstr "%s: ê·¸ë\9f° ì\9e\91ì\97\85이 없음"
 
-#: builtins/common.c:292
+#: builtins/common.c:299
 #, c-format
 msgid "%s: no job control"
-msgstr "%s: job control이 없음"
+msgstr "%s: 작업 컨트롤 없음"
 
-#: builtins/common.c:294
+#: builtins/common.c:301
 msgid "no job control"
-msgstr "job control이 없음"
+msgstr "작업 컨트롤 없음"
 
-#: builtins/common.c:304
+#: builtins/common.c:311
 #, c-format
 msgid "%s: restricted"
 msgstr "%s: 제한됨"
 
-#: builtins/common.c:306
+#: builtins/common.c:313
 msgid "restricted"
 msgstr "제한됨"
 
-#: builtins/common.c:314
+#: builtins/common.c:321
 #, c-format
 msgid "%s: not a shell builtin"
-msgstr "%s: ì\89\98 ë\82´ì\9e¥이 아님"
+msgstr "%s: ì\85¸ ë\82´ì\9e¥ ëª\85ë ¹이 아님"
 
-#: builtins/common.c:323
+#: builtins/common.c:330
 #, c-format
 msgid "write error: %s"
 msgstr "쓰기 오류: %s"
 
-#: builtins/common.c:331
+#: builtins/common.c:338
 #, c-format
 msgid "error setting terminal attributes: %s"
 msgstr "터미널 속성 설정 오류: %s"
 
-#: builtins/common.c:333
+#: builtins/common.c:340
 #, c-format
 msgid "error getting terminal attributes: %s"
 msgstr "터미널 속성 읽기 오류: %s"
 
-#: builtins/common.c:635
+#: builtins/common.c:642
 #, c-format
 msgid "%s: error retrieving current directory: %s: %s\n"
-msgstr "%s: í\98\84ì\9e¬ ë\94\94ë \89í\86 ë¦¬ë¥¼ ë°\9bì\95\84ì\98¤ë\8a\94 ë\8d° 오류 발생: %s: %s\n"
+msgstr "%s: í\98\84ì\9e¬ ë\94\94ë \89í\84°ë¦¬ ê°\80ì ¸ì\98¤ë\8a\94 ì¤\91 오류 발생: %s: %s\n"
 
-#: builtins/common.c:701 builtins/common.c:703
+#: builtins/common.c:708 builtins/common.c:710
 #, c-format
 msgid "%s: ambiguous job spec"
-msgstr "%s: 모호한 job spec"
+msgstr "%s: 모호한 작업 명세"
 
-#: builtins/common.c:964
+#: builtins/common.c:971
 msgid "help not available in this version"
-msgstr "ì\9d´ ë²\84ì \84ì\97\90ë\8a\94 ë\8f\84ì\9b\80ë§\90ì\9d´ ì\97\86ì\9d\8c"
+msgstr "ì\9d´ ë²\84ì \84ì\97\90ë\8a\94 ë\8f\84ì\9b\80ë§\90ì\9d´ ì\97\86ì\8aµë\8b\88ë\8b¤"
 
-#: builtins/common.c:1008 builtins/set.def:953 variables.c:3839
+#: builtins/common.c:1038 builtins/set.def:953 variables.c:3825
 #, c-format
 msgid "%s: cannot unset: readonly %s"
-msgstr "%s: unset할 수 없음: %s가 읽기 전용임"
+msgstr "%s: 설정 해제할 수 없음: %s이(가) 읽기 전용임"
 
-#: builtins/common.c:1013 builtins/set.def:932 variables.c:3844
+#: builtins/common.c:1043 builtins/set.def:932 variables.c:3830
 #, c-format
 msgid "%s: cannot unset"
-msgstr "%s: unset할 수 없음"
+msgstr "%s: 설정 해제할 수 없음"
 
 #: builtins/complete.def:287
 #, c-format
 msgid "%s: invalid action name"
-msgstr "%s: 유효하지 않은 액션 이름"
+msgstr "%s: 부적절한 액션 이름"
 
-#: builtins/complete.def:486 builtins/complete.def:634
-#: builtins/complete.def:865
+#: builtins/complete.def:486 builtins/complete.def:642
+#: builtins/complete.def:873
 #, c-format
 msgid "%s: no completion specification"
-msgstr "%s: 완료 사양 없음"
+msgstr "%s: 완성 명세 없음"
 
-#: builtins/complete.def:688
+#: builtins/complete.def:696
 msgid "warning: -F option may not work as you expect"
 msgstr "경고: -F 옵션이 예상대로 작동하지 않을 수 있음"
 
-#: builtins/complete.def:690
+#: builtins/complete.def:698
 msgid "warning: -C option may not work as you expect"
 msgstr "경고: -C 옵션이 예상대로 작동하지 않을 수 있음"
 
-#: builtins/complete.def:838
+#: builtins/complete.def:846
 msgid "not currently executing completion function"
-msgstr "현재 완료 함수가 실행중이 아님"
+msgstr "완성 함수를 현재 실행하고 있지 않음"
 
-#: builtins/declare.def:134
+#: builtins/declare.def:137
 msgid "can only be used in a function"
-msgstr "함수에서만 사용ë\90  ì\88\98 ì\9e\88ì\9d\8c"
+msgstr "함수에서만 사용í\95  ì\88\98 ì\9e\88ì\9d\8c"
 
-#: builtins/declare.def:363 builtins/declare.def:756
+#: builtins/declare.def:437
+msgid "cannot use `-f' to make functions"
+msgstr "함수 구성에 `-f' 옵션을 사용할 수 없음"
+
+#: builtins/declare.def:464 execute_cmd.c:6132
+#, c-format
+msgid "%s: readonly function"
+msgstr "%s: 읽기 전용 함수"
+
+#: builtins/declare.def:521 builtins/declare.def:804
 #, c-format
 msgid "%s: reference variable cannot be an array"
 msgstr "%s: 참조 변수로 배열이 올 수 없음"
 
-#: builtins/declare.def:374 variables.c:3385
+#: builtins/declare.def:532 variables.c:3359
 #, c-format
 msgid "%s: nameref variable self references not allowed"
-msgstr "%s: ì\9d´ë¦\84 ì°¸ì¡° ë³\80ì\88\98ì\9d\98 ì\9e\90ê°\80 ì°¸ì¡°ë\8a\94 í\97\88ì\9a©ë\90\98ì§\80 ì\95\8aì\9d\8c"
+msgstr "%s: ì\9d´ë¦\84 ì°¸ì¡° ë³\80ì\88\98ì\9d\98 ì\9e\90ê°\80 ì°¸ì¡°ë¥¼ í\97\88ì\9a©í\95\98ì§\80 ì\95\8aì\9d\8c"
 
-#: builtins/declare.def:379 variables.c:2104 variables.c:3304 variables.c:3312
-#: variables.c:3382
+#: builtins/declare.def:537 variables.c:2072 variables.c:3278 variables.c:3286
+#: variables.c:3356
 #, c-format
 msgid "%s: circular name reference"
 msgstr "%s: 순환 이름 참조"
 
-#: builtins/declare.def:384 builtins/declare.def:762 builtins/declare.def:773
+#: builtins/declare.def:541 builtins/declare.def:811 builtins/declare.def:820
 #, c-format
 msgid "`%s': invalid variable name for name reference"
-msgstr "'%s': 유효하지 않은 이름 참조 변수 이름"
-
-#: builtins/declare.def:514
-msgid "cannot use `-f' to make functions"
-msgstr "함수를 만들기 위해 '-f'를 사용할 수 없음"
+msgstr "`%s': 이름 참조의 부적절한 변수 이름"
 
-#: builtins/declare.def:526 execute_cmd.c:5986
-#, c-format
-msgid "%s: readonly function"
-msgstr "%s: 읽기 전용 함수임"
-
-#: builtins/declare.def:824
-#, c-format
-msgid "%s: quoted compound array assignment deprecated"
-msgstr "%s: 따옴표를 이용한 복합 배열 할당은 향후 제거될 예정임"
-
-#: builtins/declare.def:838
+#: builtins/declare.def:856
 #, c-format
 msgid "%s: cannot destroy array variables in this way"
-msgstr "%s: ì\9d´ ë°©ë²\95ì\9c¼ë¡\9c ë°°ì\97´ ë³\80ì\88\98를 í\8c\8cê´´í\95  ì\88\98 ì\97\86ì\9d\8c"
+msgstr "%s: ì\9d´ ë°©ë²\95ì\9c¼ë¡\9c ë°°ì\97´ ë³\80ì\88\98를 í\95´ì²´í\95  ì\88\98 ì\97\86ì\9d\8c"
 
-#: builtins/declare.def:845 builtins/read.def:815
+#: builtins/declare.def:862 builtins/read.def:887
 #, c-format
 msgid "%s: cannot convert associative to indexed array"
-msgstr "%s: ì°¸ì¡° ë°°ì\97´ì\9d\84 ì\9d¸ë\8d±ì\8a¤ 배열로 변환할 수 없음"
+msgstr "%s: ì°¸ì¡° ë°°ì\97´ì\9d\84 ì\83\89ì\9d¸ 배열로 변환할 수 없음"
 
-#: builtins/enable.def:143 builtins/enable.def:151
+#: builtins/declare.def:891
+#, c-format
+msgid "%s: quoted compound array assignment deprecated"
+msgstr "%s: 따옴표를 이용한 복합 배열 할당은 향후 제거 예정"
+
+#: builtins/enable.def:145 builtins/enable.def:153
 msgid "dynamic loading not available"
-msgstr "ë\8f\99ì \81 ë¡\9cë\94©ì\9d\84 ì\9d´ì\9a©í\95  ì\88\98 ì\97\86ì\9d\8c"
+msgstr "ë\8f\99ì \81 ë\88ë\9f¬ì\98¤ê¸° ë¶\88ê°\80"
 
-#: builtins/enable.def:343
+#: builtins/enable.def:376
 #, c-format
 msgid "cannot open shared object %s: %s"
-msgstr "공유 오브젝트 %s를 열 수 없음: %s"
+msgstr "%s 공유 객체를 열 수 없음: %s"
 
-#: builtins/enable.def:371
+#: builtins/enable.def:405
 #, c-format
 msgid "cannot find %s in shared object %s: %s"
-msgstr "공유 오브젝트 %2$s에서 %1$s를 찾을 수 없음: %3$s"
+msgstr "%2$s 공유 객체에서 %1$s을(를) 찾을 수 없음: %3$s"
 
-#: builtins/enable.def:388
-#, fuzzy, c-format
+#: builtins/enable.def:422
+#, c-format
 msgid "%s: dynamic builtin already loaded"
-msgstr "%s: 동적으로 로드되지 않음"
+msgstr "%s: 동적 내장 명령을 이미 불러왔습니다"
 
-#: builtins/enable.def:392
+#: builtins/enable.def:426
 #, c-format
 msgid "load function for %s returns failure (%d): not loaded"
-msgstr "%sì\97\90 ë\8c\80í\95\9c í\95¨ì\88\98 ë¡\9cë\93\9cê°\80 ì\8b¤í\8c¨ ë°\98í\99\98 (%d): ë¡\9cë\93\9cë\90\98지 않음"
+msgstr "%sì\97\90 ë\8c\80í\95\9c í\95¨ì\88\98 ë\88ë\9f¬ì\98¤ê¸° ì¤\91 ì\8b¤í\8c¨ ë°\98í\99\98 (%d): ë¶\88ë\9f¬ì\98¤지 않음"
 
-#: builtins/enable.def:517
+#: builtins/enable.def:551
 #, c-format
 msgid "%s: not dynamically loaded"
-msgstr "%s: ë\8f\99ì \81ì\9c¼ë¡\9c ë¡\9cë\93\9cë\90\98지 않음"
+msgstr "%s: ë\8f\99ì \81ì\9c¼ë¡\9c ë\88ë\9f¬ì\98¤지 않음"
 
-#: builtins/enable.def:543
+#: builtins/enable.def:577
 #, c-format
 msgid "%s: cannot delete: %s"
 msgstr "%s: 삭제할 수 없음: %s"
 
-#: builtins/evalfile.c:138 builtins/hash.def:185 execute_cmd.c:5818
+#: builtins/evalfile.c:138 builtins/hash.def:185 execute_cmd.c:5959
 #, c-format
 msgid "%s: is a directory"
 msgstr "%s: 디렉터리임"
@@ -434,17 +444,17 @@ msgstr "%s: 디렉터리임"
 #: builtins/evalfile.c:144
 #, c-format
 msgid "%s: not a regular file"
-msgstr "%s: 일반적인 파일이 아님"
+msgstr "%s: 일반 파일이 아님"
 
 #: builtins/evalfile.c:153
 #, c-format
 msgid "%s: file is too large"
 msgstr "%s: 파일이 너무 큼"
 
-#: builtins/evalfile.c:188 builtins/evalfile.c:206 shell.c:1647
+#: builtins/evalfile.c:188 builtins/evalfile.c:206 shell.c:1673
 #, c-format
 msgid "%s: cannot execute binary file"
-msgstr "%s: 바이너리 파일을 실행할 수 없음"
+msgstr "%s: 이진 파일을 실행할 수 없음"
 
 #: builtins/exec.def:158 builtins/exec.def:160 builtins/exec.def:246
 #, c-format
@@ -458,26 +468,26 @@ msgstr "로그아웃\n"
 
 #: builtins/exit.def:89
 msgid "not login shell: use `exit'"
-msgstr "ë¡\9cê·¸ì\9d¸ ì\89\98ì\9d´ ì\95\84ë\8b\98: 'exit'를 ì\82¬ì\9a©í\95\98ì\84¸ì\9a\94"
+msgstr "ë¡\9cê·¸ì\9d¸ ì\85¸ì\9d´ ì\95\84ë\8b\98: `exit'를 ì\82¬ì\9a©í\95\98ì\8b­ì\8b\9cì\98¤"
 
 #: builtins/exit.def:121
 #, c-format
 msgid "There are stopped jobs.\n"
-msgstr "정지된 job이 있습니다.\n"
+msgstr "멈춘 작업이 있습니다.\n"
 
 #: builtins/exit.def:123
 #, c-format
 msgid "There are running jobs.\n"
-msgstr "실행중인 job이 있습니다.\n"
+msgstr "실행 중인 작업이 있습니다.\n"
 
 #: builtins/fc.def:275 builtins/fc.def:373 builtins/fc.def:417
 msgid "no command found"
-msgstr "ëª\85ë ¹ì\96´ë¥¼ 찾을 수 없음"
+msgstr "ëª\85ë ¹ì\9d\84 찾을 수 없음"
 
 #: builtins/fc.def:363 builtins/fc.def:368 builtins/fc.def:407
 #: builtins/fc.def:412
 msgid "history specification"
-msgstr "히스토리 사양"
+msgstr "기록 명세"
 
 #: builtins/fc.def:444
 #, c-format
@@ -491,7 +501,7 @@ msgstr "현재"
 #: builtins/fg_bg.def:161
 #, c-format
 msgid "job %d started without job control"
-msgstr "job %d가 job control 없이 시작함"
+msgstr "작업 %d번이 작업 컨트롤 없이 시작했습니다"
 
 #: builtins/getopt.c:110
 #, c-format
@@ -501,7 +511,7 @@ msgstr "%s: 잘못된 옵션 -- %c\n"
 #: builtins/getopt.c:111
 #, c-format
 msgid "%s: option requires an argument -- %c\n"
-msgstr "%s: ì\98µì\85\98ì\9d´ ì\9d¸ì\9e\90를 í\95\84ì\9a\94ë¡\9c 함 -- %c\n"
+msgstr "%s: ì\98µì\85\98ì\97\90 ì\9d¸ì\9e\90ê°\80 í\95\84ì\9a\94함 -- %c\n"
 
 #: builtins/hash.def:91
 msgid "hashing disabled"
@@ -520,28 +530,27 @@ msgstr "hits\tcommand\n"
 #: builtins/help.def:133
 msgid "Shell commands matching keyword `"
 msgid_plural "Shell commands matching keywords `"
-msgstr[0] "ë\8b¤ì\9d\8c í\82¤ì\9b\8cë\93\9cì\97\90 ì\9d¼ì¹\98í\95\98ë\8a\94 ì\89\98 명령어 '"
+msgstr[0] "ë\8b¤ì\9d\8c í\82¤ì\9b\8cë\93\9cì\97\90 ì\9d¼ì¹\98í\95\98ë\8a\94 ì\85¸ 명령어 '"
 
 #: builtins/help.def:135
 msgid ""
 "'\n"
 "\n"
 msgstr ""
+"'\n"
+"\n"
 
 #: builtins/help.def:185
 #, c-format
-msgid ""
-"no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
-msgstr ""
-"'%s'에 해당하는 도움말 주제가 없습니다. 'man -k %s' 또는 'info %s'를 사용해 "
-"보세요."
+msgid "no help topics match `%s'.  Try `help help' or `man -k %s' or `info %s'."
+msgstr "`%s'에 해당하는 도움말 주제가 없습니다. `man -k %s' 또는 `info %s' 명령을 입력하십시오."
 
-#: builtins/help.def:224
+#: builtins/help.def:223
 #, c-format
 msgid "%s: cannot open: %s"
 msgstr "%s: 열 수 없음: %s"
 
-#: builtins/help.def:524
+#: builtins/help.def:523
 #, c-format
 msgid ""
 "These shell commands are defined internally.  Type `help' to see this list.\n"
@@ -552,34 +561,32 @@ msgid ""
 "A star (*) next to a name means that the command is disabled.\n"
 "\n"
 msgstr ""
-"이 쉘 명령어들은 내부적으로 정의되어 있습니다.  목록을 보려면 `help' 를 입력"
-"하세요.\n"
-"`help name' 을 입력하면 함수 `name' 에 대한 정보를 더 확인할 수 있습니다.\n"
-"쉘에 대한 일반적인 정보를 더 확인하려면 `info bash' 를 사용하세요.\n"
-"이 목록에 없는 명령어에 대해 더 알아보려면 `man -k' 또는 `info' 를 사용하세"
-"요.\n"
+"이 셸 명령어는 내부에 지정했습니다.  목록을 보려면 `help'를 입력하십시오.\n"
+"`help name'을 입력하면 함수 `name'의 정보를 더 확인할 수 있습니다.\n"
+"셸에 대한 일반적인 정보를 더 확인하려면 `info bash'를 사용하십시오.\n"
+"이 목록에 없는 명령어에 대해 더 알아보려면 `man -k' 또는 `info'를 사용하십시오.\n"
 "\n"
-"명령어 이름 다음의 별 (*) 은 해당 명령어가 비활성화 되었음을 의미합니다.\n"
+"명령어 이름 다음의 별(*) 표시는 해당 명령어의 비활성 상태을 의미합니다.\n"
 "\n"
 
-#: builtins/history.def:155
+#: builtins/history.def:159
 msgid "cannot use more than one of -anrw"
 msgstr "-anrw를 한 개 이상 사용할 수 없음"
 
-#: builtins/history.def:188 builtins/history.def:198 builtins/history.def:213
-#: builtins/history.def:230 builtins/history.def:242 builtins/history.def:249
+#: builtins/history.def:192 builtins/history.def:204 builtins/history.def:215
+#: builtins/history.def:228 builtins/history.def:240 builtins/history.def:247
 msgid "history position"
-msgstr "히스토리 위치"
+msgstr "기록 위치"
 
-#: builtins/history.def:340
+#: builtins/history.def:338
 #, c-format
 msgid "%s: invalid timestamp"
-msgstr "%s: 유효하지 않은 타임스탬프"
+msgstr "%s: 부적절한 타임스탬프"
 
-#: builtins/history.def:451
+#: builtins/history.def:449
 #, c-format
 msgid "%s: history expansion failed"
-msgstr "%s: 히스토리 확장 실패"
+msgstr "%s: 기록 확장 실패"
 
 #: builtins/inlib.def:71
 #, c-format
@@ -588,113 +595,113 @@ msgstr "%s: inlib 실패"
 
 #: builtins/jobs.def:109
 msgid "no other options allowed with `-x'"
-msgstr "'-x'와 다른 옵션들은 같이 사용할 수 없음"
+msgstr "`-x'와 다른 옵션을 같이 사용할 수 없음"
 
 #: builtins/kill.def:211
 #, c-format
 msgid "%s: arguments must be process or job IDs"
-msgstr "%s: 인자는 반드시 프로세스 또는 job ID이어야 함"
+msgstr "%s: 인자는 반드시 프로세스 또는 작업 ID이어야 함"
 
 #: builtins/kill.def:274
 msgid "Unknown error"
 msgstr "알 수 없는 오류"
 
-#: builtins/let.def:97 builtins/let.def:122 expr.c:639 expr.c:657
+#: builtins/let.def:97 builtins/let.def:122 expr.c:640 expr.c:658
 msgid "expression expected"
-msgstr "í\91\9cí\98\84ì\8b\9dì\9d\84 ì\98\88ì\83\81í\95¨"
+msgstr "í\91\9cí\98\84ì\8b\9dì\9d´ í\95\84ì\9a\94í\95©ë\8b\88ë\8b¤"
 
-#: builtins/mapfile.def:178
+#: builtins/mapfile.def:180
 #, c-format
 msgid "%s: not an indexed array"
-msgstr "%s: ì\9d¸ë\8d±ì\8a¤ 배열이 아님"
+msgstr "%s: ì\83\89ì\9d¸ 배열이 아님"
 
-#: builtins/mapfile.def:271 builtins/read.def:308
+#: builtins/mapfile.def:276 builtins/read.def:336
 #, c-format
 msgid "%s: invalid file descriptor specification"
-msgstr "%s: 유효하지 않은 파일 디스크립터 명세"
+msgstr "%s: 부적절한 파일 서술자 명세"
 
-#: builtins/mapfile.def:279 builtins/read.def:315
+#: builtins/mapfile.def:284 builtins/read.def:343
 #, c-format
 msgid "%d: invalid file descriptor: %s"
-msgstr "%d: 유효하지 않은 파일 디스크립터: %s"
+msgstr "%d: 부적절한 파일 서술자: %s"
 
-#: builtins/mapfile.def:288 builtins/mapfile.def:326
+#: builtins/mapfile.def:293 builtins/mapfile.def:331
 #, c-format
 msgid "%s: invalid line count"
-msgstr "%s: 유효하지 않은 줄 수"
+msgstr "%s: 부적절한 줄 수"
 
-#: builtins/mapfile.def:299
+#: builtins/mapfile.def:304
 #, c-format
 msgid "%s: invalid array origin"
-msgstr "%s: 유효하지 않은 배열의 시작"
+msgstr "%s: 부적절한 배열의 시작"
 
-#: builtins/mapfile.def:316
+#: builtins/mapfile.def:321
 #, c-format
 msgid "%s: invalid callback quantum"
-msgstr "%s: 유효하지 않은 콜백 양자"
+msgstr "%s: 부적절한 콜백 양자"
 
-#: builtins/mapfile.def:349
+#: builtins/mapfile.def:354
 msgid "empty array variable name"
 msgstr "빈 배열 변수 이름"
 
-#: builtins/mapfile.def:370
+#: builtins/mapfile.def:375
 msgid "array variable support required"
 msgstr "배열 변수 지원이 필요함"
 
-#: builtins/printf.def:419
+#: builtins/printf.def:430
 #, c-format
 msgid "`%s': missing format character"
-msgstr "'%s': 서식 문자 없음"
+msgstr "`%s': 서식 문자 없음"
 
-#: builtins/printf.def:474
+#: builtins/printf.def:485
 #, c-format
 msgid "`%c': invalid time format specification"
-msgstr "'%c': 유효하지 않은 시간 포맷 사양"
+msgstr "`%c': 부적절한 시간 포맷 사양"
 
-#: builtins/printf.def:676
+#: builtins/printf.def:708
 #, c-format
 msgid "`%c': invalid format character"
-msgstr "'%c': 유효하지 않은 서식 문자"
+msgstr "`%c': 부적절한 서식 문자"
 
-#: builtins/printf.def:702
+#: builtins/printf.def:734
 #, c-format
 msgid "warning: %s: %s"
 msgstr "경고: %s: %s"
 
-#: builtins/printf.def:788
+#: builtins/printf.def:822
 #, c-format
 msgid "format parsing problem: %s"
-msgstr "í\98\95ì\8b\9d í\8c\8cì\8b± 문제: %s"
+msgstr "í\98\95ì\8b\9d í\95´ì\84\9d 문제: %s"
 
-#: builtins/printf.def:885
+#: builtins/printf.def:919
 msgid "missing hex digit for \\x"
 msgstr "\\x에 16진수 숫자 없음"
 
-#: builtins/printf.def:900
+#: builtins/printf.def:934
 #, c-format
 msgid "missing unicode digit for \\%c"
-msgstr "\\%c에 해당하는 유니코드 문자 없음"
+msgstr "\\%c에 유니코드 문자 없음"
 
 #: builtins/pushd.def:199
 msgid "no other directory"
-msgstr "ë\8b¤ë¥¸ ë\94\94ë \89í\86 리 없음"
+msgstr "ë\8b¤ë¥¸ ë\94\94ë \89í\84°리 없음"
 
 #: builtins/pushd.def:360
 #, c-format
 msgid "%s: invalid argument"
-msgstr "%s: 유효하지 않은 인자"
+msgstr "%s: 부적절한 인자"
 
 #: builtins/pushd.def:480
 msgid "<no current directory>"
-msgstr "<í\98\84ì\9e¬ ë\94\94ë \89í\86 리 없음>"
+msgstr "<í\98\84ì\9e¬ ë\94\94ë \89í\84°리 없음>"
 
 #: builtins/pushd.def:524
 msgid "directory stack empty"
-msgstr "ë\94\94ë \89í\86 리 스택이 비어있음"
+msgstr "ë\94\94ë \89í\84°리 스택이 비어있음"
 
 #: builtins/pushd.def:526
 msgid "directory stack index"
-msgstr "ë\94\94ë \89í\86 ë¦¬ ì\8a¤í\83\9d ì\9d¸ë\8d±ì\8a¤"
+msgstr "ë\94\94ë \89í\84°ë¦¬ ì\8a¤í\83\9d ì\83\89ì\9d¸"
 
 #: builtins/pushd.def:701
 msgid ""
@@ -711,35 +718,30 @@ msgid ""
 "    \twith its position in the stack\n"
 "    \n"
 "    Arguments:\n"
-"      +N\tDisplays the Nth entry counting from the left of the list shown "
-"by\n"
+"      +N\tDisplays the Nth entry counting from the left of the list shown by\n"
 "    \tdirs when invoked without options, starting with zero.\n"
 "    \n"
-"      -N\tDisplays the Nth entry counting from the right of the list shown "
-"by\n"
+"      -N\tDisplays the Nth entry counting from the right of the list shown by\n"
 "\tdirs when invoked without options, starting with zero."
 msgstr ""
-"현재 기억된 디렉토리의 목록을 보여줍니다.  디렉토리들은\n"
-"    `pushd' ëª\85ë ¹ì\9d\84 í\86µí\95´ ëª©ë¡\9dì\97\90 ê²½ë¡\9c를 ì \80ì\9e¥í\95  ì\88\98 ì\9e\88ê³ ; 'popd' \n"
-"    ëª\85ë ¹ì\9d\84 í\86µí\95´ 거슬러 올라갈 수 있습니다.\n"
+"현재 기억한 디렉터리의 목록을 보여줍니다.  디렉터리는\n"
+"    `pushd' ëª\85ë ¹ì\9c¼ë¡\9c ëª©ë¡\9dì\97\90 ê²½ë¡\9c를 ì \80ì\9e¥í\95  ì\88\98 ì\9e\88ê³  'popd' \n"
+"    ëª\85ë ¹ì\9c¼ë¡\9c 거슬러 올라갈 수 있습니다.\n"
 "    \n"
 "    옵션:\n"
-"      -c\tì\9b\90ì\86\8c를 ì \84ë¶\80 ì\82­ì \9cí\95¨ì\9c¼ë¡\9cì\8d¨ ë\94\94ë \89í\86 리 스택을 초기화합니다\n"
-"      -l\tí\99\88 ë\94\94ë \89í\86 ë¦¬ê¹\8cì§\80 ~ë¡\9c ì¶\95ì\95½ë\90\9c 상대경로를 표시하지 않습니다\n"
-"      -p\tí\95\9c ì¤\84ì\97\90 í\95\98ë\82\98ì\94© ë\94\94ë \89í\86 리 스택을 표시합니다\n"
-"      -v\t한 줄에 하나씩 스택의 위치와 함께 디렉토리 스택을 표시합니다\n"
+"      -c\tì\9b\90ì\86\8c를 ì \84ë¶\80 ì\82­ì \9cí\95\98ì\97¬ ë\94\94ë \89í\84°리 스택을 초기화합니다\n"
+"      -l\tí\99\88 ë\94\94ë \89í\84°ë¦¬ê¹\8cì§\80 ~ ì¶\95ì\95½ 상대경로를 표시하지 않습니다\n"
+"      -p\tí\95\9c ì¤\84ì\97\90 í\95\98ë\82\98ì\94© ë\94\94ë \89í\84°리 스택을 표시합니다\n"
+"      -v\t한 줄에 하나씩 스택의 위치와 디렉터리 스택을 표시합니다\n"
 "    \n"
 "    인자:\n"
-"      +N\t인자 없이 실행될 때 보여지는 목록의 왼쪽부터 N번째 항목을 보여줍니"
-"다.\n"
-"    \t세는 수는 0부터 시작합니다.\n"
+"      +N\t인자 없이 실행할 때 dirs에서 보여주는 목록의 왼쪽부터 N번째\n"
+"    \t항목을 보여줍니다. 세는 수는 0부터 시작합니다.\n"
 "    \n"
-"      -N\t인자 없이 실행될 때 보여지는 목록의 오른쪽부터 N번째 항목을 보여줍"
-"니다.\n"
-"\t세는 수는 0부터 시작합니다."
+"      -N\t인자 없이 실행할 때 dirs에서 보여주는 목록의 오른쪽부터 N번째\n"
+"   \t 항목을 보여줍니다. 세는 수는 0부터 시작합니다."
 
 #: builtins/pushd.def:723
-#, fuzzy
 msgid ""
 "Adds a directory to the top of the directory stack, or rotates\n"
 "    the stack, making the new top of the stack the current working\n"
@@ -763,30 +765,27 @@ msgid ""
 "    \n"
 "    The `dirs' builtin displays the directory stack."
 msgstr ""
-"ë\94\94ë \89í\86 ë¦¬ ì\8a¤í\83\9dì\9d\98 ìµ\9cì\83\81ì\9c\84ì\97\90 ë\94\94ë \89í\86 리를 추가하거나 스택을 회전\n"
-"    í\95\98ê±°ë\82\98, í\98\84ì\9e¬ ì\9e\91ì\97\85ì¤\91ì\9d¸ ë\94\94ë \89í\86 리에서 스택의 새 최상위를 \n"
-"    ë§\8cë\93­ë\8b\88ë\8b¤.  ì\9d¸ì\9e\90ê°\80 ì\97\86ë\8b¤ë©´ ì\83\81ì\9c\84 ë\91\90 ë\94\94ë \89í\86 리를 교환합니다.\n"
+"ë\94\94ë \89í\84°ë¦¬ ì\8a¤í\83\9dì\9d\98 ìµ\9cì\83\81ì\9c\84ì\97\90 ë\94\94ë \89í\84°리를 추가하거나 스택을 회전\n"
+"    í\95\98ê±°ë\82\98, í\98\84ì\9e¬ ì\9e\91ì\97\85ì¤\91ì\9d¸ ë\94\94ë \89í\84°리에서 스택의 새 최상위를 \n"
+"    ë§\8cë\93­ë\8b\88ë\8b¤.  ì\9d¸ì\9e\90ê°\80 ì\97\86ë\8b¤ë©´ ì\83\81ì\9c\84 ë\91\90 ë\94\94ë \89í\84°리를 교환합니다.\n"
 "    \n"
 "    옵션:\n"
-"      -n\tSuppresses the normal change of directory when adding\n"
-"    \tdirectories to the stack, so only the stack is manipulated.\n"
+"      -n\t스택에 디렉터리를 추가할 때 디렉터리 일반 변경 동작을\n"
+"    \t억제해서 스택만 바뀌게 합니다.\n"
 "    \n"
-"    Arguments:\n"
-"      +N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the left of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
+"    인자:\n"
+"      +N\tN번째 디렉터리가 최상단이 되도록(0부터 시작해서\n"
+"    \t`dirs' 내장 명령 목록 왼쪽부터 갯수를 셈) 스택을 뒤집습니다.\n"
 "    \n"
-"      -N\tRotates the stack so that the Nth directory (counting\n"
-"    \tfrom the right of the list shown by `dirs', starting with\n"
-"    \tzero) is at the top.\n"
+"      -N\tN 번째 디렉터리가 최상단이 되도록(0부터 시작해서\n"
+"    \t`dirs' 내장 명령 목록 오른쪽부터 갯수를 셈) 스택을 뒤집습니다.\n"
 "    \n"
-"      dir\tAdds DIR to the directory stack at the top, making it the\n"
-"    \tnew current working directory.\n"
+"      dir\t새 현재 작업 디렉터리로 만들 DIR을 상단 디렉터리\n"
+"    \t 스택에 추가합니다.\n"
 "    \n"
-"    `dirs' 내장은 디렉토리 스택을 보여줍니다."
+"    `dirs' 내장 명령은 디렉터리 스택을 보여줍니다."
 
 #: builtins/pushd.def:748
-#, fuzzy
 msgid ""
 "Removes entries from the directory stack.  With no arguments, removes\n"
 "    the top directory from the stack, and changes to the new top directory.\n"
@@ -806,43 +805,43 @@ msgid ""
 "    \n"
 "    The `dirs' builtin displays the directory stack."
 msgstr ""
-"ë\94\94ë \89í\86 리 스택에서 항목을 제거합니다.  주어진 인자가 없을 경우\n"
-"    ìµ\9cì\83\81ì\9c\84 ë\94\94ë \89í\86 ë¦¬ë¥¼ ì\8a¤í\83\9dì\97\90ì\84\9c ì \9cê±°í\95\98ê³  ì\83\88 ìµ\9cì\83\81ì\9c\84 ë\94\94ë \89í\86 리로 변경합니다.\n"
+"ë\94\94ë \89í\84°리 스택에서 항목을 제거합니다.  주어진 인자가 없을 경우\n"
+"    ìµ\9cì\83\81ì\9c\84 ë\94\94ë \89í\84°ë¦¬ë¥¼ ì\8a¤í\83\9dì\97\90ì\84\9c ì \9cê±°í\95\98ê³  ì\83\88 ìµ\9cì\83\81ì\9c\84 ë\94\94ë \89í\84°리로 변경합니다.\n"
 "    \n"
 "    옵션:\n"
-"      -n\tSuppresses the normal change of directory when removing\n"
-"    \tdirectories from the stack, so only the stack is manipulated.\n"
+"      -n\t스택에 디렉터리를 제거할 때 디렉터리 일반 변경 동작을\n"
+"    \t억제해서 스택만 바뀌게 합니다.\n"
 "    \n"
-"    Arguments:\n"
-"      +N\tRemoves the Nth entry counting from the left of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd +0'\n"
-"    \tremoves the first directory, `popd +1' the second.\n"
+"    인자:\n"
+"      +N\t0부터 시작해서 `dirs' 내장 명령 목록 왼쪽부터 갯수를 세어\n"
+"    \tN번째 항목을 제거합니다. 예: `popd +0'는 첫번째 디렉터리를, \n"
+"    \t`popd +1'는 두번째 디렉터리를 제거합니다.\n"
 "    \n"
-"      -N\tRemoves the Nth entry counting from the right of the list\n"
-"    \tshown by `dirs', starting with zero.  For example: `popd -0'\n"
-"    \tremoves the last directory, `popd -1' the next to last.\n"
+"      -N\t0부터 시작해서 `dirs' 내장 명령 목록 오른쪽부터 갯수를 세어\n"
+"    \tN번째 항목을 제거합니다. 예: `popd -0'는 마지막 디렉터리를, \n"
+"    \t`popd -1'는 마지막의 그 전 디렉터리를 제거합니다.\n"
 "    \n"
-"    The `dirs' builtin displays the directory stack."
+"    `dirs' 내장 명령은 디렉터리 스택을 나타냅니다."
 
-#: builtins/read.def:280
+#: builtins/read.def:308
 #, c-format
 msgid "%s: invalid timeout specification"
-msgstr "%s: 유효하지 않은 타임아웃 정의"
+msgstr "%s: 부적절한 타임아웃 정의"
 
-#: builtins/read.def:755
+#: builtins/read.def:827
 #, c-format
 msgid "read error: %d: %s"
 msgstr "읽기 오류: %d: %s"
 
 #: builtins/return.def:68
 msgid "can only `return' from a function or sourced script"
-msgstr "í\95¨ì\88\98 ë\98\90ë\8a\94 ì\86\8cì\8a¤ë\90\9c 스크립트에서만 'return' 할 수 있음"
+msgstr "í\95¨ì\88\98 ë\98\90ë\8a\94 ì\9b\90본 ì°¸ì¡° 스크립트에서만 'return' 할 수 있음"
 
 #: builtins/set.def:869
 msgid "cannot simultaneously unset a function and a variable"
-msgstr "함수와 변수를 동시에 unset할 수 없음"
+msgstr "함수와 변수를 동시에 설정 해제할 수 없음"
 
-#: builtins/set.def:966
+#: builtins/set.def:969
 #, c-format
 msgid "%s: not an array variable"
 msgstr "%s: 배열 변수가 아님"
@@ -855,20 +854,20 @@ msgstr "%s: 함수가 아님"
 #: builtins/setattr.def:194
 #, c-format
 msgid "%s: cannot export"
-msgstr "%s: export할 수 없음"
+msgstr "%s: 환경으로 내보낼 수 없음"
 
 #: builtins/shift.def:72 builtins/shift.def:79
 msgid "shift count"
 msgstr "시프트 횟수"
 
-#: builtins/shopt.def:310
+#: builtins/shopt.def:323
 msgid "cannot set and unset shell options simultaneously"
-msgstr "ì\89\98 ì\98µì\85\98ì\9d\84 ë\8f\99ì\8b\9cì\97\90 set í\95\98ê³  unset 할 수 없음"
+msgstr "ì\85¸ ì\98µì\85\98ì\9d\84 ë\8f\99ì\8b\9cì\97\90 ì\84¤ì \95 ë°\8f ì\84¤ì \95 í\95´ì \9c할 수 없음"
 
-#: builtins/shopt.def:428
+#: builtins/shopt.def:444
 #, c-format
 msgid "%s: invalid shell option name"
-msgstr "%s: 유효하지 않은 쉘 옵션 이름"
+msgstr "%s: 부적절한 셸 옵션 이름"
 
 #: builtins/source.def:128
 msgid "filename argument required"
@@ -885,66 +884,66 @@ msgstr "일시 정지할 수 없음"
 
 #: builtins/suspend.def:112
 msgid "cannot suspend a login shell"
-msgstr "ë¡\9cê·¸ì\9d¸ ì\89\98을 일시 정지할 수 없음"
+msgstr "ë¡\9cê·¸ì\9d¸ ì\85¸을 일시 정지할 수 없음"
 
 #: builtins/type.def:235
 #, c-format
 msgid "%s is aliased to `%s'\n"
-msgstr "%s는 '%s'의 별칭임\n"
+msgstr "%s은(는) `%s'의 별칭임\n"
 
 #: builtins/type.def:256
 #, c-format
 msgid "%s is a shell keyword\n"
-msgstr "%s 는 쉘 키워드임\n"
+msgstr "%s은(는) 셸 키워드임\n"
 
 #: builtins/type.def:275
 #, c-format
 msgid "%s is a function\n"
-msgstr "%s 는 함수임\n"
+msgstr "%s은(는) 함수임\n"
 
 #: builtins/type.def:299
 #, c-format
 msgid "%s is a special shell builtin\n"
-msgstr "%s 는 특수한 쉘 내장임\n"
+msgstr "%s은(는) 특수 셸 내장 명령임\n"
 
 #: builtins/type.def:301
 #, c-format
 msgid "%s is a shell builtin\n"
-msgstr "%s 는 쉘 내장임\n"
+msgstr "%s은(는) 셸 내장임\n"
 
 #: builtins/type.def:323 builtins/type.def:408
 #, c-format
 msgid "%s is %s\n"
-msgstr "%s 는 %s 임\n"
+msgstr "%s은(는) %s 임\n"
 
 #: builtins/type.def:343
 #, c-format
 msgid "%s is hashed (%s)\n"
-msgstr "%s 는 해시됨 (%s)\n"
+msgstr "%s은(는) 해시됨 (%s)\n"
 
 #: builtins/ulimit.def:400
 #, c-format
 msgid "%s: invalid limit argument"
-msgstr "%s: 유효하지 않은 제한 인자"
+msgstr "%s: 부적절한 제한 인자"
 
 #: builtins/ulimit.def:426
 #, c-format
 msgid "`%c': bad command"
-msgstr "'%c': 잘못된 명령어"
+msgstr "`%c': 잘못된 명령어"
 
-#: builtins/ulimit.def:455
+#: builtins/ulimit.def:464
 #, c-format
 msgid "%s: cannot get limit: %s"
 msgstr "%s: 제한을 읽을 수 없음: %s"
 
-#: builtins/ulimit.def:481
+#: builtins/ulimit.def:490
 msgid "limit"
 msgstr "제한"
 
-#: builtins/ulimit.def:493 builtins/ulimit.def:793
+#: builtins/ulimit.def:502 builtins/ulimit.def:802
 #, c-format
 msgid "%s: cannot modify limit: %s"
-msgstr "%s: ì \9cí\95\9cì\9d\84 ë³\80ê²½í\95  수 없음: %s"
+msgstr "%s: ì \9cí\95\9cì\9d\84 ë°\94ê¿\80 수 없음: %s"
 
 #: builtins/umask.def:115
 msgid "octal number"
@@ -953,14 +952,14 @@ msgstr "8진수"
 #: builtins/umask.def:232
 #, c-format
 msgid "`%c': invalid symbolic mode operator"
-msgstr "'%c': 유효하지 않은 심볼릭 모드 연산자"
+msgstr "`%c': 부적절한 심볼릭 모드 연산자"
 
 #: builtins/umask.def:287
 #, c-format
 msgid "`%c': invalid symbolic mode character"
-msgstr "'%c': 유효하지 않은 심볼릭 모드 문자"
+msgstr "`%c': 부적절한 심볼릭 모드 문자"
 
-#: error.c:89 error.c:347 error.c:349 error.c:351
+#: error.c:89 error.c:373 error.c:375 error.c:377
 msgid " line "
 msgstr " 줄 "
 
@@ -980,359 +979,368 @@ msgstr "취소중..."
 msgid "INFORM: "
 msgstr "정보: "
 
-#: error.c:462
+#: error.c:310
+#, c-format
+msgid "DEBUG warning: "
+msgstr "디버깅 경고: "
+
+#: error.c:488
 msgid "unknown command error"
-msgstr "알 수 없는 명령 오류"
+msgstr "알 수 없는 명령 오류"
 
-#: error.c:463
+#: error.c:489
 msgid "bad command type"
-msgstr "잘못된 명령어 타입"
+msgstr "잘못된 명령 형식"
 
-#: error.c:464
+#: error.c:490
 msgid "bad connector"
 msgstr "잘못된 커넥터"
 
-#: error.c:465
+#: error.c:491
 msgid "bad jump"
 msgstr "잘못된 점프"
 
-#: error.c:503
+#: error.c:529
 #, c-format
 msgid "%s: unbound variable"
-msgstr "%s: í\95´ì \9cë\90\9c ë³\80ì\88\98"
+msgstr "%s: ë°\94ì\9d¸ë\94© í\95´ì \9cí\95\9c ë³\80ì\88\98"
 
-#: eval.c:242
+#: eval.c:243
 msgid "\atimed out waiting for input: auto-logout\n"
 msgstr "\a입력 대기중 시간 초과: 자동으로 로그아웃\n"
 
-#: execute_cmd.c:537
+#: execute_cmd.c:555
 #, c-format
 msgid "cannot redirect standard input from /dev/null: %s"
-msgstr "í\91\9cì¤\80 ì\9e\85ë ¥ì\9d\84 /dev/nullì\97\90ì\84\9c ë¦¬ë\8b¤ì\9d´ë \89í\8a¸ 할 수 없음: %s"
+msgstr "í\91\9cì¤\80 ì\9e\85ë ¥ì\9d\84 /dev/nullì\97\90ì\84\9c ë°©í\96¥ì\9e¬ì§\80ì \95 ì²\98리할 수 없음: %s"
 
-#: execute_cmd.c:1297
+#: execute_cmd.c:1317
 #, c-format
 msgid "TIMEFORMAT: `%c': invalid format character"
-msgstr "TIMEFORMAT: `%c': 유효하지 않은 서식 문자"
+msgstr "TIMEFORMAT: `%c': 부적절한 서식 문자"
 
-#: execute_cmd.c:2362
+#: execute_cmd.c:2391
 #, c-format
 msgid "execute_coproc: coproc [%d:%s] still exists"
 msgstr "execute_coproc: coproc [%d:%s] 가 여전히 존재"
 
-#: execute_cmd.c:2486
+#: execute_cmd.c:2524
 msgid "pipe error"
 msgstr "파이프 오류"
 
-#: execute_cmd.c:4793
+#: execute_cmd.c:4923
 #, c-format
 msgid "eval: maximum eval nesting level exceeded (%d)"
 msgstr "eval: 최대 eval 중첩 레벨 초과 (%d)"
 
-#: execute_cmd.c:4805
+#: execute_cmd.c:4935
 #, c-format
 msgid "%s: maximum source nesting level exceeded (%d)"
 msgstr "%s: 최대 소스 중첩 레벨 초과 (%d)"
 
-#: execute_cmd.c:4913
+#: execute_cmd.c:5043
 #, c-format
 msgid "%s: maximum function nesting level exceeded (%d)"
 msgstr "%s: 최대 함수 중첩 레벨 초과 (%d)"
 
-#: execute_cmd.c:5467
+#: execute_cmd.c:5598
 #, c-format
 msgid "%s: restricted: cannot specify `/' in command names"
 msgstr "%s: 제한됨: 명령 이름에 '/'를 지정할 수 없음"
 
-#: execute_cmd.c:5574
+#: execute_cmd.c:5715
 #, c-format
 msgid "%s: command not found"
 msgstr "%s: 명령어를 찾을 수 없음"
 
-#: execute_cmd.c:5816
+#: execute_cmd.c:5957
 #, c-format
 msgid "%s: %s"
 msgstr "%s: %s"
 
-#: execute_cmd.c:5854
+#: execute_cmd.c:5975
+#, c-format
+msgid "%s: cannot execute: required file not found"
+msgstr "%s: 실행할 수 없음: 필요한 파일이 없습니다"
+
+#: execute_cmd.c:6000
 #, c-format
 msgid "%s: %s: bad interpreter"
 msgstr "%s: %s: 잘못된 인터프리터"
 
-#: execute_cmd.c:5891
+#: execute_cmd.c:6037
 #, c-format
 msgid "%s: cannot execute binary file: %s"
 msgstr "%s: 이진 파일을 실행할 수 없음: %s"
 
-#: execute_cmd.c:5977
+#: execute_cmd.c:6123
 #, c-format
 msgid "`%s': is a special builtin"
-msgstr "'%s': 특수한 내장 명령임"
+msgstr "`%s': 특수한 내장 명령임"
 
-#: execute_cmd.c:6029
+#: execute_cmd.c:6175
 #, c-format
 msgid "cannot duplicate fd %d to fd %d"
-msgstr "fd %d를 fd %d로 복제할 수 없음"
+msgstr "파일 서술자 %d번을 파일 서술자 %d번으로 복제할 수 없음"
 
 #: expr.c:263
 msgid "expression recursion level exceeded"
-msgstr "표현식 재귀 레벨 초과"
+msgstr "표현식 재귀 레벨 초과"
 
 #: expr.c:291
 msgid "recursion stack underflow"
 msgstr "재귀 스택 언더플로우"
 
-#: expr.c:477
+#: expr.c:478
 msgid "syntax error in expression"
 msgstr "표현식 문법 오류"
 
-#: expr.c:521
+#: expr.c:522
 msgid "attempted assignment to non-variable"
-msgstr "ë³\80ì\88\98ê°\80 ì\95\84ë\8b\8c ê²\83ì\97\90 í\95 ë\8b¹ì\9d\84 ì\8b\9cë\8f\84í\95¨"
+msgstr "ë¹\84 ë³\80ì\88\98ì\97\90 í\95 ë\8b¹ ì\8b\9cë\8f\84"
 
-#: expr.c:530
+#: expr.c:531
 msgid "syntax error in variable assignment"
 msgstr "변수 할당 문법 오류"
 
-#: expr.c:544 expr.c:911
+#: expr.c:545 expr.c:912
 msgid "division by 0"
 msgstr "0으로 나눔"
 
-#: expr.c:592
+#: expr.c:593
 msgid "bug: bad expassign token"
 msgstr "버그: 잘못된 표현식 토큰"
 
-#: expr.c:646
+#: expr.c:647
 msgid "`:' expected for conditional expression"
-msgstr "조건문에 ':' 예상함"
+msgstr "조건문에 ':' 필요함"
 
-#: expr.c:972
+#: expr.c:973
 msgid "exponent less than 0"
 msgstr "지수가 0보다 작음"
 
-#: expr.c:1029
+#: expr.c:1030
 msgid "identifier expected after pre-increment or pre-decrement"
-msgstr "전위 증가 또는 후위 감소 후에 식별자를 예상함"
+msgstr "전위 증가 또는 후위 감소 후에 식별자가 필요함"
 
-#: expr.c:1056
+#: expr.c:1057
 msgid "missing `)'"
 msgstr "')' 빠짐"
 
-#: expr.c:1107 expr.c:1487
+#: expr.c:1108 expr.c:1492
 msgid "syntax error: operand expected"
-msgstr "문법 오류: 피연산자 예상함"
+msgstr "문법 오류: 피연산자 필요함"
 
-#: expr.c:1489
+#: expr.c:1494
 msgid "syntax error: invalid arithmetic operator"
-msgstr "문법 오류: 유효하지 않은 산술 연산자"
+msgstr "문법 오류: 부적절한 산술 연산자"
 
-#: expr.c:1513
+#: expr.c:1518
 #, c-format
 msgid "%s%s%s: %s (error token is \"%s\")"
 msgstr "%s%s%s: %s (오류 토큰은 \"%s\" 임)"
 
-#: expr.c:1573
+#: expr.c:1578
 msgid "invalid arithmetic base"
-msgstr "유효하지 않은 진법"
+msgstr "부적절한 진법"
 
-#: expr.c:1582
-#, fuzzy
+#: expr.c:1587
 msgid "invalid integer constant"
-msgstr "%s: 유효하지 않은 줄 수"
+msgstr "부적절한 정수 상수"
 
-#: expr.c:1598
+#: expr.c:1603
 msgid "value too great for base"
 msgstr "해당 진법에서 표현할 수 없는 값"
 
-#: expr.c:1647
+#: expr.c:1652
 #, c-format
 msgid "%s: expression error\n"
 msgstr "%s: 표현식 오류\n"
 
 #: general.c:70
 msgid "getcwd: cannot access parent directories"
-msgstr "getcwd: 부모 디렉터리에 접근할 수 없음"
+msgstr "getcwd: 상위 디렉터리에 접근할 수 없음"
 
-#: input.c:99 subst.c:6069
+#: input.c:99 subst.c:6208
 #, c-format
 msgid "cannot reset nodelay mode for fd %d"
-msgstr "fd %d에 대해 nodelay 모드를 재설정 할 수 없음"
+msgstr "파일 서술자 %d번에 nodelay 모드를 초기화할 수 없음"
 
 #: input.c:266
 #, c-format
 msgid "cannot allocate new file descriptor for bash input from fd %d"
-msgstr "fd %d에서 bash 입력을 위한 새 파일 디스크립터를 할당할 수 없음"
+msgstr "파일 서술자 %d번에서 bash 입력용 새 파일 서술자를 할당할 수 없음"
 
 #: input.c:274
 #, c-format
 msgid "save_bash_input: buffer already exists for new fd %d"
-msgstr "save_bash_input: 새로운 fd %d를 위한 버퍼가 이미 존재함"
+msgstr "save_bash_input: 새 파일 서술자 %d번의 버퍼가 이미 존재함"
 
 #: jobs.c:543
 msgid "start_pipeline: pgrp pipe"
 msgstr "start_pipeline: pgrp pipe"
 
-#: jobs.c:906
+#: jobs.c:907
 #, c-format
 msgid "bgp_delete: LOOP: psi (%d) == storage[psi].bucket_next"
-msgstr ""
+msgstr "bgp_delete: LOOP: psi (%d) == storage[psi].bucket_next"
 
-#: jobs.c:959
+#: jobs.c:960
 #, c-format
 msgid "bgp_search: LOOP: psi (%d) == storage[psi].bucket_next"
-msgstr ""
+msgstr "bgp_search: LOOP: psi (%d) == storage[psi].bucket_next"
 
-#: jobs.c:1283
+#: jobs.c:1279
 #, c-format
 msgid "forked pid %d appears in running job %d"
-msgstr "포크된 pid %d가 실행중인 job %d에 나타남"
+msgstr "포크한 PID %d번이 실행중인 작업 %d에 나타남"
 
-#: jobs.c:1402
+#: jobs.c:1397
 #, c-format
 msgid "deleting stopped job %d with process group %ld"
-msgstr "프로세스 그룹 %2$ld의 정지된 작업 %1$d 를 삭제중"
+msgstr "프로세스 그룹 %2$ld번의 멈춘 작업 %1$d번을 삭제중"
 
-#: jobs.c:1511
+#: jobs.c:1502
 #, c-format
 msgid "add_process: pid %5ld (%s) marked as still alive"
-msgstr "add_process: pid %5ld (%s) ê°\80 í\98\84ì\9e¬ë\8f\84 ì\82´ì\95\84ì\9e\88ë\8b¤ê³  í\91\9cì\8b\9cë\90¨"
+msgstr "add_process: pid %5ld (%s)ì\9d´(ê°\80) ì\97¬ì \84í\9e\88 ì\82´ì\95\84ì\9e\88ë\8b¤ê³  ë\82\98í\83\80ë\82¨"
 
-#: jobs.c:1850
+#: jobs.c:1839
 #, c-format
 msgid "describe_pid: %ld: no such pid"
 msgstr "describe_pid: %ld: 그런 pid가 없음"
 
-#: jobs.c:1865
+#: jobs.c:1854
 #, c-format
 msgid "Signal %d"
-msgstr "ì\8b í\98¸ %d"
+msgstr "ì\8b\9cê·¸ë\84\90 %dë²\88"
 
-#: jobs.c:1879 jobs.c:1905
+#: jobs.c:1868 jobs.c:1894
 msgid "Done"
 msgstr "완료"
 
-#: jobs.c:1884 siglist.c:122
+#: jobs.c:1873 siglist.c:123
 msgid "Stopped"
 msgstr "멈춤"
 
-#: jobs.c:1888
+#: jobs.c:1877
 #, c-format
 msgid "Stopped(%s)"
 msgstr "멈춤(%s)"
 
-#: jobs.c:1892
+#: jobs.c:1881
 msgid "Running"
 msgstr "실행중"
 
-#: jobs.c:1909
+#: jobs.c:1898
 #, c-format
 msgid "Done(%d)"
 msgstr "완료(%d)"
 
-#: jobs.c:1911
+#: jobs.c:1900
 #, c-format
 msgid "Exit %d"
 msgstr "나감 %d"
 
-#: jobs.c:1914
+#: jobs.c:1903
 msgid "Unknown status"
 msgstr "알 수 없는 상태"
 
-#: jobs.c:2001
+#: jobs.c:1990
 #, c-format
 msgid "(core dumped) "
 msgstr "(코어 덤프됨) "
 
-#: jobs.c:2020
+#: jobs.c:2009
 #, c-format
 msgid "  (wd: %s)"
 msgstr "  (wd: %s)"
 
-#: jobs.c:2259
+#: jobs.c:2250
 #, c-format
 msgid "child setpgid (%ld to %ld)"
-msgstr "child setpgid (%ld 에서 %ld 로)"
+msgstr "child setpgid (%ld에서 %ld(으)로)"
 
-#: jobs.c:2617 nojobs.c:664
+#: jobs.c:2608 nojobs.c:666
 #, c-format
 msgid "wait: pid %ld is not a child of this shell"
-msgstr "wait: pid %ldë\8a\94 ì\9d´ ì\89\98의 자식이 아님"
+msgstr "wait: pid %ldë²\88ì\9d\80 ì\9d´ ì\85¸의 자식이 아님"
 
-#: jobs.c:2893
+#: jobs.c:2884
 #, c-format
 msgid "wait_for: No record of process %ld"
-msgstr "wait_for: 프로세스 %ld에 대한 기록 없음"
+msgstr "wait_for: 프로세스 %ld번의 기록 없음"
 
-#: jobs.c:3236
+#: jobs.c:3223
 #, c-format
 msgid "wait_for_job: job %d is stopped"
-msgstr "wait_for_job: job %d 은 정지됨"
+msgstr "wait_for_job: 작업 %d번이 멈춤"
 
-#: jobs.c:3564
-#, fuzzy, c-format
+#: jobs.c:3551
+#, c-format
 msgid "%s: no current jobs"
-msgstr "%s: 그러한 job이 없음"
+msgstr "%s: 현재 작업이 없음"
 
-#: jobs.c:3571
+#: jobs.c:3558
 #, c-format
 msgid "%s: job has terminated"
 msgstr "%s: 작업이 종료됨"
 
-#: jobs.c:3580
+#: jobs.c:3567
 #, c-format
 msgid "%s: job %d already in background"
-msgstr "%s: job %d는 이미 백그라운드에 있음"
+msgstr "%s: 작업 %d번은 이미 백그라운드에 있음"
 
-#: jobs.c:3806
+#: jobs.c:3793
 msgid "waitchld: turning on WNOHANG to avoid indefinite block"
-msgstr "waitchld: 정의되지 않은 블록을 피하기 위해 WNOHANG를 켜는 중"
+msgstr "waitchld: 미지정 차단 동작 회피 목적으로 WNOHANG를 켜는 중"
 
-#: jobs.c:4320
+#: jobs.c:4307
 #, c-format
 msgid "%s: line %d: "
 msgstr "%s: 줄 %d: "
 
-#: jobs.c:4334 nojobs.c:919
+#: jobs.c:4321 nojobs.c:921
 #, c-format
 msgid " (core dumped)"
 msgstr " (코어 덤프됨)"
 
-#: jobs.c:4346 jobs.c:4359
+#: jobs.c:4333 jobs.c:4346
 #, c-format
 msgid "(wd now: %s)\n"
 msgstr "(wd now: %s)\n"
 
-#: jobs.c:4391
+#: jobs.c:4378
 msgid "initialize_job_control: getpgrp failed"
 msgstr "initialize_job_control: getpgrp 실패"
 
-#: jobs.c:4447
+#: jobs.c:4434
 msgid "initialize_job_control: no job control in background"
-msgstr "initialize_job_control: 백그라운드에 job control 없음"
+msgstr "initialize_job_control: 백그라운드에 작업 컨트롤 없음"
 
-#: jobs.c:4463
+#: jobs.c:4450
 msgid "initialize_job_control: line discipline"
-msgstr "initialize_job_control: line discipline"
+msgstr "initialize_job_control: 라인 제어"
 
-#: jobs.c:4473
+#: jobs.c:4460
 msgid "initialize_job_control: setpgid"
 msgstr "initialize_job_control: setpgid"
 
-#: jobs.c:4494 jobs.c:4503
+#: jobs.c:4481 jobs.c:4490
 #, c-format
 msgid "cannot set terminal process group (%d)"
-msgstr "터미털 프로세스 그룹 (%d)을 설정할 수 없음"
+msgstr "터미털 프로세스 그룹(%d)을 설정할 수 없음"
 
-#: jobs.c:4508
+#: jobs.c:4495
 msgid "no job control in this shell"
-msgstr "ì\9d´ ì\89\98ì\97\90 job control 없음"
+msgstr "ì\9d´ ì\85¸ì\97\90 ì\9e\91ì\97\85 ì \9cì\96´ 없음"
 
-#: lib/malloc/malloc.c:353
+#: lib/malloc/malloc.c:367
 #, c-format
 msgid "malloc: failed assertion: %s\n"
 msgstr "malloc: assertion 실패: %s\n"
 
-#: lib/malloc/malloc.c:369
+#: lib/malloc/malloc.c:383
 #, c-format
 msgid ""
 "\r\n"
@@ -1341,70 +1349,68 @@ msgstr ""
 "\r\n"
 "malloc: %s:%d: assertion 망가짐\r\n"
 
-#: lib/malloc/malloc.c:370 lib/malloc/malloc.c:933
+#: lib/malloc/malloc.c:384 lib/malloc/malloc.c:941
 msgid "unknown"
 msgstr "알 수 없음"
 
-#: lib/malloc/malloc.c:882
+#: lib/malloc/malloc.c:892
 msgid "malloc: block on free list clobbered"
-msgstr "malloc: block on free list clobbered"
+msgstr "malloc: 해제 목록 처리중 중단"
 
-#: lib/malloc/malloc.c:972
+#: lib/malloc/malloc.c:980
 msgid "free: called with already freed block argument"
 msgstr "free: 이미 해제된 블록 인자를 가지고 호출됨"
 
-#: lib/malloc/malloc.c:975
+#: lib/malloc/malloc.c:983
 msgid "free: called with unallocated block argument"
 msgstr "free: 할당되지 않은 블록 인자와 호출됨"
 
-#: lib/malloc/malloc.c:994
+#: lib/malloc/malloc.c:1001
 msgid "free: underflow detected; mh_nbytes out of range"
-msgstr "free: 언더플로우 감지; mh_nbytes가 범위를 벗어남"
+msgstr "free: 언더플로우 감지! mh_nbytes가 범위를 벗어남"
 
-#: lib/malloc/malloc.c:1001
-#, fuzzy
+#: lib/malloc/malloc.c:1007
 msgid "free: underflow detected; magic8 corrupted"
-msgstr "free: 언더플로우 감지; mh_nbytes가 범위를 벗어남"
+msgstr "free: 언더플로우 감지! magic8 손상"
 
-#: lib/malloc/malloc.c:1009
+#: lib/malloc/malloc.c:1014
 msgid "free: start and end chunk sizes differ"
 msgstr "free: 시작과 끝의 청크 사이즈가 다름"
 
-#: lib/malloc/malloc.c:1119
+#: lib/malloc/malloc.c:1176
 msgid "realloc: called with unallocated block argument"
 msgstr "realloc: 할당되지 않은 블록 인자를 가지고 호출됨"
 
-#: lib/malloc/malloc.c:1134
+#: lib/malloc/malloc.c:1191
 msgid "realloc: underflow detected; mh_nbytes out of range"
-msgstr "realloc: 언더플로우 감지; mh_nbytes가 범위를 벗어남"
+msgstr "realloc: 언더플로우 감지! mh_nbytes가 범위를 벗어남"
 
-#: lib/malloc/malloc.c:1141
-#, fuzzy
+#: lib/malloc/malloc.c:1197
 msgid "realloc: underflow detected; magic8 corrupted"
-msgstr "realloc: 언더플로우 감지; mh_nbytes가 범위를 벗어남"
+msgstr "realloc: 언더플로우 감지! magic8 손상"
 
-#: lib/malloc/malloc.c:1150
+#: lib/malloc/malloc.c:1205
 msgid "realloc: start and end chunk sizes differ"
 msgstr "realloc: 시작과 끝의 청크 사이즈가 다름"
 
 #: lib/malloc/table.c:191
 #, c-format
 msgid "register_alloc: alloc table is full with FIND_ALLOC?\n"
-msgstr "register_alloc: FIND_ALLOC이 할당 테이블이 가득 찼다고 함?\n"
+msgstr "register_alloc: FIND_ALLOC이 할당 테이블이 가득?\n"
 
 #: lib/malloc/table.c:200
 #, c-format
 msgid "register_alloc: %p already in table as allocated?\n"
-msgstr "register_alloc: %pê°\80 í\95 ë\8b¹ë\90\9c í\85\8cì\9d´ë¸\94ì\97\90 ì\9e\88ì\9d\8c?\n"
+msgstr "register_alloc: %pì\9d´(ê°\80) í\95 ë\8b¹í\95\9c í\85\8cì\9d´ë¸\94ì\97\90 ì\9e\88ì\9d\8c?\n"
 
 #: lib/malloc/table.c:253
 #, c-format
 msgid "register_free: %p already in table as free?\n"
-msgstr "register_free: %pê°\80 ì\9d´ë¯¸ í\95´ì \9cë\90\9c í\85\8cì\9d´ë¸\94ì\97\90 ì\9e\88ì\9d\8c?\n"
+msgstr "register_free: %pì\9d´(ê°\80) ì\9d´ë¯¸ í\95´ì \9cí\95\9c í\85\8cì\9d´ë¸\94ì\97\90 ì\9e\88ì\9d\8c?\n"
 
 #: lib/sh/fmtulong.c:102
 msgid "invalid base"
-msgstr "유효하지 않은 진법"
+msgstr "부적절한 진법"
 
 #: lib/sh/netopen.c:168
 #, c-format
@@ -1414,7 +1420,7 @@ msgstr "%s: 알 수 없는 호스트"
 #: lib/sh/netopen.c:175
 #, c-format
 msgid "%s: invalid service"
-msgstr "%s: 유효하지 않은 서비스"
+msgstr "%s: 부적절한 서비스"
 
 #: lib/sh/netopen.c:306
 #, c-format
@@ -1425,25 +1431,25 @@ msgstr "%s: 잘못된 네트워크 경로 사양"
 msgid "network operations not supported"
 msgstr "네트워크 작업은 지원되지 않음"
 
-#: locale.c:217
+#: locale.c:219
 #, c-format
 msgid "setlocale: LC_ALL: cannot change locale (%s)"
-msgstr "setlocale: LC_ALL: ë¡\9cì¼\80ì\9d¼을 바꿀 수 없음 (%s)"
+msgstr "setlocale: LC_ALL: ë¡\9cìº\98을 바꿀 수 없음 (%s)"
 
-#: locale.c:219
+#: locale.c:221
 #, c-format
 msgid "setlocale: LC_ALL: cannot change locale (%s): %s"
-msgstr "setlocale: LC_ALL: ë¡\9cì¼\80ì\9d¼을 바꿀 수 없음 (%s): %s"
+msgstr "setlocale: LC_ALL: ë¡\9cìº\98을 바꿀 수 없음 (%s): %s"
 
-#: locale.c:292
+#: locale.c:294
 #, c-format
 msgid "setlocale: %s: cannot change locale (%s)"
-msgstr "setlocale: %s: ë¡\9cì¼\80ì\9d¼을 바꿀 수 없음 (%s)"
+msgstr "setlocale: %s: ë¡\9cìº\98을 바꿀 수 없음 (%s)"
 
-#: locale.c:294
+#: locale.c:296
 #, c-format
 msgid "setlocale: %s: cannot change locale (%s): %s"
-msgstr "setlocale: %s: ë¡\9cì¼\80ì\9d¼을 바꿀 수 없음 (%s): %s"
+msgstr "setlocale: %s: ë¡\9cìº\98을 바꿀 수 없음 (%s): %s"
 
 #: mailcheck.c:439
 msgid "You have mail in $_"
@@ -1456,148 +1462,145 @@ msgstr "$_에 새로운 메일이 있습니다"
 #: mailcheck.c:480
 #, c-format
 msgid "The mail in %s has been read\n"
-msgstr "%sì\97\90 ì\9e\88ë\8a\94 ë©\94ì\9d¼ì\9d\80 읽었습니다\n"
+msgstr "%sì\9d\98 ë©\94ì\9d¼ì\9d\84 읽었습니다\n"
 
-#: make_cmd.c:317
+#: make_cmd.c:314
 msgid "syntax error: arithmetic expression required"
 msgstr "문법 오류: 산술 표현식이 필요함"
 
-#: make_cmd.c:319
+#: make_cmd.c:316
 msgid "syntax error: `;' unexpected"
-msgstr "문법 오류: ';' ì\98\88ì\83\81ë\90\98ì§\80 ì\95\8aì\9d\8c"
+msgstr "문법 오류: ';' í\95\84ì\9a\94í\95\98ì§\80 ì\95\8aì\9d\8c"
 
-#: make_cmd.c:320
+#: make_cmd.c:317
 #, c-format
 msgid "syntax error: `((%s))'"
 msgstr "문법 오류: `((%s))'"
 
-#: make_cmd.c:572
+#: make_cmd.c:569
 #, c-format
 msgid "make_here_document: bad instruction type %d"
 msgstr "make_here_document: 잘못된 명령어 형식 %d"
 
-#: make_cmd.c:657
+#: make_cmd.c:668
 #, c-format
 msgid "here-document at line %d delimited by end-of-file (wanted `%s')"
-msgstr "here-document가 줄 %d 에서 파일의 끝으로 구분됨 (`%s'를 예상함)"
+msgstr "here-document가 %d번 행에서 파일의 끝으로 구분함 (`%s'아(가) 필요함)"
 
-#: make_cmd.c:756
+#: make_cmd.c:769
 #, c-format
 msgid "make_redirection: redirection instruction `%d' out of range"
-msgstr "make_redirection: ë¦¬ë\8b¤ì\9d´ë \89ì\85\98 명령어 `%d' 범위 벗어남"
+msgstr "make_redirection: ë°©í\96¥ì\9e¬ì§\80ì \95 ì²\98리 명령어 `%d' 범위 벗어남"
 
-#: parse.y:2393
+#: parse.y:2428
 #, c-format
-msgid ""
-"shell_getc: shell_input_line_size (%zu) exceeds SIZE_MAX (%lu): line "
-"truncated"
-msgstr ""
-"shell_getc: shell_input_line_size (%zu)가 SIZE_MAX (%lu)를 초과함: 줄 잘림"
+msgid "shell_getc: shell_input_line_size (%zu) exceeds SIZE_MAX (%lu): line truncated"
+msgstr "shell_getc: shell_input_line_size(%zu)가 SIZE_MAX(%lu)를 초과함: 줄 잘림"
 
-#: parse.y:2826
+#: parse.y:2921
 msgid "maximum here-document count exceeded"
 msgstr "최대 here-document 카운트 초과"
 
-#: parse.y:3581 parse.y:3957 parse.y:4556
+#: parse.y:3684 parse.y:4244 parse.y:6148
 #, c-format
 msgid "unexpected EOF while looking for matching `%c'"
-msgstr "'%c'를 찾는 도중 예상하지 못한 파일의 끝"
+msgstr "`%c'을(를) 찾는 도중 예상치 못한 파일의 끝"
 
-#: parse.y:4696
+#: parse.y:4452
 msgid "unexpected EOF while looking for `]]'"
-msgstr "']]'를 찾던 도중 예상하지 못한 파일의 끝"
+msgstr "']]'를 찾던 도중 예상 못한 파일의 끝"
 
-#: parse.y:4701
+#: parse.y:4457
 #, c-format
 msgid "syntax error in conditional expression: unexpected token `%s'"
-msgstr "조건 표현식에 문법 오류: 예상하지 못한 토큰 '%s'"
+msgstr "조건 표현식에 문법 오류: 예상치 못한 토큰 `%s'"
 
-#: parse.y:4705
+#: parse.y:4461
 msgid "syntax error in conditional expression"
 msgstr "조건 표현식에 문법 오류"
 
-#: parse.y:4783
+#: parse.y:4539
 #, c-format
 msgid "unexpected token `%s', expected `)'"
-msgstr "예상ë\90\98ì§\80 ì\95\8aì\9d\80 í\86 í\81° '%s', ')' ì\98\88ì\83\81ë\90¨"
+msgstr "예상ì¹\98 ëª»í\95\9c í\86 í\81° `%s', ')' í\95\84ì\9a\94í\95¨"
 
-#: parse.y:4787
+#: parse.y:4543
 msgid "expected `)'"
-msgstr "')' ì\98\88ì\83\81ë\90¨"
+msgstr "')' í\95\84ì\9a\94í\95¨"
 
-#: parse.y:4815
+#: parse.y:4571
 #, c-format
 msgid "unexpected argument `%s' to conditional unary operator"
-msgstr "조건 단항 연산자에 예기치 않은 인자 '%s'"
+msgstr "조건 단항 연산자에 예기치 않은 인자 `%s'"
 
-#: parse.y:4819
+#: parse.y:4575
 msgid "unexpected argument to conditional unary operator"
 msgstr "조건 단항 연산자에 예기치 않은 인자"
 
-#: parse.y:4865
+#: parse.y:4621
 #, c-format
 msgid "unexpected token `%s', conditional binary operator expected"
-msgstr "예기치 않은 토큰 '%s', ì¡°ê±´ ì\9d´í\95­ ì\97°ì\82°ì\9e\90 ì\98\88ì\83\81ë\90¨"
+msgstr "예기치 않은 토큰 `%s', ì¡°ê±´ ì\9d´í\95­ ì\97°ì\82°ì\9e\90 í\95\84ì\9a\94í\95¨"
 
-#: parse.y:4869
+#: parse.y:4625
 msgid "conditional binary operator expected"
-msgstr "조건 이항 연산자 ì\98\88ì\83\81ë\90¨"
+msgstr "조건 이항 연산자 í\95\84ì\9a\94í\95¨"
 
-#: parse.y:4891
+#: parse.y:4647
 #, c-format
 msgid "unexpected argument `%s' to conditional binary operator"
-msgstr "조건 이항 연산자에 대해 예기치 않은 인자 '%s'"
+msgstr "조건 이항 연산자에 대해 예기치 않은 인자 `%s'"
 
-#: parse.y:4895
+#: parse.y:4651
 msgid "unexpected argument to conditional binary operator"
 msgstr "조건 이항 연산자에 대해 예기치 않은 인자"
 
-#: parse.y:4906
+#: parse.y:4662
 #, c-format
 msgid "unexpected token `%c' in conditional command"
-msgstr "조건 명령어에서 예기치 않은 토큰 '%c'"
+msgstr "조건 명령어에서 예기치 않은 토큰 `%c'"
 
-#: parse.y:4909
+#: parse.y:4665
 #, c-format
 msgid "unexpected token `%s' in conditional command"
-msgstr "조건 명령어에서 예기치 않은 토큰 '%s'"
+msgstr "조건 명령어에서 예기치 않은 토큰 `%s'"
 
-#: parse.y:4913
+#: parse.y:4669
 #, c-format
 msgid "unexpected token %d in conditional command"
 msgstr "조건 명령어에서 예기치 않은 토큰 %d"
 
-#: parse.y:6336
+#: parse.y:6118
 #, c-format
 msgid "syntax error near unexpected token `%s'"
-msgstr "예기치 않은 토큰 '%s' 근처에서 문법 오류"
+msgstr "예기치 않은 토큰 `%s' 근처에서 문법 오류"
 
-#: parse.y:6355
+#: parse.y:6137
 #, c-format
 msgid "syntax error near `%s'"
-msgstr "'%s' 근처에서 문법 오류"
+msgstr "`%s' 근처에서 문법 오류"
 
-#: parse.y:6365
+#: parse.y:6151
 msgid "syntax error: unexpected end of file"
 msgstr "문법 오류: 예기치 않은 파일의 끝"
 
-#: parse.y:6365
+#: parse.y:6151
 msgid "syntax error"
 msgstr "문법 오류"
 
-#: parse.y:6428
+#: parse.y:6216
 #, c-format
 msgid "Use \"%s\" to leave the shell.\n"
-msgstr "ì\89\98ì\9d\84 ë\82\98ê°\80려면 \"%s\"를 ì\82¬ì\9a©í\95\98ì\84¸ì\9a\94.\n"
+msgstr "ì\85¸ì\9d\84 ë\82\98ê°\80려면 \"%s\" ëª\85ë ¹ì\9d\84 ì\82¬ì\9a©í\95\98ì\8b­ì\8b\9cì\98¤.\n"
 
-#: parse.y:6602
+#: parse.y:6394
 msgid "unexpected EOF while looking for matching `)'"
 msgstr "맞는 ')'를 찾던 도중 예기치 않은 파일의 끝"
 
 #: pcomplete.c:1132
 #, c-format
 msgid "completion: function `%s' not found"
-msgstr "completion: 함수 `%s' 를 찾을 수 없음"
+msgstr "completion: `%s' 함수를 찾을 수 없음"
 
 #: pcomplete.c:1722
 #, c-format
@@ -1617,7 +1620,7 @@ msgstr "print_command: 잘못된 커넥터 `%d'"
 #: print_cmd.c:375
 #, c-format
 msgid "xtrace_set: %d: invalid file descriptor"
-msgstr "xtrace_set: %d: 유효하지 않은 파일 디스크립터"
+msgstr "xtrace_set: %d: 부적절한 파일 서술자"
 
 #: print_cmd.c:380
 msgid "xtrace_set: NULL file pointer"
@@ -1628,569 +1631,560 @@ msgstr "xtrace_set: NULL 파일 포인터"
 msgid "xtrace fd (%d) != fileno xtrace fp (%d)"
 msgstr "xtrace fd (%d) != fileno xtrace fp (%d)"
 
-#: print_cmd.c:1540
+#: print_cmd.c:1545
 #, c-format
 msgid "cprintf: `%c': invalid format character"
 msgstr "cprintf: `%c': 잘못된 서식 문자"
 
-#: redir.c:149 redir.c:197
+#: redir.c:150 redir.c:198
 msgid "file descriptor out of range"
-msgstr "파일 디스크립터 범위 벗어남"
+msgstr "파일 서술자 범위 벗어남"
 
-#: redir.c:204
+#: redir.c:205
 #, c-format
 msgid "%s: ambiguous redirect"
 msgstr "%s: 모호한 리다이렉트"
 
-#: redir.c:208
+#: redir.c:209
 #, c-format
 msgid "%s: cannot overwrite existing file"
 msgstr "%s: 이미 있는 파일을 덮어쓸 수 없음"
 
-#: redir.c:213
+#: redir.c:214
 #, c-format
 msgid "%s: restricted: cannot redirect output"
-msgstr "%s: ì \9cí\95\9cë\90¨: ì¶\9cë ¥ì\9d\84 ë¦¬ë\8b¤ì\9d´ë \89í\8a¸할 수 없음"
+msgstr "%s: ì \9cí\95\9cë\90¨: ì¶\9cë ¥ì\9d\84 ë°©í\96¥ ì\9e¬ì§\80ì \95할 수 없음"
 
-#: redir.c:218
+#: redir.c:219
 #, c-format
 msgid "cannot create temp file for here-document: %s"
 msgstr "here-document를 위한 임시 파일을 생성할 수 없음: %s"
 
-#: redir.c:222
+#: redir.c:223
 #, c-format
 msgid "%s: cannot assign fd to variable"
-msgstr "%s: fd를 변수에 할당할 수 없음"
+msgstr "%s: 파일 서술자를 변수에 할당할 수 없음"
 
-#: redir.c:649
+#: redir.c:650
 msgid "/dev/(tcp|udp)/host/port not supported without networking"
-msgstr "/dev/(tcp|udp)/host/port ë\8a\94 ë\84¤í\8a¸ì\9b\8cí\82¹ ì\97\86ì\9d´ ì§\80ì\9b\90ë\90\98ì§\80 ì\95\8aì\9d\8c"
+msgstr "/dev/(tcp|udp)/host/portë\8a\94 ë\84¤í\8a¸ì\9b\8cí\82¹ ì\97\86ì\9d´ ì§\80ì\9b\90í\95\98ì§\80 ì\95\8aì\9d\8c"
 
-#: redir.c:938 redir.c:1053 redir.c:1114 redir.c:1284
+#: redir.c:945 redir.c:1065 redir.c:1130 redir.c:1303
 msgid "redirection error: cannot duplicate fd"
-msgstr "리ë\8b¤ì\9d´ë \89ì\85\98 ì\98¤ë¥\98: fd를 복제할 수 없음"
+msgstr "ë°©í\96¥ì\9e¬ì§\80ì \95 ì²\98리 ì\98¤ë¥\98: í\8c\8cì\9d¼ ì\84\9cì\88 ì\9e\90를 복제할 수 없음"
 
-#: shell.c:347
+#: shell.c:353
 msgid "could not find /tmp, please create!"
-msgstr "/tmp를 ì°¾ì\9d\84 ì\88\98 ì\97\86ì\9d\8c, ë§\8cë\93¤ì\96´ ì£¼ì\84¸ì\9a\94!"
+msgstr "/tmp를 ì°¾ì\9d\84 ì\88\98 ì\97\86ì\9d\8c, ë§\8cë\93\9cì\8b­ì\8b\9cì\98¤!"
 
-#: shell.c:351
+#: shell.c:357
 msgid "/tmp must be a valid directory name"
-msgstr "/tmpë\8a\94 ë°\98ë\93\9cì\8b\9c ì\9c í\9a¨í\95\9c ë\94\94ë \89í\86 리 이름이어야 함"
+msgstr "/tmpë\8a\94 ë°\98ë\93\9cì\8b\9c ì \81ì \88í\95\9c ë\94\94ë \89í\84°리 이름이어야 함"
 
-#: shell.c:804
+#: shell.c:826
 msgid "pretty-printing mode ignored in interactive shells"
-msgstr "ì\83\81í\98¸ì \81 ì\89\98ì\97\90ì\84\9cë\8a\94 pretty-printing ëª¨ë\93\9cê°\80 ë¬´ì\8b\9cë\90¨"
+msgstr "ë\8c\80í\99\94í\98\95 ì\85¸ì\97\90ì\84\9cë\8a\94 ì \95ë\8f\88 ì¶\9cë ¥ ëª¨ë\93\9c를 ë¬´ì\8b\9cí\95¨"
 
-#: shell.c:948
+#: shell.c:972
 #, c-format
 msgid "%c%c: invalid option"
-msgstr "%c%c: 유효하지 않은 옵션"
+msgstr "%c%c: 부적절한 옵션"
 
-#: shell.c:1319
+#: shell.c:1343
 #, c-format
 msgid "cannot set uid to %d: effective uid %d"
-msgstr "uid를 %dë¡\9c ì\84¤ì \95í\95  ì\88\98 ì\97\86ì\9d\8c: effective uid %d"
+msgstr "uid를 %dë²\88ì\9c¼ë¡\9c ì\84¤ì \95í\95  ì\88\98 ì\97\86ì\9d\8c: í\9a¨ë ¥ì\83\81 ì\82¬ì\9a©ì\9e\90 ID %dë²\88"
 
-#: shell.c:1330
+#: shell.c:1354
 #, c-format
 msgid "cannot set gid to %d: effective gid %d"
-msgstr "gid를 %dë¡\9c ì\84¤ì \95í\95  ì\88\98 ì\97\86ì\9d\8c: effective gid %d"
+msgstr "gid를 %dë²\88ì\9c¼ë¡\9c ì\84¤ì \95í\95  ì\88\98 ì\97\86ì\9d\8c: í\9a¨ë ¥ì\83\81 ê·¸ë£¹ ID %dë²\88"
 
-#: shell.c:1518
+#: shell.c:1544
 msgid "cannot start debugger; debugging mode disabled"
-msgstr "디버거를 시작할 수 없음; 디버깅 모드 비활성화됨"
+msgstr "디버거를 시작할 수 없음! 디버깅 모드 꺼짐"
 
-#: shell.c:1632
+#: shell.c:1658
 #, c-format
 msgid "%s: Is a directory"
-msgstr "%s: ë\8a\94 ë\94\94ë \89í\84°ë¦¬ì\9e\84"
+msgstr "%s: 디렉터리임"
 
-#: shell.c:1881
+#: shell.c:1907
 msgid "I have no name!"
 msgstr "이름 없음!"
 
-#: shell.c:2035
+#: shell.c:2061
 #, c-format
 msgid "GNU bash, version %s-(%s)\n"
-msgstr "GNU bash, 버전 %s-(%s)\n"
+msgstr "GNU 배시, 버전 %s-(%s)\n"
 
-#: shell.c:2036
+#: shell.c:2062
 #, c-format
 msgid ""
 "Usage:\t%s [GNU long option] [option] ...\n"
 "\t%s [GNU long option] [option] script-file ...\n"
 msgstr ""
-"사용법:\t%s [GNU 긴 옵션] [옵션] ...\n"
-"\t%s [GNU 긴 옵션] [옵션] 스크립트-파일 ...\n"
+"사용법:\t%s [<GNU_긴_옵션>] [<옵션>] ...\n"
+"\t%s [<GNU_긴_옵션>] [<옵션>] <스크립트파일> ...\n"
 
-#: shell.c:2038
+#: shell.c:2064
 msgid "GNU long options:\n"
 msgstr "GNU 긴 옵션:\n"
 
-#: shell.c:2042
+#: shell.c:2068
 msgid "Shell options:\n"
-msgstr "ì\89\98 옵션:\n"
+msgstr "ì\85¸ 옵션:\n"
 
-#: shell.c:2043
+#: shell.c:2069
 msgid "\t-ilrsD or -c command or -O shopt_option\t\t(invocation only)\n"
-msgstr "\t-ilrsD 또는 -c 명령 또는 -O shopt_option\t\t(invocation 전용)\n"
+msgstr "\t-ilrsD 또는 -c <명령> 또는 -O shopt_option\t\t(invocation 전용)\n"
 
-#: shell.c:2062
+#: shell.c:2088
 #, c-format
 msgid "\t-%s or -o option\n"
 msgstr "\t-%s 또는 -o 옵션\n"
 
-#: shell.c:2068
+#: shell.c:2094
 #, c-format
 msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
-msgstr ""
-"`%s -c \"help set\"' 를 사용하면 쉘 옵션에 관해 더 많은 정보를 확인할 수 있습"
-"니다.\n"
+msgstr "`%s -c \"help set\"' 명령을 사용하면 셸 옵션에 관해 더 많은 정보를 확인할 수 있습니다.\n"
 
-#: shell.c:2069
+#: shell.c:2095
 #, c-format
 msgid "Type `%s -c help' for more information about shell builtin commands.\n"
-msgstr ""
-"`%s -c help' 를 사용하면 쉘 내장 명령어에 관해 더 많은 정보를 확인할 수 있습"
-"니다.\n"
+msgstr "`%s -c help' 명령을 사용하면 셸 내장 명령어에 관해 더 많은 정보를 확인할 수 있습니다.\n"
 
-#: shell.c:2070
+#: shell.c:2096
 #, c-format
 msgid "Use the `bashbug' command to report bugs.\n"
-msgstr "ë²\84그를 ë³´ê³ í\95\98려면 'bashbug' ëª\85ë ¹ì\9d\84 ì\82¬ì\9a©í\95\98ì\84¸ì\9a\94.\n"
+msgstr "ë²\84그를 ë³´ê³ í\95\98려면 'bashbug' ëª\85ë ¹ì\9d\84 ì\82¬ì\9a©í\95\98ì\8b­ì\8b\9cì\98¤.\n"
 
-#: shell.c:2072
+#: shell.c:2098
 #, c-format
 msgid "bash home page: <http://www.gnu.org/software/bash>\n"
 msgstr "bash 홈페이지: <http://www.gnu.org/software/bash>\n"
 
-#: shell.c:2073
+#: shell.c:2099
 #, c-format
 msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
-msgstr ""
-"GNU 소프트웨어를 사용하는데 일반적인 도움말: <http://www.gnu.org/gethelp/>\n"
+msgstr "GNU 소프트웨어 사용자 일반 도움말: <http://www.gnu.org/gethelp/>\n"
 
-#: sig.c:757
+#: sig.c:765
 #, c-format
 msgid "sigprocmask: %d: invalid operation"
-msgstr "sigprocmask: %d: 유효하지 않은 작업"
+msgstr "sigprocmask: %d: 부적절한 작업"
 
-#: siglist.c:47
+#: siglist.c:48
 msgid "Bogus signal"
-msgstr "Bogus 신호"
+msgstr "가짜 시그널"
 
-#: siglist.c:50
+#: siglist.c:51
 msgid "Hangup"
-msgstr "Hangup"
+msgstr "수행 중단(Hangup)"
 
-#: siglist.c:54
+#: siglist.c:55
 msgid "Interrupt"
 msgstr "인터럽트"
 
-#: siglist.c:58
+#: siglist.c:59
 msgid "Quit"
 msgstr "나가기"
 
-#: siglist.c:62
+#: siglist.c:63
 msgid "Illegal instruction"
-msgstr "Illegal instruction"
+msgstr "부적절한 명령"
 
-#: siglist.c:66
+#: siglist.c:67
 msgid "BPT trace/trap"
-msgstr "BPT trace/trap"
+msgstr "BPT 추적/중단"
 
-#: siglist.c:74
+#: siglist.c:75
 msgid "ABORT instruction"
 msgstr "ABORT 명령"
 
-#: siglist.c:78
+#: siglist.c:79
 msgid "EMT instruction"
 msgstr "EMT 명령"
 
-#: siglist.c:82
+#: siglist.c:83
 msgid "Floating point exception"
 msgstr "부동 소수점 예외"
 
-#: siglist.c:86
+#: siglist.c:87
 msgid "Killed"
-msgstr "Killed"
+msgstr "죽었음"
 
-#: siglist.c:90
+#: siglist.c:91
 msgid "Bus error"
 msgstr "버스 오류"
 
-#: siglist.c:94
+#: siglist.c:95
 msgid "Segmentation fault"
-msgstr "ì\84¸ê·¸ë©\98테이션 오류"
+msgstr "ì\84¸ê·¸ë¨¼테이션 오류"
 
-#: siglist.c:98
+#: siglist.c:99
 msgid "Bad system call"
 msgstr "잘못된 시스템 콜"
 
-#: siglist.c:102
+#: siglist.c:103
 msgid "Broken pipe"
-msgstr "고장난 파이프"
+msgstr "파이프 깨짐"
 
-#: siglist.c:106
+#: siglist.c:107
 msgid "Alarm clock"
-msgstr "ì\95\8cë\9e\8c 시계"
+msgstr "ì\95\8c림 시계"
 
-#: siglist.c:110
+#: siglist.c:111
 msgid "Terminated"
-msgstr "Terminated"
+msgstr "중단됨"
 
-#: siglist.c:114
+#: siglist.c:115
 msgid "Urgent IO condition"
-msgstr "긴급한 IO 상황"
+msgstr "긴급 입출력 상태"
 
-#: siglist.c:118
+#: siglist.c:119
 msgid "Stopped (signal)"
-msgstr "ë©\88춤 (ì\8b í\98¸)"
+msgstr "ë©\88춤 (ì\8b\9cê·¸ë\84\90)"
 
-#: siglist.c:126
+#: siglist.c:127
 msgid "Continue"
 msgstr "계속"
 
-#: siglist.c:134
+#: siglist.c:135
 msgid "Child death or stop"
-msgstr "자식이 죽거나 멈춤"
+msgstr "하위 요소가 죽거나 멈춤"
 
-#: siglist.c:138
+#: siglist.c:139
 msgid "Stopped (tty input)"
 msgstr "멈춤 (tty 입력)"
 
-#: siglist.c:142
+#: siglist.c:143
 msgid "Stopped (tty output)"
 msgstr "멈춤 (tty 출력)"
 
-#: siglist.c:146
+#: siglist.c:147
 msgid "I/O ready"
 msgstr "I/O 준비"
 
-#: siglist.c:150
+#: siglist.c:151
 msgid "CPU limit"
 msgstr "CPU 제한"
 
-#: siglist.c:154
+#: siglist.c:155
 msgid "File limit"
 msgstr "파일 제한"
 
-#: siglist.c:158
+#: siglist.c:159
 msgid "Alarm (virtual)"
-msgstr "ì\95\8cë\9e\8c (가상)"
+msgstr "ì\95\8c림 (가상)"
 
-#: siglist.c:162
+#: siglist.c:163
 msgid "Alarm (profile)"
-msgstr "ì\95\8cë\9e\8c (프로파일)"
+msgstr "ì\95\8c림 (프로파일)"
 
-#: siglist.c:166
+#: siglist.c:167
 msgid "Window changed"
-msgstr "ì\9c\88ë\8f\84ì\9a° ë³\80ê²½ë\90¨"
+msgstr "ì\9c\88ë\8f\84ì\9a° ë°\94ë\80\9c"
 
-#: siglist.c:170
+#: siglist.c:171
 msgid "Record lock"
 msgstr "기록 잠금"
 
-#: siglist.c:174
+#: siglist.c:175
 msgid "User signal 1"
-msgstr "ì\9c ì \80 ì\8b í\98¸ 1"
+msgstr "ì\82¬ì\9a©ì\9e\90 ì\8b\9cê·¸ë\84\90 1"
 
-#: siglist.c:178
+#: siglist.c:179
 msgid "User signal 2"
-msgstr "ì\9c ì \80 ì\8b í\98¸ 2"
+msgstr "ì\82¬ì\9a©ì\9e\90 ì\8b\9cê·¸ë\84\90 2"
 
-#: siglist.c:182
+#: siglist.c:183
 msgid "HFT input data pending"
 msgstr "HFT 입력 데이터 대기중"
 
-#: siglist.c:186
+#: siglist.c:187
 msgid "power failure imminent"
 msgstr "전원 문제 임박"
 
-#: siglist.c:190
+#: siglist.c:191
 msgid "system crash imminent"
 msgstr "시스템 충돌 임박"
 
-#: siglist.c:194
+#: siglist.c:195
 msgid "migrate process to another CPU"
 msgstr "다른 CPU로 프로세스 이전"
 
-#: siglist.c:198
+#: siglist.c:199
 msgid "programming error"
 msgstr "프로그래밍 오류"
 
-#: siglist.c:202
+#: siglist.c:203
 msgid "HFT monitor mode granted"
-msgstr "HFT 모니터 모드 승인ë\90¨"
+msgstr "HFT 모니터 모드 승인í\95¨"
 
-#: siglist.c:206
+#: siglist.c:207
 msgid "HFT monitor mode retracted"
-msgstr "HFT 모니터 모드 철회ë\90¨"
+msgstr "HFT 모니터 모드 철회í\95¨"
 
-#: siglist.c:210
+#: siglist.c:211
 msgid "HFT sound sequence has completed"
-msgstr "HFT ì\82¬ì\9a´ë\93\9c ì \88ì°¨ê°\80 ì\99\84ë£\8cë\90¨"
+msgstr "HFT ì\82¬ì\9a´ë\93\9c ì\8b\9cí\80\80ì\8a¤ê°\80 ë\81\9dë\82¨"
 
-#: siglist.c:214
+#: siglist.c:215
 msgid "Information request"
 msgstr "정보 요청"
 
-#: siglist.c:222 siglist.c:224
+#: siglist.c:223 siglist.c:225
 #, c-format
 msgid "Unknown Signal #%d"
-msgstr "ì\95\8c ì\88\98 ì\97\86ë\8a\94 ì\8b í\98¸ #%d"
+msgstr "ì\95\8c ì\88\98 ì\97\86ë\8a\94 ì\8b\9cê·¸ë\84\90 #%d"
 
-#: subst.c:1476 subst.c:1666
+#: subst.c:1480 subst.c:1670
 #, c-format
 msgid "bad substitution: no closing `%s' in %s"
-msgstr "잘못된 대체: %2$s에 닫는 '%1$s' 없음"
+msgstr "잘못된 대체: %2$s에 닫는 `%1$s' 없음"
 
-#: subst.c:3281
+#: subst.c:3307
 #, c-format
 msgid "%s: cannot assign list to array member"
-msgstr "%s: 리스트를 배열 멤버 할당할 수 없음"
+msgstr "%s: 리스트를 배열 멤버 할당할 수 없음"
 
-#: subst.c:5910 subst.c:5926
+#: subst.c:6048 subst.c:6064
 msgid "cannot make pipe for process substitution"
-msgstr "프로세스 대체를 위해 파이프를 만들 수 없음"
+msgstr "프로세스 대체 파이프를 만들 수 없음"
 
-#: subst.c:5985
+#: subst.c:6124
 msgid "cannot make child for process substitution"
-msgstr "프로세스 대체를 위해 자식을 만들 수 없음"
+msgstr "프로세스 대체용 하위 요소를 만들 수 없음"
 
-#: subst.c:6059
+#: subst.c:6198
 #, c-format
 msgid "cannot open named pipe %s for reading"
-msgstr "읽기를 위해 명명된 파이프 %s를 열 수 없음"
+msgstr "읽기용 명명 파이프 %s을(를) 열 수 없음"
 
-#: subst.c:6061
+#: subst.c:6200
 #, c-format
 msgid "cannot open named pipe %s for writing"
-msgstr "쓰기를 위해 명명된 파이프 %s를 열 수 없음"
+msgstr "쓰기용 명명 파이프 %s을(를) 열 수 없음"
 
-#: subst.c:6084
+#: subst.c:6223
 #, c-format
 msgid "cannot duplicate named pipe %s as fd %d"
-msgstr "명명된 파이프 %s를 fd %d로 복제할 수 없음"
+msgstr "명명된 파이프 %s을(를) 파일 서술자 %d번으로 복제할 수 없음"
 
-#: subst.c:6213
+#: subst.c:6370
 msgid "command substitution: ignored null byte in input"
-msgstr "command substitution: 입력의 null 바이트 무시"
+msgstr "command substitution: 입력의 null 바이트 무시"
 
-#: subst.c:6353
+#: subst.c:6533
 msgid "cannot make pipe for command substitution"
-msgstr "명령어 대체를 위해 파이프를 만들 수 없음"
+msgstr "명령어 대체 파이프를 만들 수 없음"
 
-#: subst.c:6397
+#: subst.c:6580
 msgid "cannot make child for command substitution"
-msgstr "명령어 대체를 위해 자식을 만들 수 없음"
+msgstr "명령어 대체용 하위 요소를 만들 수 없음"
 
-#: subst.c:6423
+#: subst.c:6613
 msgid "command_substitute: cannot duplicate pipe as fd 1"
-msgstr "command_substitute: 파이프를 fd 1로 복제할 수 없음"
+msgstr "command_substitute: 파이프를 파일 서술자 1번으로 복제할 수 없음"
 
-#: subst.c:6883 subst.c:9952
+#: subst.c:7082 subst.c:10252
 #, c-format
 msgid "%s: invalid variable name for name reference"
-msgstr "%s: ì\9d´ë¦\84 ì°¸ì¡°ì\97\90 ë\8c\80í\95´ ì\9c í\9a¨í\95\98ì§\80 ì\95\8aì\9d\80 변수 이름"
+msgstr "%s: ì\9d´ë¦\84 ì°¸ì¡°ì\97\90 ë\80ì \81ì \88í\95\9c 변수 이름"
 
-#: subst.c:6979 subst.c:6997 subst.c:7169
+#: subst.c:7178 subst.c:7196 subst.c:7369
 #, c-format
 msgid "%s: invalid indirect expansion"
-msgstr "%s: 유효하지 않은 간접 확장"
+msgstr "%s: 부적절한 간접 확장"
 
-#: subst.c:7013 subst.c:7177
+#: subst.c:7212 subst.c:7377
 #, c-format
 msgid "%s: invalid variable name"
-msgstr "%s: 유효하지 않은 변수 이름"
+msgstr "%s: 부적절한 변수 이름"
 
-#: subst.c:7256
+#: subst.c:7478
 #, c-format
 msgid "%s: parameter not set"
-msgstr "%s: 파라미터 설정되지 않음"
+msgstr "%s: 매개변수값 설정 안함"
 
-#: subst.c:7258
+#: subst.c:7480
 #, c-format
 msgid "%s: parameter null or not set"
-msgstr "%s: í\8c\8cë\9d¼ë¯¸í\84°ê°\80 null ë\98\90ë\8a\94 ì\84¤ì \95ë\90\98ì§\80 ì\95\8aì\9d\8c"
+msgstr "%s: ë§¤ê°\9cë³\80ì\88\98 ê°\92ì\9d´ null ì\9d´ê±°ë\82\98 ì\84¤ì \95í\95\98ì§\80 ì\95\8aì\9d\8c"
 
-#: subst.c:7503 subst.c:7518
+#: subst.c:7727 subst.c:7742
 #, c-format
 msgid "%s: substring expression < 0"
 msgstr "%s: 부분 문자열 표현식 < 0"
 
-#: subst.c:9281 subst.c:9302
+#: subst.c:9560 subst.c:9587
 #, c-format
 msgid "%s: bad substitution"
 msgstr "%s: 잘못된 대체"
 
-#: subst.c:9390
+#: subst.c:9678
 #, c-format
 msgid "$%s: cannot assign in this way"
 msgstr "$%s: 이 방법으로 할당할 수 없음"
 
-#: subst.c:9814
-msgid ""
-"future versions of the shell will force evaluation as an arithmetic "
-"substitution"
-msgstr "향후 버전의 쉘에서는 산술 대체로 연산이 강제됩니다"
+#: subst.c:10111
+msgid "future versions of the shell will force evaluation as an arithmetic substitution"
+msgstr "향후 버전의 셸에서는 산술 대체로 연산이 강제됩니다"
 
-#: subst.c:10367
+#: subst.c:10795
 #, c-format
 msgid "bad substitution: no closing \"`\" in %s"
 msgstr "잘못된 대체: %s에 닫는 \"`\" 없음"
 
-#: subst.c:11434
+#: subst.c:11874
 #, c-format
 msgid "no match: %s"
 msgstr "일치 없음: %s"
 
 #: test.c:147
 msgid "argument expected"
-msgstr "인자 ì\98\88ì\83\81ë\90¨"
+msgstr "인자 í\95\84ì\9a\94í\95¨"
 
 #: test.c:156
 #, c-format
 msgid "%s: integer expression expected"
-msgstr "%s: 정수 표현식 ì\98\88ì\83\81ë\90¨"
+msgstr "%s: 정수 표현식 í\95\84ì\9a\94í\95¨"
 
 #: test.c:265
 msgid "`)' expected"
-msgstr "`)' ì\98\88ì\83\81ë\90¨"
+msgstr "`)'ê°\80 í\95\84ì\9a\94í\95¨"
 
 #: test.c:267
 #, c-format
 msgid "`)' expected, found %s"
-msgstr "`)' 예상되었으나 %s를 발견"
+msgstr "`)'가 있어야 하지만, %s이(가) 있습니다"
 
-#: test.c:466 test.c:799
+#: test.c:469 test.c:814
 #, c-format
 msgid "%s: binary operator expected"
-msgstr "%s: 이항 연산자 예상됨"
+msgstr "%s: 이항 연산자가 필요합니다"
 
-#: test.c:756 test.c:759
+#: test.c:771 test.c:774
 #, c-format
 msgid "%s: unary operator expected"
-msgstr "%s: 단항 연산자 예상됨"
+msgstr "%s: 단항 연산자가 필요합니다"
 
-#: test.c:881
+#: test.c:896
 msgid "missing `]'"
-msgstr "']' 없음"
+msgstr "']' 빠짐"
 
-#: test.c:899
-#, fuzzy, c-format
+#: test.c:914
+#, c-format
 msgid "syntax error: `%s' unexpected"
-msgstr "문법 오류: ';' ì\98\88ì\83\81ë\90\98ì§\80 ì\95\8aì\9d\8c"
+msgstr "문법 오류: `%s' í\95\84ì\9a\94í\95\98ì§\80 ì\95\8aì\9d\8c"
 
 #: trap.c:220
 msgid "invalid signal number"
-msgstr "유효하지 않은 신호 번호"
+msgstr "부적절한 시그널 번호"
 
-#: trap.c:325
+#: trap.c:323
 #, c-format
 msgid "trap handler: maximum trap handler level exceeded (%d)"
-msgstr "trap handler: 최대 trap handler 레벨 초과 (%d)"
+msgstr "trap handler: 최대 트랩 핸들러 레벨 초과 (%d)"
 
-#: trap.c:414
+#: trap.c:412
 #, c-format
 msgid "run_pending_traps: bad value in trap_list[%d]: %p"
 msgstr "run_pending_traps: trap_list[%d]에 잘못된 값: %p"
 
-#: trap.c:418
+#: trap.c:416
 #, c-format
-msgid ""
-"run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
-msgstr ""
-"run_pending_traps: 신호 핸들러는 SIG_DFL 이고, %d (%s)를 자신에게 보내는 중"
+msgid "run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
+msgstr "run_pending_traps: 시그널 핸들러는 SIG_DFL 이고, %d (%s)를 자신에게 다시 보내는 중"
 
-#: trap.c:487
+#: trap.c:509
 #, c-format
 msgid "trap_handler: bad signal %d"
-msgstr "trap_handler: ì\9e\98못ë\90\9c ì\8b í\98¸ %d"
+msgstr "trap_handler: ì\9e\98못ë\90\9c ì\8b\9cê·¸ë\84\90 %dë²\88"
 
-#: variables.c:421
+#: variables.c:424
 #, c-format
 msgid "error importing function definition for `%s'"
-msgstr "'%s'에 대해 함수 정의를 불러오는데 오류 발생"
+msgstr "`%s'의 함수 정의 가져오기 오류"
 
-#: variables.c:833
+#: variables.c:838
 #, c-format
 msgid "shell level (%d) too high, resetting to 1"
-msgstr "ì\89\98 레벨 (%d)이 너무 높습니다, 1로 재설정합니다"
+msgstr "ì\85¸ 레벨 (%d)이 너무 높습니다, 1로 재설정합니다"
 
-#: variables.c:2674
+#: variables.c:2642
 msgid "make_local_variable: no function context at current scope"
 msgstr "make_local_variable: 현재 범위에서 함수 컨텍스트 없음"
 
-#: variables.c:2693
+#: variables.c:2661
 #, c-format
 msgid "%s: variable may not be assigned value"
-msgstr "%s: 변수는 할당된 값이 될 수 없음"
+msgstr "%s: 변수는 할당 값이 아님"
+
+#: variables.c:2818 variables.c:2874
+#, c-format
+msgid "%s: cannot inherit value from incompatible type"
+msgstr "%s: 비호환 형식의 값을 가져올 수 없음"
 
-#: variables.c:3475
+#: variables.c:3459
 #, c-format
 msgid "%s: assigning integer to name reference"
 msgstr "%s: 이름 참조에 정수를 할당하고 있음"
 
-#: variables.c:4404
+#: variables.c:4390
 msgid "all_local_variables: no function context at current scope"
 msgstr "all_local_variables: 현재 범위에서 함수 컨텍스트 없음"
 
-#: variables.c:4771
+#: variables.c:4757
 #, c-format
 msgid "%s has null exportstr"
-msgstr "%s null exportstr을 가짐"
+msgstr "%s이(가) null exportstr을 가짐"
 
-#: variables.c:4776 variables.c:4785
+#: variables.c:4762 variables.c:4771
 #, c-format
 msgid "invalid character %d in exportstr for %s"
-msgstr "%2$s를 위한 exportstr에서 유효하지 않은 문자 %1$d"
+msgstr "%2$s의 exportstr에서 부적절한 문자 %1$d"
 
-#: variables.c:4791
+#: variables.c:4777
 #, c-format
 msgid "no `=' in exportstr for %s"
-msgstr "%s를 위한 exportstr에 '=' 없음"
+msgstr "%s exportstr에 '=' 없음"
 
-#: variables.c:5331
+#: variables.c:5317
 msgid "pop_var_context: head of shell_variables not a function context"
 msgstr "pop_var_context: shell_variables의 시작이 함수의 컨텍스트가 아님"
 
-#: variables.c:5344
+#: variables.c:5330
 msgid "pop_var_context: no global_variables context"
 msgstr "pop_var_context: 컨텍스트에 global_variables 없음"
 
-#: variables.c:5424
+#: variables.c:5410
 msgid "pop_scope: head of shell_variables not a temporary environment scope"
 msgstr "pop_scope: shell_variables의 시작이 임시 환경 범위가 아님"
 
-#: variables.c:6387
+#: variables.c:6400
 #, c-format
 msgid "%s: %s: cannot open as FILE"
-msgstr "%s: %s: 파일로써 열 수 없음"
+msgstr "%s: %s: <파일>로 열 수 없음"
 
-#: variables.c:6392
+#: variables.c:6405
 #, c-format
 msgid "%s: %s: invalid value for trace file descriptor"
-msgstr "%s: %s: 추척 파일 디스크립터에 유효하지 않은 값"
+msgstr "%s: %s: 추척 파일 서술자에 부적절한 값"
 
-#: variables.c:6437
+#: variables.c:6450
 #, c-format
 msgid "%s: %s: compatibility value out of range"
 msgstr "%s: %s: 호환 값이 범위를 벗어남"
 
 #: version.c:46 version2.c:46
-#, fuzzy
-msgid "Copyright (C) 2020 Free Software Foundation, Inc."
-msgstr "Copyright (C) 2018 Free Software Foundation, Inc."
+msgid "Copyright (C) 2022 Free Software Foundation, Inc."
+msgstr "Copyright (C) 2022 Free Software Foundation, Inc."
 
 #: version.c:47 version2.c:47
-msgid ""
-"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
-"html>\n"
-msgstr ""
-"라이선스 GPLv3+: GNU GPL version 3 or later <http://gnu.org/license/gpl."
-"html>\n"
+msgid "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n"
+msgstr "라이선스 GPLv3+: GNU GPL 버전 3 이상 <http://gnu.org/license/gpl.html>\n"
 
 #: version.c:86 version2.c:86
 #, c-format
@@ -2199,67 +2193,63 @@ msgstr "GNU bash, 버전 %s (%s)\n"
 
 #: version.c:91 version2.c:91
 msgid "This is free software; you are free to change and redistribute it."
-msgstr "This is free software; you are free to change and redistribute it."
+msgstr "이 프로그램은 자유 소프트웨어입니다. 자유롭게 바꾸고 재배포할 수 있습니다."
 
 #: version.c:92 version2.c:92
 msgid "There is NO WARRANTY, to the extent permitted by law."
-msgstr "There is NO WARRANTY, to the extent permitted by law."
+msgstr "법률이 허용하는 모든 범위내의 보증은 없습니다."
 
 #: xmalloc.c:93
 #, c-format
 msgid "%s: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr "%s: %lu bytes를 í\95 ë\8b¹í\95  ì\88\98 ì\97\86ì\9d\8c (%lu bytes í\95 ë\8b¹ë\90¨)"
+msgstr "%s: %lu ë°\94ì\9d´í\8a¸ë¥¼ í\95 ë\8b¹í\95  ì\88\98 ì\97\86ì\9d\8c (%lu ë°\94ì\9d´í\8a¸ í\95 ë\8b¹í\95¨)"
 
 #: xmalloc.c:95
 #, c-format
 msgid "%s: cannot allocate %lu bytes"
-msgstr "%s: %lu bytes를 할당할 수 없음"
+msgstr "%s: %lu 바이트를 할당할 수 없음"
 
 #: xmalloc.c:165
 #, c-format
 msgid "%s: %s:%d: cannot allocate %lu bytes (%lu bytes allocated)"
-msgstr "%s: %s:%d: %lu bytes를 í\95 ë\8b¹í\95  ì\88\98 ì\97\86ì\9d\8c (%lu bytes í\95 ë\8b¹ë\90¨)"
+msgstr "%s: %s:%d: %lu ë°\94ì\9d´í\8a¸ë¥¼ í\95 ë\8b¹í\95  ì\88\98 ì\97\86ì\9d\8c (%lu ë°\94ì\9d´í\8a¸ í\95 ë\8b¹í\95¨)"
 
 #: xmalloc.c:167
 #, c-format
 msgid "%s: %s:%d: cannot allocate %lu bytes"
-msgstr "%s: %s:%d: %lu bytes를 할당할 수 없음"
+msgstr "%s: %s:%d: %lu 바이트를 할당할 수 없음"
 
 #: builtins.c:45
 msgid "alias [-p] [name[=value] ... ]"
-msgstr "alias [-p] [name[=value] ... ]"
+msgstr "alias [-p] [<이름>[=<값>] ... ]"
 
 #: builtins.c:49
 msgid "unalias [-a] name [name ...]"
-msgstr "unalias [-a] name [name ...]"
+msgstr "unalias [-a] <이름> [<이름> ...]"
 
 #: builtins.c:53
-msgid ""
-"bind [-lpsvPSVX] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
-"x keyseq:shell-command] [keyseq:readline-function or readline-command]"
-msgstr ""
-"bind [-lpsvPSVX] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-"
-"x keyseq:shell-command] [keyseq:readline-function 또는 readline-command]"
+msgid "bind [-lpsvPSVX] [-m keymap] [-f filename] [-q name] [-u name] [-r keyseq] [-x keyseq:shell-command] [keyseq:readline-function or readline-command]"
+msgstr "bind [-lpsvPSVX] [-m <키매핑>] [-f <파일이름>] [-q <이름>] [-u <이름>] [-r <키시퀀스>] [-x <키시퀀스>:<셸명령>] [<키시퀀스>:<행읽기함수> 또는 <행읽기명령>]"
 
 #: builtins.c:56
 msgid "break [n]"
-msgstr "break [n]"
+msgstr "break [<번호>]"
 
 #: builtins.c:58
 msgid "continue [n]"
-msgstr "continue [n]"
+msgstr "continue [<번호>]"
 
 #: builtins.c:60
 msgid "builtin [shell-builtin [arg ...]]"
-msgstr "builtin [shell-builtin [arg ...]]"
+msgstr "builtin [<셸내장명령> [<인자> ...]]"
 
 #: builtins.c:63
 msgid "caller [expr]"
-msgstr "caller [expr]"
+msgstr "caller [<표현식>]"
 
 #: builtins.c:66
 msgid "cd [-L|[-P [-e]] [-@]] [dir]"
-msgstr "cd [-L|[-P [-e]] [-@]] [dir]"
+msgstr "cd [-L|[-P [-e]] [-@]] [<디렉터리>]"
 
 #: builtins.c:68
 msgid "pwd [-LP]"
@@ -2267,83 +2257,75 @@ msgstr "pwd [-LP]"
 
 #: builtins.c:76
 msgid "command [-pVv] command [arg ...]"
-msgstr "command [-pVv] command [arg ...]"
+msgstr "<명령> [-pVv] <명령> [<인자> ...]"
 
 #: builtins.c:78
-#, fuzzy
-msgid "declare [-aAfFgiIlnrtux] [-p] [name[=value] ...]"
-msgstr "declare [-aAfFgilnrtux] [-p] [name[=value] ...]"
+msgid "declare [-aAfFgiIlnrtux] [name[=value] ...] or declare -p [-aAfFilnrtux] [name ...]"
+msgstr "declare [-aAfFgilnrtux] [-p] [<이름>[=<값>] ...]"
 
 #: builtins.c:80
-#, fuzzy
-msgid "typeset [-aAfFgiIlnrtux] [-p] name[=value] ..."
-msgstr "typeset [-aAfFgilnrtux] [-p] name[=value] ..."
+msgid "typeset [-aAfFgiIlnrtux] name[=value] ... or typeset -p [-aAfFilnrtux] [name ...]"
+msgstr "typeset [-aAfFgilnrtux] [-p] <이름>[=<값>] ..."
 
 #: builtins.c:82
 msgid "local [option] name[=value] ..."
-msgstr "local [옵션] name[=value] ..."
+msgstr "local [<옵션>] <이름>[=<값>] ..."
 
 #: builtins.c:85
 msgid "echo [-neE] [arg ...]"
-msgstr "echo [-neE] [인자 ...]"
+msgstr "echo [-neE] [<인자> ...]"
 
 #: builtins.c:89
 msgid "echo [-n] [arg ...]"
-msgstr "echo [-n] [인자 ...]"
+msgstr "echo [-n] [<인자> ...]"
 
 #: builtins.c:92
 msgid "enable [-a] [-dnps] [-f filename] [name ...]"
-msgstr "enable [-a] [-dnps] [-f 파일명] [이름 ...]"
+msgstr "enable [-a] [-dnps] [-f <파일이름>] [<이름> ...]"
 
 #: builtins.c:94
 msgid "eval [arg ...]"
 msgstr "eval [인자 ...]"
 
 #: builtins.c:96
-#, fuzzy
 msgid "getopts optstring name [arg ...]"
-msgstr "getopts optstring name [arg]"
+msgstr "getopts optstring name [<인자> ...]"
 
 #: builtins.c:98
-#, fuzzy
 msgid "exec [-cl] [-a name] [command [argument ...]] [redirection ...]"
-msgstr "exec [-cl] [-a name] [command [arguments ...]] [redirection ...]"
+msgstr "exec [-cl] [-a <이름>] [<명령> [<인자> ...]] [<방향재지정> ...]"
 
 #: builtins.c:100
 msgid "exit [n]"
-msgstr "exit [n]"
+msgstr "exit [<번호>]"
 
 #: builtins.c:102
 msgid "logout [n]"
-msgstr "logout [n]"
+msgstr "logout [<번호>]"
 
 #: builtins.c:105
 msgid "fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]"
-msgstr "fc [-e ename] [-lnr] [first] [last] 또는 fc -s [pat=rep] [command]"
+msgstr "fc [-e <편집기이름>] [-lnr] [<처음>] [<종결>] 또는 fc -s [<패턴>=<대체>] [<명령>]"
 
 #: builtins.c:109
 msgid "fg [job_spec]"
-msgstr "fg [job_spec]"
+msgstr "fg [<JOBSPEC>]"
 
 #: builtins.c:113
 msgid "bg [job_spec ...]"
-msgstr "bg [job_spec ...]"
+msgstr "bg [<JOBSPEC> ...]"
 
 #: builtins.c:116
 msgid "hash [-lr] [-p pathname] [-dt] [name ...]"
-msgstr "hash [-lr] [-p pathname] [-dt] [name ...]"
+msgstr "hash [-lr] [-p <경로이름>] [-dt] [<이름> ...]"
 
 #: builtins.c:119
 msgid "help [-dms] [pattern ...]"
-msgstr "help [-dms] [패턴 ...]"
+msgstr "help [-dms] [<패턴> ...]"
 
 #: builtins.c:123
-msgid ""
-"history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg "
-"[arg...]"
-msgstr ""
-"history [-c] [-d 오프셋] [n] 또는 history -anrw [파일명] 또는 history -ps "
-"arg [인자...]"
+msgid "history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]"
+msgstr "history [-c] [-d <오프셋>] [n] 또는 history -anrw [<파일이름>] 또는 history -ps <인자> [<인자>...]"
 
 #: builtins.c:127
 msgid "jobs [-lnprs] [jobspec ...] or jobs -x command [args]"
@@ -2351,47 +2333,39 @@ msgstr "jobs [-lnprs] [jobspec ...] 또는 jobs -x command [args]"
 
 #: builtins.c:131
 msgid "disown [-h] [-ar] [jobspec ... | pid ...]"
-msgstr "disown [-h] [-ar] [jobspec ... | pid ...]"
+msgstr "disown [-h] [-ar] [<JOBSPEC> ... | <PID> ...]"
 
 #: builtins.c:134
-msgid ""
-"kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l "
-"[sigspec]"
-msgstr ""
-"kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... 또는 kill -l "
-"[sigspec]"
+msgid "kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]"
+msgstr "kill [-s <시그널명세> | -n <시그널번호> | -<시그널명세>] <PID> | <JOBSPEC> ... 또는 kill -l [<시그널명세>]"
 
 #: builtins.c:136
 msgid "let arg [arg ...]"
-msgstr "let arg [arg ...]"
+msgstr "let <인자> [<인자> ...]"
 
 #: builtins.c:138
-msgid ""
-"read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p "
-"prompt] [-t timeout] [-u fd] [name ...]"
-msgstr ""
-"read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p "
-"prompt] [-t timeout] [-u fd] [name ...]"
+msgid "read [-ers] [-a array] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]"
+msgstr "read [-ers] [-a <배열>] [-d <구분자>] [-i <텍스트>] [-n <문자수>] [-N <문자수>] [-p <프롬프트>] [-t <제한시간>] [-u <파일서술자>] [<이름> ...]"
 
 #: builtins.c:140
 msgid "return [n]"
 msgstr "return [n]"
 
 #: builtins.c:142
-msgid "set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]"
-msgstr "set [-abefhkmnptuvxBCHP] [-o 옵션이름] [--] [arg ...]"
+msgid "set [-abefhkmnptuvxBCEHPT] [-o option-name] [--] [-] [arg ...]"
+msgstr "set [-abefhkmnptuvxBCHP] [-o <옵션-이름>] [--] [<인자> ...]"
 
 #: builtins.c:144
 msgid "unset [-f] [-v] [-n] [name ...]"
-msgstr "unset [-f] [-v] [-n] [name ...]"
+msgstr "unset [-f] [-v] [-n] [<이름> ...]"
 
 #: builtins.c:146
 msgid "export [-fn] [name[=value] ...] or export -p"
-msgstr "export [-fn] [name[=value] ...] 또는 export -p"
+msgstr "export [-fn] [<이름>[=<값>] ...] 또는 export -p"
 
 #: builtins.c:148
 msgid "readonly [-aAf] [name[=value] ...] or readonly -p"
-msgstr "readonly [-aAf] [name[=value] ...] 또는 readonly -p"
+msgstr "readonly [-aAf] [<이름>[=<값>] ...] 또는 readonly -p"
 
 #: builtins.c:150
 msgid "shift [n]"
@@ -2399,11 +2373,11 @@ msgstr "shift [n]"
 
 #: builtins.c:152
 msgid "source filename [arguments]"
-msgstr "source 파일명 [인자들]"
+msgstr "source <파일이름> [<인자>]"
 
 #: builtins.c:154
 msgid ". filename [arguments]"
-msgstr ". 파일명 [인자들]"
+msgstr ". <파일이름> [<인자>]"
 
 #: builtins.c:157
 msgid "suspend [-f]"
@@ -2411,83 +2385,79 @@ msgstr "suspend [-f]"
 
 #: builtins.c:160
 msgid "test [expr]"
-msgstr "test [expr]"
+msgstr "test [<표현식>]"
 
 #: builtins.c:162
 msgid "[ arg... ]"
-msgstr "[ 인자... ]"
+msgstr "[ <인자>... ]"
 
 #: builtins.c:166
 msgid "trap [-lp] [[arg] signal_spec ...]"
-msgstr "trap [-lp] [[arg] signal_spec ...]"
+msgstr "trap [-lp] [[<인자>] <시그널_명세> ...]"
 
 #: builtins.c:168
 msgid "type [-afptP] name [name ...]"
-msgstr "type [-afptP] name [name ...]"
+msgstr "type [-afptP] <이름> [<이름> ...]"
 
 #: builtins.c:171
-msgid "ulimit [-SHabcdefiklmnpqrstuvxPT] [limit]"
-msgstr "ulimit [-SHabcdefiklmnpqrstuvxPT] [limit]"
+msgid "ulimit [-SHabcdefiklmnpqrstuvxPRT] [limit]"
+msgstr "ulimit [-SHabcdefiklmnpqrstuvxPT] [<한계값>]"
 
 #: builtins.c:174
 msgid "umask [-p] [-S] [mode]"
-msgstr "umask [-p] [-S] [모드]"
+msgstr "umask [-p] [-S] [<모드>]"
 
 #: builtins.c:177
-#, fuzzy
 msgid "wait [-fn] [-p var] [id ...]"
-msgstr "wait [-fn] [id ...]"
+msgstr "wait [-fn] [<ID> ...]"
 
 #: builtins.c:181
 msgid "wait [pid ...]"
-msgstr "wait [pid ...]"
+msgstr "wait [<PID> ...]"
 
 #: builtins.c:184
 msgid "for NAME [in WORDS ... ] ; do COMMANDS; done"
-msgstr "for NAME [in WORDS ... ] ; do COMMANDS; done"
+msgstr "for <이름> [in <여러단어> ... ] ; do <명령>; done"
 
 #: builtins.c:186
 msgid "for (( exp1; exp2; exp3 )); do COMMANDS; done"
-msgstr "for (( exp1; exp2; exp3 )); do COMMANDS; done"
+msgstr "for (( <조건식1>; <조건식2>; <조건식3> )); do <명령>; done"
 
 #: builtins.c:188
 msgid "select NAME [in WORDS ... ;] do COMMANDS; done"
-msgstr "select NAME [in WORDS ... ;] do COMMANDS; done"
+msgstr "select <이름> [in <여러단어> ... ;] do <명령>; done"
 
 #: builtins.c:190
 msgid "time [-p] pipeline"
-msgstr "time [-p] pipeline"
+msgstr "time [-p] <파이프라인>"
 
 #: builtins.c:192
 msgid "case WORD in [PATTERN [| PATTERN]...) COMMANDS ;;]... esac"
-msgstr "case 단어 in [패턴 [| 패턴]...) 명령어 ;;]... esac"
+msgstr "case <단어> in [<패턴> [| <패턴>]...) <명령> ;;]... esac"
 
 #: builtins.c:194
-msgid ""
-"if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else "
-"COMMANDS; ] fi"
-msgstr ""
-"if 명령어; then 명령어; [ elif 명령어; then 명령어; ]... [ else 명령어; ] fi"
+msgid "if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else COMMANDS; ] fi"
+msgstr "if <명령>; then <명령>; [ elif <명령>; then <명령>; ]... [ else <명령>; ] fi"
 
 #: builtins.c:196
-msgid "while COMMANDS; do COMMANDS; done"
-msgstr "while 명령어; do 명령어; done"
+msgid "while COMMANDS; do COMMANDS-2; done"
+msgstr "while <명령>; do <명령-2>; done"
 
 #: builtins.c:198
-msgid "until COMMANDS; do COMMANDS; done"
-msgstr "until 명령어; do 명령어; done"
+msgid "until COMMANDS; do COMMANDS-2; done"
+msgstr "until <명령>; do <명령-2>; done"
 
 #: builtins.c:200
 msgid "coproc [NAME] command [redirections]"
-msgstr "coproc [NAME] command [redirections]"
+msgstr "coproc [<이름>] <명령> [<방향재지정>]"
 
 #: builtins.c:202
 msgid "function name { COMMANDS ; } or name () { COMMANDS ; }"
-msgstr "function name { 명령어 ; } 또는 name () { 명령어 ; }"
+msgstr "function <이름> { <명령> ; } 또는 <이름> () { <명령> ; }"
 
 #: builtins.c:204
 msgid "{ COMMANDS ; }"
-msgstr "{ 명령어 ; }"
+msgstr "{ <명령> ; }"
 
 #: builtins.c:206
 msgid "job_spec [&]"
@@ -2495,75 +2465,55 @@ msgstr "job_spec [&]"
 
 #: builtins.c:208
 msgid "(( expression ))"
-msgstr "(( 표현식 ))"
+msgstr "(( <표현식> ))"
 
 #: builtins.c:210
 msgid "[[ expression ]]"
-msgstr "[[ 표현식 ]]"
+msgstr "[[ <표현식> ]]"
 
 #: builtins.c:212
 msgid "variables - Names and meanings of some shell variables"
-msgstr ""
+msgstr "variables - 이름이자 일부 셸 변수를 의미합니다"
 
 #: builtins.c:215
 msgid "pushd [-n] [+N | -N | dir]"
-msgstr "pushd [-n] [+N | -N | dir]"
+msgstr "pushd [-n] [+<갯수> | -<갯수> | <디렉터리>]"
 
 #: builtins.c:219
 msgid "popd [-n] [+N | -N]"
-msgstr "popd [-n] [+N | -N]"
+msgstr "popd [-n] [+<갯수> | -<갯수>]"
 
 #: builtins.c:223
 msgid "dirs [-clpv] [+N] [-N]"
-msgstr "dirs [-clpv] [+N] [-N]"
+msgstr "dirs [-clpv] [+<갯수>] [-<갯수>]"
 
 #: builtins.c:226
 msgid "shopt [-pqsu] [-o] [optname ...]"
-msgstr "shopt [-pqsu] [-o] [옵션이름...]"
+msgstr "shopt [-pqsu] [-o] [<옵션이름>...]"
 
 #: builtins.c:228
 msgid "printf [-v var] format [arguments]"
-msgstr "printf [-v 변수] format [인자]"
+msgstr "printf [-v <변수>] <출력형식> [<인자>]"
 
 #: builtins.c:231
-#, fuzzy
-msgid ""
-"complete [-abcdefgjksuv] [-pr] [-DEI] [-o option] [-A action] [-G globpat] [-"
-"W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S "
-"suffix] [name ...]"
-msgstr ""
-"complete [-abcdefgjksuv] [-pr] [-DEI] [-o option] [-A action] [-G globpat] [-"
-"W wordlist]  [-F function] [-C command] [-X filterpat] [-P prefix] [-S "
-"suffix] [name ...]"
+msgid "complete [-abcdefgjksuv] [-pr] [-DEI] [-o option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [name ...]"
+msgstr "complete [-abcdefgjksuv] [-pr] [-DEI] [-o <옵션>] [-A <동작>] [-G <글롭패턴>] [-W <단어목록>]  [-F <함수>] [-C <명령>] [-X <필터패턴>] [-P <접두어>] [-S <접미어>] [<이름> ...]"
 
 #: builtins.c:235
-#, fuzzy
-msgid ""
-"compgen [-abcdefgjksuv] [-o option] [-A action] [-G globpat] [-W wordlist] [-"
-"F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]"
-msgstr ""
-"compgen [-abcdefgjksuv] [-o option] [-A action] [-G globpat] [-W wordlist]  "
-"[-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]"
+msgid "compgen [-abcdefgjksuv] [-o option] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] [word]"
+msgstr "compgen [-abcdefgjksuv] [-o <옵션>] [-A <동작>] [-G <글롭패턴>] [-W <단어목록>]  [-F <함수>] [-C <명령>] [-X <필터패턴>] [-P <접두어>] [-S <접미어>] [<단어>]"
 
 #: builtins.c:239
 msgid "compopt [-o|+o option] [-DEI] [name ...]"
-msgstr "compopt [-o|+o option] [-DEI] [name ...]"
+msgstr "compopt [-o|+o <옵션>] [-DEI] [<이름> ...]"
 
 #: builtins.c:242
-msgid ""
-"mapfile [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C "
-"callback] [-c quantum] [array]"
-msgstr ""
-"mapfile [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C "
-"callback] [-c quantum] [array]"
+msgid "mapfile [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]"
+msgstr "mapfile [-d <구분자>] [-n <갯수>] [-O <시작>] [-s <갯수>] [-t] [-u <파일서술자>] [-C <콜백>] [-c <양자>] [<배열>]"
 
 #: builtins.c:244
-msgid ""
-"readarray [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C "
-"callback] [-c quantum] [array]"
-msgstr ""
-"readarray [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C "
-"callback] [-c quantum] [array]"
+msgid "readarray [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]"
+msgstr "readarray [-d <구분자>] [-n <갯수>] [-O <시작>] [-s <갯수>] [-t] [-u <파일서술자>] [-C <콜백>] [-c <양자>] [<배열>]"
 
 #: builtins.c:256
 msgid ""
@@ -2580,10 +2530,23 @@ msgid ""
 "      -p\tprint all defined aliases in a reusable format\n"
 "    \n"
 "    Exit Status:\n"
-"    alias returns true unless a NAME is supplied for which no alias has "
-"been\n"
+"    alias returns true unless a NAME is supplied for which no alias has been\n"
 "    defined."
 msgstr ""
+"별칭을 지정하거나 표시합니다.\n"
+"    \n"
+"    인자가 없다면, `alias'는 `alias <이름>=<값>' 형식으로 표준 출력에\n"
+"    별칭 목록을 출력합니다.\n"
+"    \n"
+"    그렇지 않으면 <값>을 부여한 각 <이름>을 지정합니다.\n"
+"    <값>에 공백 문자를 덧붙이면 별칭을 확장할 때 별칭 대체 대상\n"
+"    문자열의 다음 단어를 확인합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -p\t재사용 형식으로 지정한 모든 별칭을 출력합니다\n"
+"    \n"
+"    종료 상태:\n"
+"    별칭으로 지정한 <이름>을 확인하면 참을 반환합니다."
 
 #: builtins.c:278
 msgid ""
@@ -2594,6 +2557,12 @@ msgid ""
 "    \n"
 "    Return success unless a NAME is not an existing alias."
 msgstr ""
+"지정 별칭의 목록에서 각 <이름>을 제거합니다\n"
+"    \n"
+"    옵션:\n"
+"      -a\t모든 별칭 지정 항목을 제거합니다.\n"
+"    \n"
+"    <이름>이 기존 별칭일 경우 성공을 반환합니다."
 
 #: builtins.c:291
 msgid ""
@@ -2607,35 +2576,61 @@ msgid ""
 "    Options:\n"
 "      -m  keymap         Use KEYMAP as the keymap for the duration of this\n"
 "                         command.  Acceptable keymap names are emacs,\n"
-"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-"
-"move,\n"
+"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,\n"
 "                         vi-command, and vi-insert.\n"
 "      -l                 List names of functions.\n"
 "      -P                 List function names and bindings.\n"
 "      -p                 List functions and bindings in a form that can be\n"
 "                         reused as input.\n"
-"      -S                 List key sequences that invoke macros and their "
-"values\n"
-"      -s                 List key sequences that invoke macros and their "
-"values\n"
+"      -S                 List key sequences that invoke macros and their values\n"
+"      -s                 List key sequences that invoke macros and their values\n"
 "                         in a form that can be reused as input.\n"
 "      -V                 List variable names and values\n"
 "      -v                 List variable names and values in a form that can\n"
 "                         be reused as input.\n"
 "      -q  function-name  Query about which keys invoke the named function.\n"
-"      -u  function-name  Unbind all keys which are bound to the named "
-"function.\n"
+"      -u  function-name  Unbind all keys which are bound to the named function.\n"
 "      -r  keyseq         Remove the binding for KEYSEQ.\n"
 "      -f  filename       Read key bindings from FILENAME.\n"
 "      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
 "    \t\t\t\tKEYSEQ is entered.\n"
-"      -X                 List key sequences bound with -x and associated "
-"commands\n"
+"      -X                 List key sequences bound with -x and associated commands\n"
 "                         in a form that can be reused as input.\n"
 "    \n"
 "    Exit Status:\n"
 "    bind returns 0 unless an unrecognized option is given or an error occurs."
 msgstr ""
+"readline 키 바인딩과 값을 설정합니다.\n"
+"    \n"
+"    키 시퀀스를 readline 함수 또는 매크로에 바인딩하거나, readline\n"
+"    변수에 설정합니다.  옵션을 지정하지 않은 인자 문법은 ~/.inputrc\n"
+"    에서 찾을 수 있는 문법과 동일합니다만 단일 인자로 전달해야 합니다.\n"
+"    예: bind '\"\\C-x\\C-r\": re-read-init-file'\n"
+"    \n"
+"    옵션:\n"
+"    -m <키매핑>        <키매핑>을 이 명령 실행동안 사용하는 키매핑\n"
+"                         으로 활용합니다.  허용할 수 있는 키매핑 이름은 emacs,\n"
+"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,\n"
+"                         vi-command, vi-insert가 있습니다.\n"
+"      -l                 함수 이름 목록.\n"
+"      -P                 함수 이름 및 바인딩 목록.\n"
+"      -p                 입력에 다시 활용할 수 있는 형식의 함수 이름과 바인딩 목록.\n"
+"      -S                 매크로와 값을 실행하는 키 시퀀스 목록\n"
+"      -s                 입력으로 다시 활용할 수 있는 매크로와 값을 실행하는\n"
+"                         키 시퀀스 목록.\n"
+"      -V                 변수 이름과 값 목록\n"
+"      -v                 입력으로 다시 활용할 수 있는 변수 이름과 값 목록.\n"
+"      -q  <함수이름>     어떤 키가 명명 함수를 실행하는지 요청.\n"
+"      -u  <함수이름>     명명 함수에 바인딩한 모든 키의 바인딩 해제.\n"
+"      -r  <키시퀀스>     <키시퀀스>의 바인딩 제거.\n"
+"      -f  <파일이름>     <파일이름>의 키 바인딩 읽기.\n"
+"      -x  <키시퀀스>:<셸명령>\t<키시퀀스>를 입력하면 <셸명령>을\n"
+"    \t\t\t\t실행하게 합.\n"
+"      -X                 입력으로 다시 활용할 수 있는 -x로 지정한 키 시퀀스\n"
+"                         및 관련 명령 목록\n"
+"    \n"
+"    종료 상태:\n"
+"    알 수 없는 옵션을 지정하지 않았거나 오류가 없으면 0을 반환합니다."
 
 #: builtins.c:330
 msgid ""
@@ -2647,6 +2642,13 @@ msgid ""
 "    Exit Status:\n"
 "    The exit status is 0 unless N is not greater than or equal to 1."
 msgstr ""
+"for, while, until 반복문을 나갑니다.\n"
+"    \n"
+"    FOR, WHILE, UNTIL 반복문을 나갑니다. <횟수>를 지정하면,\n"
+"    반복 <횟수>에 도달했을 때 중단합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <횟수>가 1보다 크거나 같으면 0입니다."
 
 #: builtins.c:342
 msgid ""
@@ -2658,6 +2660,13 @@ msgid ""
 "    Exit Status:\n"
 "    The exit status is 0 unless N is not greater than or equal to 1."
 msgstr ""
+"for, while, until 반복문을 다시 실행합니다.\n"
+"    \n"
+"    FOR, WHILE, UNTIL 반복문의 다음 반복 실행을 진행합니다.\n"
+"    <횟수>를 지정하면 <횟수> 만큼 다시 실행합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <횟수>가 1보다 크거나 같으면 0입니다."
 
 #: builtins.c:354
 msgid ""
@@ -2665,13 +2674,21 @@ msgid ""
 "    \n"
 "    Execute SHELL-BUILTIN with arguments ARGs without performing command\n"
 "    lookup.  This is useful when you wish to reimplement a shell builtin\n"
-"    as a shell function, but need to execute the builtin within the "
-"function.\n"
+"    as a shell function, but need to execute the builtin within the function.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns the exit status of SHELL-BUILTIN, or false if SHELL-BUILTIN is\n"
 "    not a shell builtin."
 msgstr ""
+"셸 내장 명령을 실행합니다.\n"
+"    \n"
+"    <셸내장명령>을 명령 검색 동작 없이 <인자>를 지정하여 실행합니다.\n"
+"    셸 내장 명령을 셸 함수로 재구현할 때 쓸만합니다만, 내장 명령은\n"
+"    함수 안에서 실행해야합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <셸내장명령>의 종료 상태를 반환하거나 <셸내장명령>이 내장\n"
+"    명령이 아닐 경우 거짓을 반환합니다."
 
 #: builtins.c:369
 msgid ""
@@ -2688,27 +2705,29 @@ msgid ""
 "    Returns 0 unless the shell is not executing a shell function or EXPR\n"
 "    is invalid."
 msgstr ""
+"현재 하위루틴 호출 컨텍스트를 반환합니다.\n"
+"    \n"
+"    <표현식>이 없다면 \"$line $filename\"을 반환하며, <표현식>을 지정했다면\n"
+"    \"$line $subroutine $filename\"을 반환합니다. 추가 정보는 스택 트레이스\n"
+"    에 활용할 수 있습니다.\n"
+"    \n"
+"    <표현식>의 값은 현재 호출 프레임으로부터 얼마나 되돌아가야 하는지를\n"
+"    나타냅니다. 최상단 프레임은 프레임 0번입니다."
 
 #: builtins.c:387
 msgid ""
 "Change the shell working directory.\n"
 "    \n"
-"    Change the current directory to DIR.  The default DIR is the value of "
-"the\n"
+"    Change the current directory to DIR.  The default DIR is the value of the\n"
 "    HOME shell variable.\n"
 "    \n"
-"    The variable CDPATH defines the search path for the directory "
-"containing\n"
-"    DIR.  Alternative directory names in CDPATH are separated by a colon "
-"(:).\n"
-"    A null directory name is the same as the current directory.  If DIR "
-"begins\n"
+"    The variable CDPATH defines the search path for the directory containing\n"
+"    DIR.  Alternative directory names in CDPATH are separated by a colon (:).\n"
+"    A null directory name is the same as the current directory.  If DIR begins\n"
 "    with a slash (/), then CDPATH is not used.\n"
 "    \n"
-"    If the directory is not found, and the shell option `cdable_vars' is "
-"set,\n"
-"    the word is assumed to be  a variable name.  If that variable has a "
-"value,\n"
+"    If the directory is not found, and the shell option `cdable_vars' is set,\n"
+"    the word is assumed to be  a variable name.  If that variable has a value,\n"
 "    its value is used for DIR.\n"
 "    \n"
 "    Options:\n"
@@ -2724,15 +2743,45 @@ msgid ""
 "    \t\tattributes as a directory containing the file attributes\n"
 "    \n"
 "    The default is to follow symbolic links, as if `-L' were specified.\n"
-"    `..' is processed by removing the immediately previous pathname "
-"component\n"
+"    `..' is processed by removing the immediately previous pathname component\n"
 "    back to a slash or the beginning of DIR.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns 0 if the directory is changed, and if $PWD is set successfully "
-"when\n"
+"    Returns 0 if the directory is changed, and if $PWD is set successfully when\n"
 "    -P is used; non-zero otherwise."
 msgstr ""
+"셸 작업 디렉터리를 바꿉니다.\n"
+"    \n"
+"    현재 디렉터리를 <디렉터리>로 바꿉니다. 기본 <디렉터리>는 HOME 셸 변수\n"
+"    값입니다.\n"
+"    \n"
+"    CDPATH 변수에는 <디렉터리> 값이 들어간 디렉터리 검색 경로를 지정합니다.\n"
+"    CDPATH의 대안 디렉터리 이름은 콜론으로 구분합니다. 널 디렉터리 이름은 \n"
+"    현재 디렉터리와 같습니다.  <디렉터리> 값이 슬래시 문자(/)로 시작하면, \n"
+"    CDPATH 변수를 사용하지 않습니다.\n"
+"    \n"
+"    디렉터리가 없고, `cdable_vars' 셸 옵션을 설정했다면, 단어를 변수 이름으로\n"
+"    가정합니다. 변수에 값이 들어가있다면, 해당 값을 <디렉터리> 값으로 활용\n"
+"    합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -L\t강제로 심볼릭 링크를 따라갑니다. <디렉터리>의 심볼릭 링크를\n"
+"    \t\t`..' 인스턴스를 처리한 다음에 해석합니다.\n"
+"      -P\t심볼릭 링크를 따르지 않고 실제 디렉터리 구조를 활용합니다.\n"
+"    \t\t`..' 인스턴스를 처리하기 전에 <디렉터리>의 심볼릭 링크를\n"
+"    \t\t해석합니다.\n"
+"      -e\t-P 옵션을 지정하고, 현재 디렉터리를 제대로 식별하지 못하면\n"
+"    \t\t0이 아닌 상태 값으로 나갑니다\n"
+"      -@\t이 옵션을 지원하는 시스템에서는 파일 속성이 들어간\n"
+"    \t\t디렉터리처럼 확장 속성을 가진 파일을 나타냅니다\n"
+"    \n"
+"    `-L' 옵션을 지정했을 때와 같이 심볼릭 링크를 따라가는게 기본 동작입니다.\n"
+"    `..'은 이전 경로 이름 요소를 즉시 제거하여 슬래시 경로로 돌아가거나\n"
+"    <디렉터리>의 시작점으로 돌아갑니댜.\n"
+"    \n"
+"    종료 상태:\n"
+"    디렉터리가 바뀌었고 -P 옵션을 사용했을 때 $PWD 값을 제대로 설정하면\n"
+"    0 값을 반환하며, 그렇지 않으면 0이 아닌 값을 반환합니다."
 
 #: builtins.c:425
 msgid ""
@@ -2749,6 +2798,16 @@ msgid ""
 "    Returns 0 unless an invalid option is given or the current directory\n"
 "    cannot be read."
 msgstr ""
+"현재 작업 디렉터리의 이름을 출력합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -L\t$PWD값의 이름이 현재 작업 디렉터리일 경우 값을 출력\n"
+"      -P\t심볼릭 링크가 아닌 물리 디렉터리를 출력\n"
+"    \n"
+"    기본적으로 `pwd'에는 `-L' 옵션이 붙어있습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션이 붙었거나 현재 디렉터리를 읽을 수 있다면 0을 반환합니다."
 
 #: builtins.c:442
 msgid ""
@@ -2761,7 +2820,7 @@ msgid ""
 msgstr ""
 "Null 명령.\n"
 "    \n"
-"    효과 없음; 아무것도 하지 않습니다.\n"
+"    효과 없음. 아무것도 하지 않습니다.\n"
 "    \n"
 "    종료 상태:\n"
 "    항상 성공합니다."
@@ -2773,7 +2832,7 @@ msgid ""
 "    Exit Status:\n"
 "    Always succeeds."
 msgstr ""
-"성공적인 결과를 반환합니다.\n"
+"성공 결과를 반환합니다.\n"
 "    \n"
 "    종료 상태:\n"
 "    항상 성공합니다."
@@ -2785,19 +2844,17 @@ msgid ""
 "    Exit Status:\n"
 "    Always fails."
 msgstr ""
-"실패 결과를 반환합니다.\n"
+"실패 결과를 반환합니다.\n"
 "    \n"
 "    종료 상태:\n"
 "    항상 실패합니다."
 
 #: builtins.c:471
-#, fuzzy
 msgid ""
 "Execute a simple command or display information about commands.\n"
 "    \n"
 "    Runs COMMAND with ARGS suppressing  shell function lookup, or display\n"
-"    information about the specified COMMANDs.  Can be used to invoke "
-"commands\n"
+"    information about the specified COMMANDs.  Can be used to invoke commands\n"
 "    on disk when a function with the same name exists.\n"
 "    \n"
 "    Options:\n"
@@ -2809,21 +2866,20 @@ msgid ""
 "    Exit Status:\n"
 "    Returns exit status of COMMAND, or failure if COMMAND is not found."
 msgstr ""
-"간단한 명령을 실행하거나 명령에 관한 정보를 표시합니다..\n"
+"간단한 명령을 실행하거나 명령 정보를 표시합니다.\n"
 "    \n"
-"    Runs COMMAND with ARGS suppressing  shell function lookup, or display\n"
-"    information about the specified COMMANDs.  Can be used to invoke "
-"commands\n"
-"    on disk when a function with the same name exists.\n"
+"    셸 함수 탐색을 억제하는 <인자>로 <명령>을 실행하거나, 지정 <명령>의 정보를\n"
+"    나타냅니다.  동일한 이름을 가진 함수가 있을 때 디스크의 명령을 실행할 경우\n"
+"    활용할 수 있습니다.\n"
 "    \n"
 "    옵션:\n"
-"      -p    표준 유틸리티를 전부 찾을 수 있다고 보장된 PATH의\n"
-"            기본 값을 사용합니다.\n"
-"      -v    `type' ë¹\8cí\8a¸ì\9d¸ê³¼ ì\9c ì\82¬í\95\9c ëª\85ë ¹의 설명을 보여줍니다\n"
-"      -V    각 명령에 관해 더 상세한 정보를 보여줍니다\n"
+"      -p    표준 유틸리티를 전부 찾을 수 있다고 보장하는\n"
+"            PATH 기본값을 사용합니다.\n"
+"      -v    `type' ë\82´ì\9e¥ ëª\85령과 ë¹\84ì\8a·í\95\98ê²\8c <ëª\85ë ¹>의 설명을 보여줍니다\n"
+"      -V    각 <명령>의 더 자세한 정보를 보여줍니다\n"
 "    \n"
 "    종료 상태:\n"
-"    명령의 실행 결과를 반환하거나 명령이 없을 경우 오류를 반환합니다."
+"    <명령>의 실행 결과를 반환하거나 <명령>이 없을 경우 오류를 반환합니다."
 
 #: builtins.c:490
 msgid ""
@@ -2858,14 +2914,50 @@ msgid ""
 "    Variables with the integer attribute have arithmetic evaluation (see\n"
 "    the `let' command) performed when the variable is assigned a value.\n"
 "    \n"
-"    When used in a function, `declare' makes NAMEs local, as with the "
-"`local'\n"
+"    When used in a function, `declare' makes NAMEs local, as with the `local'\n"
 "    command.  The `-g' option suppresses this behavior.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or a variable\n"
 "    assignment error occurs."
 msgstr ""
+"변수 값과 속성을 설정합니다.\n"
+"    \n"
+"    변수를 선언하고 속성을 부여합니다. <이름>을 정하지 않으면,\n"
+"    속성과 모든 변수 값을 나타냅니다.\n"
+"    \n"
+"    옵션:\n"
+"      -f\t함수 이름과 정의로 동작과 표시를 제한합니다\n"
+"      -F\t함수 이름만 표시를 제한합니다 (디버깅할 때는 행 번호와\n"
+"    \t\t소스 파일 포함)\n"
+"      -g\t셸 함수에서 사용할 때 전역 변수를 만듭니다. 아니면 무시\n"
+"      -I\t지역 변수를 만들 때, 이전 범위의 같은 이름을 가진 속성과\n"
+"    \t\t변수값을 이어받습니다\n"
+"      -p\t속성과 각 <이름>의 값을 표시합니다\n"
+"    \n"
+"    속성을 설정하는 옵션:\n"
+"      -a\t<이름>을 색인 배열로 만듬 (지원할 경우)\n"
+"      -A\t<이름>을 연관 배열로 만듬 (지원할 경우)\n"
+"      -i\t<이름>을 `정수' 속성을 가지게 함\n"
+"      -l\t각 <이름>의 할당 값을 소문자로 변환\n"
+"      -n\t<이름> 값으로 지정한 이름을 참조하게 함\n"
+"      -r\t<이름>을 읽기 전용으로 설정\n"
+"      -t\t<이름>에 `trace' 속성을 가지게 함\n"
+"      -u\t각 <이름>의 할당 값을 대문자로 변환\n"
+"      -x\t<이름>을 내보냄\n"
+"    \n"
+"    주어진 속성을 사용하려면 `+'를 끄려면 `-'를 사용합니다.\n"
+"    \n"
+"    정수 속성 변수는 변수에 값을 할당하면 산술 연산을 수행\n"
+"    합니다 (`let' 명령 참고).\n"
+"    \n"
+"    함수에서 사용할 때, `declare' 명령은 `local' 명령처럼\n"
+"    <이름>을 로컬 변수로 만듭니다.  `-g' 옵션은 이 동작을\n"
+"    억제합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 설정했거나 변수 할당 오류가 없다면\n"
+"    성공을 반환합니다."
 
 #: builtins.c:532
 msgid ""
@@ -2891,13 +2983,23 @@ msgid ""
 "    Returns success unless an invalid option is supplied, a variable\n"
 "    assignment error occurs, or the shell is not executing a function."
 msgstr ""
+"지역 변수를 지정합니다.\n"
+"    \n"
+"    <이름> 지역 변수를 만들고 <값>을 부여합니다.  <옵션>은 `declare'\n"
+"    로 받아들일 수 있는 어떤 옵션도 가능합니다.\n"
+"    \n"
+"    지역 변수는 함수 내에서만 활용할 수 있습니다. 하위 요소에서 지정했다면,\n"
+"    역시 하위 함수에서만 볼 수 있습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 지정했거나, 변수 할당에 오류가 없거나,\n"
+"    셸에서 함수를 실행하면 성공을 반환합니다."
 
 #: builtins.c:557
 msgid ""
 "Write arguments to the standard output.\n"
 "    \n"
-"    Display the ARGs, separated by a single space character and followed by "
-"a\n"
+"    Display the ARGs, separated by a single space character and followed by a\n"
 "    newline, on the standard output.\n"
 "    \n"
 "    Options:\n"
@@ -2921,16 +3023,43 @@ msgid ""
 "    \t\t0 to 3 octal digits\n"
 "      \\xHH\tthe eight-bit character whose value is HH (hexadecimal).  HH\n"
 "    \t\tcan be one or two hex digits\n"
-"      \\uHHHH\tthe Unicode character whose value is the hexadecimal value "
-"HHHH.\n"
+"      \\uHHHH\tthe Unicode character whose value is the hexadecimal value HHHH.\n"
 "    \t\tHHHH can be one to four hex digits.\n"
-"      \\UHHHHHHHH the Unicode character whose value is the hexadecimal "
-"value\n"
+"      \\UHHHHHHHH the Unicode character whose value is the hexadecimal value\n"
 "    \t\tHHHHHHHH. HHHHHHHH can be one to eight hex digits.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns success unless a write error occurs."
 msgstr ""
+"표준 출력에 인자를 기록합니다.\n"
+"    \n"
+"    단일 공백문자로 구분하며 개행 문자가 따라오는 <인자>를\n"
+"    표준 출력에 나타냅니다.\n"
+"    \n"
+"    옵션:\n"
+"      -n\t개행 문자 추가 안함\n"
+"      -e\t추가 백슬래시 탈출 문자 처리 활성\n"
+"      -E\t백슬래시 탈출 문자 처리를 명백하게 무시\n"
+"    \n"
+"    `echo' 명령은 다음 백슬래시 탈출 문자를 처리합니다:\n"
+"      \a\t경고 (알림음)\n"
+"      \\b\t백스페이스\n"
+"      \\c\t이후 출력 무시\n"
+"      \\e\t탈출 문자\n"
+"      \\E\t탈출 문자\n"
+"      \\f\t폼 피드\n"
+"      \\n\t개행 문자\n"
+"      \\r\t캐리지 리턴\n"
+"      \\t\t수평 탭\n"
+"      \\v\t수직탭\n"
+"      \\\\\t백슬래시\n"
+"      \\0nnn\t8진수 ASCII 코드 문자.  NNN은 최대 3자리 8진수\n"
+"      \\xHH\t16진수 8비트 문자.  HH는 2자리 16진수\n"
+"      \\uHHHH\t16진수 유니코드 문자. HHHH는 4자리 16진수\n"
+"      \\UHHHHHHHH 16진수 유니코드 문자. HHHHHHHH는 8자리 16진수\n"
+"    \n"
+"    종료 상태:\n"
+"    기록 오류가 없으면 성공을 반환합니다."
 
 #: builtins.c:597
 msgid ""
@@ -2944,6 +3073,15 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless a write error occurs."
 msgstr ""
+"표준 출력에 인자를 기록합니다.\n"
+"    \n"
+"    <인자> 값과 줄바꿈을 표준 출력에 나타냅니다.\n"
+"    \n"
+"    옵션:\n"
+"      -n\t개행 문자 추가 안함\n"
+"    \n"
+"    종료 상태:\n"
+"    기록 오류가 없다면 성공을 반환합니다."
 
 #: builtins.c:612
 msgid ""
@@ -2971,18 +3109,47 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless NAME is not a shell builtin or an error occurs."
 msgstr ""
+"셸 내장 명령을 사용 혹은 미사용처리 합니다.\n"
+"    \n"
+"    내장 셸 명령을 사용/미사용 처리합니다. 미사용 처리하면 전체 경로 이름을\n"
+"    지정하지 않고도 셸 내장명령처럼 동일한 이름을 가진 디스크 명령을 실행할\n"
+"    수 있습니다\n"
+"    \n"
+"    옵션:\n"
+"      -a\t내장 명령의 활성 여부를 나타내는 목록을 출력합니다\n"
+"      -n\t각 <이름>을 미사용 처리하거나 미사용 내장 명령 목록을 출력합니다\n"
+"      -p\t재활용 형식으로 내장 명령 목록을 출력합니다\n"
+"      -s\tPOSIX `특수' 내장 명령 이름만 출력합니다\n"
+"    \n"
+"    동적 불러오기를 제어하는 옵션은 다음과 같습니다:\n"
+"      -f\t<파일이름> 공유 객체의 내장 <이름>을 불러옵니다\n"
+"      -d\t-f로 불러온 내장 명령을 제거합니다\n"
+"    \n"
+"    옵션을 지정하지 않으면, 각 <이름>을 사용합니다.\n"
+"    \n"
+"    셸 내장 버전 대신 $PATH에서 찾은 `test'를 활용하려면,\n"
+"    `enable -n test'를 입력하십시오.\n"
+"    \n"
+"    종료 상태:\n"
+"    <이름>이 셸 내장 명령이고 오류가 없으면 성공을 반환합니다."
 
 #: builtins.c:640
 msgid ""
 "Execute arguments as a shell command.\n"
 "    \n"
-"    Combine ARGs into a single string, use the result as input to the "
-"shell,\n"
+"    Combine ARGs into a single string, use the result as input to the shell,\n"
 "    and execute the resulting commands.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns exit status of command or success if command is null."
 msgstr ""
+"인자를 셸 명령으로 실행합니다.\n"
+"    \n"
+"    <인자>를 단일 문자열에 결합하여 셸 입력 결과로 할용한 다음,\n"
+"    결과를 내는 명령으로 실행합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    명령 값이 있다면 종료 상태를, null 이라면 성공을 반환합니다."
 
 #: builtins.c:652
 msgid ""
@@ -3024,14 +3191,48 @@ msgid ""
 "    Returns success if an option is found; fails if the end of options is\n"
 "    encountered or an error occurs."
 msgstr ""
+"옵션 인자를 해석합니다.\n"
+"   \n"
+"    getopts는 위치 매개변수를 옵션으로 해석하는 셸 프로시저에서\n"
+"    활용합니다.\n"
+"    \n"
+"    <옵션문자열>에는 식별할 옵션 문자가 들어갑니다. 문자에 콜론이\n"
+"    뒤따라 붙을 경우, 옵션에 공백 문자로 구분한 인자가 뒤따라오는\n"
+"    것으로 간주합니다.\n"
+"    \n"
+"    실행할 때마다, getopts에서 $name 셸 변수의 다음 옵션을 확인하여\n"
+"    해당 옵션이 없을 경우  이름을 초기화하고 OPTIND 셸 변수에 다음\n"
+"    인자의 색인을 처리합니다.  OPTIND는 셸 또는 셸 스크립트를 실행\n"
+"    할 때마다 1로 초기화합니다.  옵션에 인자가 필요하면, getopts에서\n"
+"    해당 인자를 OPTARG 셸 변수에 넣습니다.\n"
+"    \n"
+"    getopts는 두가지 방법으로 오류를 나타냅니다.  OPTSTRING의 첫번째\n"
+"    문자가 콜론이면, getopts에서는 오류 보고시 조용한 상태로 바뀝니다.\n"
+"    이 때, 어떤 오류 메시지도 나타나지 않습니다.  그런데 부적절한 옵션이\n"
+"    나타나면, getopts에서 OPTARG의 잘못된 옵션 문자를 찾아 가리킵니다.\n"
+"    필요한 인자가 없다면, getopts는 콜론을 <이름>에 대입하고, OPTARG \n"
+"    변수에는 찾은 옵션 문자를 할당합니다. getopts가 미출력 상태가 아니고,\n"
+"    부적절한 옵션을 확인했다면, getopts는 '?' 값을 <이름>에 대입하고, \n"
+"    OPTARG 설정을 해제합니다. 필요한 인자가 없다면 '?' 값이 <이름>에\n"
+"    들어가고, OPTARG 변수 설정을 해제하며, 진단 메시지를 출력합니다.\n"
+"    \n"
+"    OPTERR 셸 변수값이 0이면, getopts에서는 오류 메시지 출력을 하지\n"
+"    않습니다. OPTSTRING 첫번째 문자가 콜론이 아니더라도, 기본적으로\n"
+"    OPTERR 셸 변수값에는 1이 들어가 있습니다.\n"
+"    \n"
+"    getopts는 보통 위치 매개변수를 해석하지만, <인자> 값처럼 인자를\n"
+"    지정하면, 해당 값을 먼저 해석합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    옵션을 찾으면 성공을 반환합니다.옵션의 끝에 도달했거나, 오류가\n"
+"     나타나면 실패를 반환합니다."
 
 #: builtins.c:694
 msgid ""
 "Replace the shell with the given command.\n"
 "    \n"
 "    Execute COMMAND, replacing this shell with the specified program.\n"
-"    ARGUMENTS become the arguments to COMMAND.  If COMMAND is not "
-"specified,\n"
+"    ARGUMENTS become the arguments to COMMAND.  If COMMAND is not specified,\n"
 "    any redirections take effect in the current shell.\n"
 "    \n"
 "    Options:\n"
@@ -3039,14 +3240,28 @@ msgid ""
 "      -c\texecute COMMAND with an empty environment\n"
 "      -l\tplace a dash in the zeroth argument to COMMAND\n"
 "    \n"
-"    If the command cannot be executed, a non-interactive shell exits, "
-"unless\n"
+"    If the command cannot be executed, a non-interactive shell exits, unless\n"
 "    the shell option `execfail' is set.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success unless COMMAND is not found or a redirection error "
-"occurs."
+"    Returns success unless COMMAND is not found or a redirection error occurs."
 msgstr ""
+"셸을 주어진 명령으로 대체합니다.\n"
+"    \n"
+"    이 셸을 지정 프로그램으로 대체하는 <명령>을 실행합니다.\n"
+"     <인자>는 <명령>을 따라갑니다. <명령>을 지정하지 않으면,\n"
+"    현재 셸의 어떤 방향재지정 명령이든 결과가 나타납니다.\n"
+"    \n"
+"    옵션:\n"
+"      -a <이름>\t<이름>을 <명령>의 0번째 인자로 전달합니다\n"
+"      -c\t빈 환경에서 <명령>을 실행합니다\n"
+"      -l\t<명령>의 0번째 인자로 대시 문자를 둡니다\n"
+"    \n"
+"    명령을 실행할 수 없다면, `execfail' 셸 옵션을 설정하지 않았을 경우,\n"
+"    비대화식 셸을 나갑니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <명령>이 있거나 방향재지정 실행시 오류가 없다면 성공을 반환합니다."
 
 #: builtins.c:715
 msgid ""
@@ -3055,33 +3270,34 @@ msgid ""
 "    Exits the shell with a status of N.  If N is omitted, the exit status\n"
 "    is that of the last command executed."
 msgstr ""
+"셸을 나갑니다.\n"
+"    \n"
+"    <번호> 값 상태로 셸을 나갑니다.  <번호>를 지정하지 않으면,\n"
+"    종료 상태는 최종 명령 실행 상태와 동일합니다."
 
 #: builtins.c:724
 msgid ""
 "Exit a login shell.\n"
 "    \n"
-"    Exits a login shell with exit status N.  Returns an error if not "
-"executed\n"
+"    Exits a login shell with exit status N.  Returns an error if not executed\n"
 "    in a login shell."
 msgstr ""
-"ë¡\9cê·¸ì\9d¸ ì\89\98을 나갑니다.\n"
+"ë¡\9cê·¸ì\9d¸ ì\85¸을 나갑니다.\n"
 "    \n"
-"    ì¢\85ë£\8c ì\83\81í\83\9c Nì\9c¼ë¡\9c ë¡\9cê·¸ì\9d¸ ì\89\98ì\9d\84 ë\82\98ê°\91ë\8b\88ë\8b¤.  ë¡\9cê·¸ì\9d¸ ì\89\98에서 실행되지 않는 경우\n"
+"    ì¢\85ë£\8c ì\83\81í\83\9c Nì\9c¼ë¡\9c ë¡\9cê·¸ì\9d¸ ì\85¸ì\9d\84 ë\82\98ê°\91ë\8b\88ë\8b¤.  ë¡\9cê·¸ì\9d¸ ì\85¸에서 실행되지 않는 경우\n"
 "    에러가 발생합니다."
 
 #: builtins.c:734
 msgid ""
 "Display or execute commands from the history list.\n"
 "    \n"
-"    fc is used to list or edit and re-execute commands from the history "
-"list.\n"
+"    fc is used to list or edit and re-execute commands from the history list.\n"
 "    FIRST and LAST can be numbers specifying the range, or FIRST can be a\n"
 "    string, which means the most recent command beginning with that\n"
 "    string.\n"
 "    \n"
 "    Options:\n"
-"      -e ENAME\tselect which editor to use.  Default is FCEDIT, then "
-"EDITOR,\n"
+"      -e ENAME\tselect which editor to use.  Default is FCEDIT, then EDITOR,\n"
 "    \t\tthen vi\n"
 "      -l \tlist lines instead of editing\n"
 "      -n\tomit line numbers when listing\n"
@@ -3095,9 +3311,30 @@ msgid ""
 "    the last command.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success or status of executed command; non-zero if an error "
-"occurs."
+"    Returns success or status of executed command; non-zero if an error occurs."
 msgstr ""
+"기록 목록의 명령을 표시하거나 실행합니다.\n"
+"    \n"
+"    fc는 기록 목록의 명령을 보여주거나 편집하고 다시 실행할 때 사용합니다.\n"
+"    <처음>과 <종결>은 범위 지정 숫자이며, <처음>은 문자열일 수도 있습니다.\n"
+"    이는, 최근 명령이 <처음>에 지정한 문자열로 시작함을 의미합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -e <편집기이름>\t사용할 편집기를 선택합니다.  기본은 FCEDIT, EDITOR, \n"
+"    \t\t그 다음은 vi입니다\n"
+"      -l \t편집하지 않고 목록 행을 보여줍니다\n"
+"      -n\t목록을 나타낼 때 번호를 생략합니다\n"
+"      -r\t행 순서를 뒤집습니다 (최신 항목을 먼저)\n"
+"    \n"
+"    `fc -s [<패턴>=<대체> ...] [<명령>]' 형식에서, <명령> 은\n"
+"    <이전>=<최신> 대체 동작을 수행한 다음 다시 실행합니다.\n"
+"    \n"
+"    r='fc -s'(으)로 쓸만한 별칭을 만들어 쓸 수 있는데, `r cc'를 입력하면\n"
+"    `cc'로 시작하는 최근 명령을 실행하고 `r'을 입력하면 직전에 입력한\n"
+"    최근 명령을 다시 실행할 수 있습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    성공 또는 실행 명령 상태를 반환합니다. 오류가 있다면 0이 아닌 값을 반환합니다."
 
 #: builtins.c:764
 msgid ""
@@ -3110,28 +3347,41 @@ msgid ""
 "    Exit Status:\n"
 "    Status of command placed in foreground, or failure if an error occurs."
 msgstr ""
+"작업을 포그라운드로 이동합니다.\n"
+"    \n"
+"    JOB_SPEC으로 식별하는 작업을 포그라운드에 두어, 현재 작업으로\n"
+"    전환합니다. JOB_SPEC이 현재 작업이 아니면, 셸의 개념상 현재 작업을\n"
+"    활용합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    포그라운드에 있는 명령의 상태를 반환합니다. 오류가 있다면 실패를 반환합니다."
 
 #: builtins.c:779
 msgid ""
 "Move jobs to the background.\n"
 "    \n"
-"    Place the jobs identified by each JOB_SPEC in the background, as if "
-"they\n"
-"    had been started with `&'.  If JOB_SPEC is not present, the shell's "
-"notion\n"
+"    Place the jobs identified by each JOB_SPEC in the background, as if they\n"
+"    had been started with `&'.  If JOB_SPEC is not present, the shell's notion\n"
 "    of the current job is used.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns success unless job control is not enabled or an error occurs."
 msgstr ""
+"작업을 백그라운드로 이동합니다.\n"
+"    \n"
+"    `&'로 시작했을 때와 마찬가지로, 각 JOB_SPEC으로 식별하는 작업을\n"
+"    백그라운드에 둡니다. JOB_SPEC이 없다면, 셸의 개념상 현재 작업을\n"
+"    활용합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    작업 컨트롤이 있고 오류가 없다면 성공을 반환합니다."
 
 #: builtins.c:793
 msgid ""
 "Remember or display program locations.\n"
 "    \n"
 "    Determine and remember the full pathname of each command NAME.  If\n"
-"    no arguments are given, information about remembered commands is "
-"displayed.\n"
+"    no arguments are given, information about remembered commands is displayed.\n"
 "    \n"
 "    Options:\n"
 "      -d\tforget the remembered location of each NAME\n"
@@ -3148,6 +3398,24 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless NAME is not found or an invalid option is given."
 msgstr ""
+"프로그램 위치를 기억하거나 표시합니다.\n"
+"    \n"
+"    명령 <이름>의 전체 경로 이름을 판단하거나 기억합니다.  어떤 인자도\n"
+"    설정하지 않으면, 기억한 명령의 정보를 표시합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -d\t각 <이름>의 기억 위치를 소거합니다\n"
+"      -l\t입력으로 재활용할 형식을 표시합니다\n"
+"      -p <경로이름>\t<이름> 의 전체 경로 이름으로 <경로이름>을 활용합니다\n"
+"      -r\t기억한 모든 위치를 소거합니다\n"
+"      -t\t각 <이름>의 기억 위치를 출력하며 여러 <이름>을 지정했을 경우,\n"
+"    \t\t<이름>에 해당하는 각 위치를 우선 나타냅니다\n"
+"    인자:\n"
+"      <이름>\t각 <이름>은 $PATH에서 검색하며 기억 명령에 대해 목록에\n"
+"    \t\t추가합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <이름>을 찾았거나 적절한 옵션을 지정했다면 성공을 반환합니다."
 
 #: builtins.c:818
 msgid ""
@@ -3167,9 +3435,24 @@ msgid ""
 "      PATTERN\tPattern specifying a help topic\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success unless PATTERN is not found or an invalid option is "
-"given."
+"    Returns success unless PATTERN is not found or an invalid option is given."
 msgstr ""
+"내장 명령 정보를 표시합니다.\n"
+"    \n"
+"    내장 명령 요약 정보를 표시합니다.  <패턴>을 지정하면 <패턴>에 일치\n"
+"    하는 모든 명령의 자세한 내용을 나타내며, 그렇지 않으면 도움말 주제 \n"
+"    목록을 나타냅니다.\n"
+"    \n"
+"    옵션:\n"
+"      -d\t각 주제의 간단한 설명을 출력합니다\n"
+"      -m\t유사 맨 페이지 형식으로 사용법을 출력합니다.\n"
+"      -s\t<패턴>에 일치하는 주제의 간단한 개요만 출력합니다\n"
+"    \n"
+"    인자:\n"
+"      <패턴>\t도움말 주제를 지정합니다\n"
+"    \n"
+"    종료 상태:\n"
+"    <패턴>에 일치하는 주제를 찾았거나 적절한 옵션을 지정하면 성공을 반환합니다."
 
 #: builtins.c:842
 msgid ""
@@ -3199,12 +3482,41 @@ msgid ""
 "    \n"
 "    If the HISTTIMEFORMAT variable is set and not null, its value is used\n"
 "    as a format string for strftime(3) to print the time stamp associated\n"
-"    with each displayed history entry.  No time stamps are printed "
-"otherwise.\n"
+"    with each displayed history entry.  No time stamps are printed otherwise.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or an error occurs."
 msgstr ""
+"기록 목록을 표시하거나 편집합니다.\n"
+"    \n"
+"    기록 목록에 행번호를 붙여 나타내며, 수정한 항목은 `*' 표시가\n"
+"    앞에 붙습니다.  인자 N은 최근 항목 N개만 나타냄을 의미합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -c\t모든 항목을 삭제하여 기록 목록을 지웁니다\n"
+"      -d <오프셋>\t<오프셋> 포지션에 있는 항목을 삭제합니다. 음수\n"
+"    \t\t오프셋은 기록 목록 끝부터 거꾸로 셉니다\n"
+"    \n"
+"      -a\t이 세선의 기록 파일에 기록 행을 추가합니다\n"
+"      -n\t기록 파일에서 이미 읽은 부분은 읽지 않고 모든 기록 항목을\n"
+"    \t\t읽어 기록 목록에 추가합니다\n"
+"      -r\t기록 파일을 읽고 기록 목록에 내용을 추가합니다\n"
+"      -w\t현재 기록을 기록 파일에 기록합니다\n"
+"    \n"
+"      -p\t각 <인자>의 기록 확장을 수행한 후 기록 목록에 저장하지\n"
+"    \t\t않고 결과를 표시합니다\n"
+"      -s\t<인자>를 기록 목록에 단일 항목으로 추가합니다\n"
+"    \n"
+"    <파일이름>을 지정하면 기록 파일로 사용합니다.  아니면,\n"
+"    HISTFILE 변수에 값을 지정했다면 해당 값을 사용하고, \n"
+"    아니면 ~/.bash_history를 활용합니다.\n"
+"    \n"
+"    HISTTIMEFORMAT 변수에 값을 설정하여 널 상태가 아니라면 해당 값을\n"
+"    앞으로 표시할 각 기록 항목에 대한 타임스탬프를 출력할 때 strftime(3)의\n"
+"    형식 문자열로 활용합니다.  그렇지 않으면 타임스탬프를 출력하지 않습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 설정했거나 오류가 없다면 성공을 반환합니다."
 
 #: builtins.c:879
 msgid ""
@@ -3229,6 +3541,25 @@ msgid ""
 "    Returns success unless an invalid option is given or an error occurs.\n"
 "    If -x is used, returns the exit status of COMMAND."
 msgstr ""
+"작업 상태를 표시합니다.\n"
+"    \n"
+"    활성 작업을 나타냅니다.  JOBSPEC에는 해당 작업의 출력을\n"
+"    제한합니다. 옵션을 지정하지 않으면 모든 활성 작업 상태를\n"
+"    나타냅니다.\n"
+"    \n"
+"    옵션:\n"
+"      -l\t일반 정보 및 프로세스 ID를 보여줍니다.\n"
+"      -n\t최근 알림 이후 상태가 바뀐 프로세스만 보여줍니다.\n"
+"      -p\t프로세스 ID만 보여줍니다\n"
+"      -r\t출력 대상을 실행 작업으로 제한합니다\n"
+"      -s\t출력 대상을 멈춘 작업으로 제한합니다\n"
+"    \n"
+"    -x 옵션을 지정하면 <인자>에 나타난 모든 작업 명세가 프로세스 그룹의\n"
+"    리더 프로세스 ID로 바뀐 후 <명령> 을 실행합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 설정했거나 오류가 없다면 성공을 반환합니다.\n"
+"    -x 옵션을 사용했다면 <명령>의 종료 상태를 반환합니다."
 
 #: builtins.c:906
 msgid ""
@@ -3246,6 +3577,19 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option or JOBSPEC is given."
 msgstr ""
+"현재 셸에서 작업을 제거합니다.\n"
+"    \n"
+"    각 <JOBSPEC> 인자를 활성 작업 테이블에서 제거합니다.  어떤 <JOBSPEC>도\n"
+"    지정하지 않으면, 현재 작업을 지정한 것으로 간주합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -a\t<JOBSPEC>를 지정하지 않으면 모든 작업을 제거합니다\n"
+"      -h\t각 <JOBSPEC>을 마킹해서 셸에서 SIGHUP 시그널을 받았다면\n"
+"    \t\t작업에 해당 시그널을 보내지 않게 합니다.\n"
+"      -r\t실행 작업만 제거합니다\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 지정하고 주어진 <JOBSPEC> 값이 올바를 경우 성공을 반환합니다."
 
 #: builtins.c:925
 msgid ""
@@ -3269,6 +3613,25 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or an error occurs."
 msgstr ""
+"작업에 시그널을 보냅니다..\n"
+"    \n"
+"    <PID> 또는 <JOBSPEC>으로 식별하는 프로세스에 SIGSPEC 또는\n"
+"    SIGNUM으로 이름이 붙은 시그널을 보냅니다. SIGSPEC, SIGNUM \n"
+"    돌 다 없을 경우, SIGTERM을 고려합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -s <시그널>\t<시그널>은 시그널 이름입니다\n"
+"      -n <시그널>\t<시그널>은 시그널 번호입니다\n"
+"      -l\t시그널 이름 목록을 나타냅니다. 인자에 `-l'을 붙이면 나타낼 이름에\n"
+"    \t\t대한 시그널 번호를 나타내라는 의미입니다\n"
+"      -L\t-l과 동일한 의미\n"
+"    \n"
+"    두가지 이유로 kill은 셸 내장 명령입니다: 프로세스 ID  대신 작업 ID를\n"
+"    허용하며, 만들 수 있는 프로세스 수의 한계에 도달했을 때 강제로 끝내야\n"
+"    할 프로세스를 강제로 끝낼 수 있습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 설정했거나 오류가 없다면 성공을 반환합니다."
 
 #: builtins.c:949
 msgid ""
@@ -3277,8 +3640,7 @@ msgid ""
 "    Evaluate each ARG as an arithmetic expression.  Evaluation is done in\n"
 "    fixed-width integers with no check for overflow, though division by 0\n"
 "    is trapped and flagged as an error.  The following list of operators is\n"
-"    grouped into levels of equal-precedence operators.  The levels are "
-"listed\n"
+"    grouped into levels of equal-precedence operators.  The levels are listed\n"
 "    in order of decreasing precedence.\n"
 "    \n"
 "    \tid++, id--\tvariable post-increment, post-decrement\n"
@@ -3314,22 +3676,57 @@ msgid ""
 "    Exit Status:\n"
 "    If the last ARG evaluates to 0, let returns 1; let returns 0 otherwise."
 msgstr ""
+"산술 연산을 처리합니다.\n"
+"    \n"
+"    각 <인자>의 산술 연산을 처리합니다. 오버플로우를 검사하지 않고\n"
+"    고정 길이 정수로 처리하며, 0나누기 동작은 잡혀서 오류로 표시합니다.\n"
+"    다음 연산자 목록은 동일한 우선순위별로 묶었습니다. 우선순위 수준은\n"
+"    우선순위가 감소하는 순서대로 나열했습니다.\n"
+"    \n"
+"    \tid++, id--\t변수의 후위 증가, 후위 감소\n"
+"    \t++id, --id\t변수의 전위 증가, 전위 감소\n"
+"    \t-, +\t\t음, 양 부호\n"
+"    \t!, ~\t\t논리, 비트 반전\n"
+"    \t**\t\t지수 연산\n"
+"    \t*, /, %\t\t곱하기, 나누기, 나머지\n"
+"    \t+, -\t\t더하기, 빼기\n"
+"    \t<<, >>\t\t좌측, 우측 비트 이동\n"
+"    \t<=, >=, <, >\t비교\n"
+"    \t==, !=\t\t동등, 상이\n"
+"    \t&\t\t비트 논리곱\n"
+"    \t^\t\t비트 배타합\n"
+"    \t|\t\t비트 논리합\n"
+"    \t&&\t\t논리 논리곱\n"
+"    \t||\t\t논리 논리합\n"
+"    \t<수식> ? <수식> : <수식>\n"
+"    \t\t\t3항 조건 연산자\n"
+"    \t=, *=, /=, %=,\n"
+"    \t+=, -=, <<=, >>=,\n"
+"    \t&=, ^=, |=\t할당\n"
+"    \n"
+"    셸 변수를 피연산자로 활용할 수 있습니다. 수식 내 변수 이름은 값으로 \n"
+"    바뀝니다(고정 길이 정수로 강제 변환)  변수는 수식에서 활용할 정수 \n"
+"    속성을 가질 필요는 없습니다.\n"
+"    \n"
+"    연산자는 우선순위 순서대로 처리합니다.  괄호 내 하위 연산을 우선\n"
+"    처리하며, 이 또한 위의 우선순위 규칙을 따릅니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <인자>가 0을 계산하면 1을 반환하고 그렇지 않으면 0을 반환합니다."
 
 #: builtins.c:994
 msgid ""
 "Read a line from the standard input and split it into fields.\n"
 "    \n"
 "    Reads a single line from the standard input, or from file descriptor FD\n"
-"    if the -u option is supplied.  The line is split into fields as with "
-"word\n"
+"    if the -u option is supplied.  The line is split into fields as with word\n"
 "    splitting, and the first word is assigned to the first NAME, the second\n"
 "    word to the second NAME, and so on, with any leftover words assigned to\n"
-"    the last NAME.  Only the characters found in $IFS are recognized as "
-"word\n"
-"    delimiters.\n"
+"    the last NAME.  Only the characters found in $IFS are recognized as word\n"
+"    delimiters. By default, the backslash character escapes delimiter characters\n"
+"    and newline.\n"
 "    \n"
-"    If no NAMEs are supplied, the line read is stored in the REPLY "
-"variable.\n"
+"    If no NAMEs are supplied, the line read is stored in the REPLY variable.\n"
 "    \n"
 "    Options:\n"
 "      -a array\tassign the words read to sequential indices of the array\n"
@@ -3341,8 +3738,7 @@ msgid ""
 "      -n nchars\treturn after reading NCHARS characters rather than waiting\n"
 "    \t\tfor a newline, but honor a delimiter if fewer than\n"
 "    \t\tNCHARS characters are read before the delimiter\n"
-"      -N nchars\treturn only after reading exactly NCHARS characters, "
-"unless\n"
+"      -N nchars\treturn only after reading exactly NCHARS characters, unless\n"
 "    \t\tEOF is encountered or read times out, ignoring any\n"
 "    \t\tdelimiter\n"
 "      -p prompt\toutput the string PROMPT without a trailing newline before\n"
@@ -3360,14 +3756,48 @@ msgid ""
 "      -u fd\tread from file descriptor FD instead of the standard input\n"
 "    \n"
 "    Exit Status:\n"
-"    The return code is zero, unless end-of-file is encountered, read times "
-"out\n"
-"    (in which case it's greater than 128), a variable assignment error "
-"occurs,\n"
+"    The return code is zero, unless end-of-file is encountered, read times out\n"
+"    (in which case it's greater than 128), a variable assignment error occurs,\n"
 "    or an invalid file descriptor is supplied as the argument to -u."
 msgstr ""
+"표준 입력에서 행을 읽고 필드 단위로 분리합니다.\n"
+"    \n"
+"    표준 입력 또는 -u 옵션을 지정했을 경우 파일 서술자에서 단일 행을\n"
+"    읽습니다.  행은 단어를 분리할 때처럼 필드로 분리하며, 첫번째 단어는\n"
+"    처음 <이름>으로, 두번째 단어는 두번째 <이름>으로 이런 식으로 할당\n"
+"    하여 나머지 단어에서도 역시 그 다음 <이름>으로 할당합니다. 오직 $IFS\n"
+"    의 문자만 단어 구분자로 인식합니다. 기본적으로 백슬래시 문자는 구분\n"
+"    문자와 개행 문자를 이스케이핑합니다.\n"
+"    \n"
+"    <이름>을 지정하지 않으면, 해당 행을 REPLY 변수에 저장합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -a <배열>\t0부터 시작하는 ARRAY 배열 변수의 순차 색인을 읽을\n"
+"    \t\t단어를 할당합니다\n"
+"      -d <구분>\t개행 문자가 아닌 DELIM의 첫 글자를 읽을 때까지 계속합니다\n"
+"      -e\t행 읽기에 readline을 활용합니다\n"
+"      -i <텍스트>\treadline 초기 텍스트 값으로 TEXT를 활용합니다.\n"
+"      -n <문자수>\t개행 문자를 기다리기 보다는 <문자수> 만큼의 문자를 읽은 다음\n"
+"    \t\t반환합니다만, 구분 문자가 나타나기 전에 <문자수> 만큼 읽었을 때 개행 문자가\n"
+"    \t\t먼저 오면 구분 문자보다 개행 문자를 우선 처리합니다.\n"
+"      -N <문자수>\tEOF가 나타났거나, 읽기 시간 초과가 있지 않은 한,\n"
+"    \t\t<문자수> 만큼 문자를 읽은 다음 구분자를 무시하고 값을 반환합니다.\n"
+"      -p <프롬프트>\t읽기 전, 개행 문자를 제외하고 PROMPT 문자열을 출력합니다\n"
+"      -r\t문자를 이스케이핑하는 백슬래시 문자를 허용하지 않습니다\n"
+"      -s\t터미널의 입력에 대해 반향 출력 처리하지 않습니다\n"
+"      -t <제한시간>\tTIIMEOUT 초 이내에 입력 행을 완전히 읽지 않으면 실패를\n"
+"    \t\t반환합니다.  TMOUT 변수 기본 값은 기본 제한시간입니다. TIMEOUT은\n"
+"    \t\t분수 값입니다. 이 값을 0으로 지정하면, 어떤 결과를 읽으려 시도하지 않고\n"
+"    \t\t읽은 결과를 바로 반환하며, 지정 파일 서술자에 입력이 있을 경우에만\n"
+"    \t\t성공을 반환합니다. 시간을 초과하면 종료 상태값은 128보다 큽니다.\n"
+"      -u <파일서술자>\t표준 입력 대신 파일 서술자에서 읽습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    EOF가 나타나지 않았다거나, 읽기 시간을 초과하지 않았다거나(초과하면 \n"
+"    128보다 큰 수 반환), 변수 할당 오류가 없었다거나, -u 옵션에 잘못된 파일\n"
+"     서술자를 지정하지 않았다면 0 값을 반환합니다."
 
-#: builtins.c:1041
+#: builtins.c:1042
 msgid ""
 "Return from a shell function.\n"
 "    \n"
@@ -3378,8 +3808,17 @@ msgid ""
 "    Exit Status:\n"
 "    Returns N, or failure if the shell is not executing a function or script."
 msgstr ""
+"셸 함수로부터 값을 반환합니다.\n"
+"    \n"
+"    함수 또는 소싱 스크립트로 하여금 반환 값을 내놓도록 합니다.\n"
+"    <횟수>로 지정합니다. <횟수> 값을 생략하면, 반환 상태는\n"
+"    스크립트 함수 내 최종 명령 실행 결과에 따릅니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <횟수>를 반환하거나, 셸에서 함수 또는 스크립트를\n"
+"    실행하지 않으면 실패를 반환합니다."
 
-#: builtins.c:1054
+#: builtins.c:1055
 msgid ""
 "Set or unset values of shell options and positional parameters.\n"
 "    \n"
@@ -3422,8 +3861,7 @@ msgid ""
 "              physical     same as -P\n"
 "              pipefail     the return value of a pipeline is the status of\n"
 "                           the last command to exit with a non-zero status,\n"
-"                           or zero if no command exited with a non-zero "
-"status\n"
+"                           or zero if no command exited with a non-zero status\n"
 "              posix        change the behavior of bash where the default\n"
 "                           operation differs from the Posix standard to\n"
 "                           match the standard\n"
@@ -3447,8 +3885,7 @@ msgid ""
 "          by default when the shell is interactive.\n"
 "      -P  If set, do not resolve symbolic links when executing commands\n"
 "          such as cd which change the current directory.\n"
-"      -T  If set, the DEBUG and RETURN traps are inherited by shell "
-"functions.\n"
+"      -T  If set, the DEBUG and RETURN traps are inherited by shell functions.\n"
 "      --  Assign any remaining arguments to the positional parameters.\n"
 "          If there are no remaining arguments, the positional parameters\n"
 "          are unset.\n"
@@ -3464,8 +3901,84 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given."
 msgstr ""
+"셸 옵션과 위치 매개변수를 설정 또는 설정 해제합니다.\n"
+"    \n"
+"    셸 속성 값 및 위치 매개변수를 바꾸거나, 셸 변수의 이름과 값을\n"
+"    표시합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -a  환경으로 내보내려 수정하거나 만든 변수를 표시합니다.\n"
+"      -b  작업 중단 알림을 즉시 수행.\n"
+"      -e  명령이 0 값이 아닌 상태를 내보냈다면 즉시 나감.\n"
+"      -f  파일 이름 생성 사용 안힘(글로빙).\n"
+"      -h  찾은 명령 위치 기억.\n"
+"      -k  명령 이름에 앞선 요소 뿐만 아니라 명령 실행에 필요한 모든\n"
+"          할당 인자를 환경에 설정합니다.\n"
+"      -m  작업 컨트롤을 활성합니다..\n"
+"      -n  명령은 읽되 실행하지는 않습니다.\n"
+"      -o <명령-이름>\n"
+"          <옵션-이름>과 관련한 변수를 설정합니다:\n"
+"              allexport    -a와 동일\n"
+"              braceexpand  -B와 동일\n"
+"              emacs        이맥스 방식 행 편집 인터페이스 활용\n"
+"              errexit      -e와 동일\n"
+"              errtrace     -E와 동일\n"
+"              functrace    -T와 동일\n"
+"              hashall      -h와 동일\n"
+"              histexpand   -H와 동일\n"
+"              history      명령 기록 사용\n"
+"              ignoreeof    EOF를 읽고 나서 셸을 나가지 않음\n"
+"              interactive-comments\n"
+"                           interactive commands에 나타난 주석 허용\n"
+"              keyword      -k와 동일\n"
+"              monitor      -m과 동일\n"
+"              noclobber    -C와 동일\n"
+"              noexec       -n과 동일\n"
+"              noglob       -f와 동일\n"
+"              nolog        현재 허용하나 무시함\n"
+"              notify       -b와 동일\n"
+"              nounset      -u와 동일\n"
+"              onecmd       -t와 동일\n"
+"              physical     -P와 동일\n"
+"              pipefail     파이프라인 반환 값은 최종 명령의 0이 아닌\n"
+"                           종료 상태이거나, 0이 아닌 종료 상태를 반환한 명령이\n"
+"                           없다면 0 값을 반환함\n"
+"              posix        배시 동작을 바꾸어 POSIX 표준과 다른 기본 동작\n"
+"                           부분을 표준에 맞춤\n"
+"              privileged   -p와 동일\n"
+"              verbose      -v와 동일\n"
+"              vi           vi 방식 행 종결 인터페이스\n"
+"              xtrace       -x와 동일\n"
+"      -p  실제 ID와 효력상 ID가 일치하지 않을 때라도 켭니다.\n"
+"          $ENV 파일의 처리와 셸 함수 가져오기 동작을 끕니다.\n"
+"          이 옵션을 끄면 효력상 사용자 ID와 그룹 ID를 실제\n"
+"          사용자 ID와 그룹 ID로 설정합니다.\n"
+"      -t  명령하나를 읽고 실행한 후 나갑니다.\n"
+"      -u  설정 해제한 변수를 대체할 때 오류로 간주.\n"
+"      -v  셸 입력 행을 읽는대로 출력합니다.\n"
+"      -x  명령과 인자를 실행하는 대로 출력합니다.\n"
+"      -B  셸에 중괄호 확장을 수행하게 합니다\n"
+"      -C  이 옵션을 설정하면, 기존 일반 파일에 출력 방향 재지정을 통한\n"
+"          내용 덮어쓰기를 허용하지 않습니다.\n"
+"      -E  이 옵션을 설정하면, ERR 트랩을 셸 함수에서 승계합니다.\n"
+"      -H  ! 방식 기록 대체를 활성화합니다.  이 플래그는 셸이 대화모드일 떄\n"
+"          기본적으로 사용 상태입니다..\n"
+"      -P  이 옵션을 설정하면, 현재 디렉터리를 바꾸는 cd 명령과 같은 그련\n"
+"          명령을 실행할 때 심볼릭 링크를 해석하지 않습니다.\n"
+"      -T  이 옵션을 설정하면, DEBUG와 RETURN을 셸 함수에서 계승합니다..\n"
+"      --  남은 인자를 위치 매개변수로 할당합니다. 남은 인자가 없으면\n"
+"          위치 매개변수를 삭제합니다.\n"
+"      -   남은 인자를 위치 매개변수로 할당합니다. -x 옵션과 -v 옵션을 끕니다.\n"
+"    \n"
+"    플래그를 사용하려면 + 를, 아니면 - 기호를 씁니다.  플래그는 셸 실행애\n"
+"    활용할 수도 있습니다. 현재 플래그 셋은 $-에 있습니다. 남은 <인자>는\n"
+"    $1, $2, ... $n 순으로 할당한 위치 매개변수입니다. 지정 <인자>가 없으면\n"
+"    모든 셸 변수를 출력합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 지정하면 성공을 반환합니다."
 
-#: builtins.c:1139
+#: builtins.c:1140
 msgid ""
 "Unset values and attributes of shell variables and functions.\n"
 "    \n"
@@ -3477,8 +3990,7 @@ msgid ""
 "      -n\ttreat each NAME as a name reference and unset the variable itself\n"
 "    \t\trather than the variable it references\n"
 "    \n"
-"    Without options, unset first tries to unset a variable, and if that "
-"fails,\n"
+"    Without options, unset first tries to unset a variable, and if that fails,\n"
 "    tries to unset a function.\n"
 "    \n"
 "    Some variables cannot be unset; also see `readonly'.\n"
@@ -3486,14 +3998,30 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or a NAME is read-only."
 msgstr ""
+"셸 변수와 함수의 값과 속성 설정을 해제합니다.\n"
+"    \n"
+"    각 <이름>에 대해 관련 변수 또는 함수를 제거합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -f\t각 <이름>을 셸 함수로 취급합니다.\n"
+"      -v\t각 <이름>을 셸 변수로 취급합니다.\n"
+"      -n\t각 <이름>을 이름 참조자로 활용하며, 이름을 참조하는 변수가 아닌\n"
+"    \t\t변수 자체를 참조하는 이름 설정을 해제합니다\n"
+"    \n"
+"    옵션을 지정하지 않으면, 변수를 우선 설정 해제하려고 하며, 실패했다면,\n"
+"    함수 설정 해제를 시도합니다.\n"
+"    \n"
+"    일부 변수는 설정을 해제할 수 없습니다. `readonly' 참조.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 지정했거나 <이름>이 읽기 전용이 아니면 성공을 반환합니다."
 
-#: builtins.c:1161
+#: builtins.c:1162
 msgid ""
 "Set export attribute for shell variables.\n"
 "    \n"
 "    Marks each NAME for automatic export to the environment of subsequently\n"
-"    executed commands.  If VALUE is supplied, assign VALUE before "
-"exporting.\n"
+"    executed commands.  If VALUE is supplied, assign VALUE before exporting.\n"
 "    \n"
 "    Options:\n"
 "      -f\trefer to shell functions\n"
@@ -3505,8 +4033,22 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or NAME is invalid."
 msgstr ""
+"셸 변수 속성을 내보내기 설정합니다.\n"
+"    \n"
+"    각 <이름>은 명령을 계속 실행해나가면서 환경에 내보내기(export)처리 합니다.\n"
+"    <값>을 지정했다면 내보내기(export) 전, <값>을 할당합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -f\t셸 함수를 참조합니다\n"
+"      -n\t각 <이름>의 내보내기 속성을 제거합니다\n"
+"      -p\t환경에 내보낸 변수와 함수 목록을 나타냅니다\n"
+"    \n"
+"    `--' 인자는 이후 옵션 처리를 막습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 설정했거나 <이름>이 올바르면 성공을 반환합니다."
 
-#: builtins.c:1180
+#: builtins.c:1181
 msgid ""
 "Mark shell variables as unchangeable.\n"
 "    \n"
@@ -3526,8 +4068,25 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is given or NAME is invalid."
 msgstr ""
+"셸 변수를 바꾸지 못하게 합니다.\n"
+"    \n"
+"    각 <이름>을 읽기 전용으로 만듭니다. 이 <이름>의 값은 앞으로의 할당\n"
+"    동작에서 바뀌지 않습니다. <값>을 지정했다면 읽기 전용으로 지정하기 전\n"
+"    <값>부터 할당합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -a\t색인 배열 변수를 참조합니다\n"
+"      -A\t연관 배열 변수를 참조합니다\n"
+"      -f\t셸 함수를 참조합니다\n"
+"      -p\t-f 옵션의 지정 여부에 따라 모든 읽기 전용 변수\n"
+"    \t\t또는 함수를 표시합니다\n"
+"    \n"
+"    `--' 인자는 이후 옵션 처리를 중단합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 지정했거나 <이름>이 올바르면 성공을 반환합니다."
 
-#: builtins.c:1202
+#: builtins.c:1203
 msgid ""
 "Shift positional parameters.\n"
 "    \n"
@@ -3537,8 +4096,15 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless N is negative or greater than $#."
 msgstr ""
+"위치 매개변수를 이동합니다.\n"
+"    \n"
+"    <초기횟수> 값을 지정하지 않으면 , $<초기횟수>+1, $<초기횟수>+2,\n"
+"     ... $1, $2 ... 로 위치 매개변수 이름을 바꾸며, <초기횟수> 값은 1로 가정합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <횟수>가 양수거나 $# 보다 작거나 같으면 성공을 반환합니다."
 
-#: builtins.c:1214 builtins.c:1229
+#: builtins.c:1215 builtins.c:1230
 msgid ""
 "Execute commands from a file in the current shell.\n"
 "    \n"
@@ -3551,8 +4117,17 @@ msgid ""
 "    Returns the status of the last command executed in FILENAME; fails if\n"
 "    FILENAME cannot be read."
 msgstr ""
+"현재 셸의 파일에서 명령을 실행합니다.\n"
+"    \n"
+"    현제 셸의 <파일이름>에서 명령을 읽고 실행합니다. $PATH 항목은 <파일\n"
+"    이름>에 있는 디렉터리를 찾을 때 활용합니다. <인자>를 지정했다면, \n"
+"    <파일이름>을 실행할 때 위치 매개 변수가 따라옵니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <파일이름>의 마지막 명령 실행 상태를 반환합니다. <파일이름>을\n"
+"    읽지 못하면, 실패를 반환합니다."
 
-#: builtins.c:1245
+#: builtins.c:1246
 msgid ""
 "Suspend shell execution.\n"
 "    \n"
@@ -3565,19 +4140,18 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless job control is not enabled or an error occurs."
 msgstr ""
-"ì\89\98 ì\8b¤í\96\89ì\9d\84 ì\9d¼ì\8b\9cì \95ì§\80í\95©니다.\n"
+"ì\85¸ ì\8b¤í\96\89ì\9d\84 ì\9e ì\8b\9c ë©\88ì¶¥니다.\n"
 "    \n"
-"    SIGCONT ì\8b í\98¸ë¥¼ ë°\9bì\9d\84 ë\95\8c ê¹\8cì§\80 ì\89\98의 실행을 일시 정지합니다.\n"
-"    ê°\95ì \9c ì\98µì\85\98ì\9d´ ì\97\86ë\8a\94 ê²½ì\9a° ë¡\9cê·¸ì\9d¸ ì\89\98은 일시 정지될 수 없습니다.\n"
+"    SIGCONT ì\8b\9cê·¸ë\84\90를 ë°\9bì\9d\84 ë\95\8c ê¹\8cì§\80 ì\85¸의 실행을 일시 정지합니다.\n"
+"    ê°\95ì \9c ì\98µì\85\98ì\9d´ ì\97\86ë\8a\94 ê²½ì\9a° ë¡\9cê·¸ì\9d¸ ì\85¸은 일시 정지될 수 없습니다.\n"
 "    \n"
 "    옵션:\n"
-"      -f\të¡\9cê·¸ì\9d¸ ì\89\98의 경우에도 일시 정지를 강제합니다.\n"
+"      -f\të¡\9cê·¸ì\9d¸ ì\85¸의 경우에도 일시 정지를 강제합니다.\n"
 "    \n"
 "    종료 상태:\n"
-"    job control이 활성화되지 않았거나 오류가 발생하지 않으면 성공을 반환합니"
-"다."
+"    작업 컨트롤이 동작하거나 오류가 없으면 성공을 반환합니다."
 
-#: builtins.c:1261
+#: builtins.c:1262
 msgid ""
 "Evaluate conditional expression.\n"
 "    \n"
@@ -3611,8 +4185,7 @@ msgid ""
 "      -x FILE        True if the file is executable by you.\n"
 "      -O FILE        True if the file is effectively owned by you.\n"
 "      -G FILE        True if the file is effectively owned by your group.\n"
-"      -N FILE        True if the file has been modified since it was last "
-"read.\n"
+"      -N FILE        True if the file has been modified since it was last read.\n"
 "    \n"
 "      FILE1 -nt FILE2  True if file1 is newer than file2 (according to\n"
 "                       modification date).\n"
@@ -3633,8 +4206,7 @@ msgid ""
 "      STRING1 != STRING2\n"
 "                     True if the strings are not equal.\n"
 "      STRING1 < STRING2\n"
-"                     True if STRING1 sorts before STRING2 "
-"lexicographically.\n"
+"                     True if STRING1 sorts before STRING2 lexicographically.\n"
 "      STRING1 > STRING2\n"
 "                     True if STRING1 sorts after STRING2 lexicographically.\n"
 "    \n"
@@ -3659,33 +4231,118 @@ msgid ""
 "    Returns success if EXPR evaluates to true; fails if EXPR evaluates to\n"
 "    false or an invalid argument is given."
 msgstr ""
+"조건식을 처리합니다.\n"
+"    \n"
+"    <표현식>의 계산 결과에 따라 0(참) 또는 1(거짓) 상태 값을\n"
+"    내며 빠져나옵니다.  수식은 단항 수식 또는 이항 수식일 수 있습니다.\n"
+"    단항 수식은 보통 파일 상태를 확인할 때 사용합니다.  숫자 비교 \n"
+"    연산자와 마찬가지로 문자열 연산자도 있습니다.\n"
+"    \n"
+"    테스트 동작은 인자 갯수에 따릅니다. 완전한 내용을 알아보려면,\n"
+"    배시 설명서 페이지를 읽어보십시오.\n"
+"    \n"
+"    파일 연산자:\n"
+"    \n"
+"      -a <파일>        파일이 있으면 참.\n"
+"      -b <파일>        블록 특수 파일이면 참.\n"
+"      -c <파일>        문자 특수 파일이면 참.\n"
+"      -d <파일>        파일이 디렉터리면 참.\n"
+"      -e <파일>        파일이 있으면 참.\n"
+"      -f <파일>        일반 파일이 있으면 참.\n"
+"      -g <파일>        파일이 그룹 ID 모음이면 참.\n"
+"      -h <파일>        파일이 심볼릭 링크면 참.\n"
+"      -L <파일>        파일이 심볼릭 링크면 참.\n"
+"      -k <파일>        파일에 `끈적이' 비트 설정이 있으면 참.\n"
+"      -p <파일>        파일이 명명 파이프면 참.\n"
+"      -r <파일>        파일을 읽을 수 잇으면 참.\n"
+"      -s <파일>        비아있지 않은 파일이 있으면 참.\n"
+"      -S <파일>        소켓 파일이면 참.\n"
+"      -t <파일서술자>          <파일서술자>를 터미널에서 열면 참.\n"
+"      -u <파일>        파일이 사용자 ID 세트면 참.\n"
+"      -w <파일>        파일을 기록할 수 있으면 참.\n"
+"      -x <파일>        파일을 실행할 수 있으면 참.\n"
+"      -O <파일>        파일을 명백히 소유하면 참.\n"
+"      -G <파일>        파일을 명백시 소속 그룹에서 소유하면 참.\n"
+"      -N <파일>        파일을 읽은 후 수정했다면 참.\n"
+"    \n"
+"      <파일1> -nt <파일2>  파일1이 파일2보다 최신이면\n"
+"                       (수정일자에 따라)참.\n"
+"    \n"
+"      <파일1> -ot <파일2>  파일2가 파일1보다 최신이면 참.\n"
+"    \n"
+"      <파일1> -ef <파일2>  파일1이 파일2의 하드링크라면 참.\n"
+"    \n"
+"    문자열 연산자:\n"
+"    \n"
+"      -z <문자열>      문자열이 비었으면 참.\n"
+"    \n"
+"      -n <문자열>\n"
+"         <문자열>      문자열이 있으면 참.\n"
+"    \n"
+"      <문자열1> = <문자열2>\n"
+"                     문자열이 같으면 참.\n"
+"      <문자열1> != <문자열2>\n"
+"                     문자열이 다르면 참.\n"
+"      <문자열1> < <문자열2>\n"
+"                     문자열1이 문자열2보다 문자 순서상 먼저일 경우 참.\n"
+"      <문자열1> > <문자열2>\n"
+"                     문자열1이 문자열2보다 문자 순서상 나중일 경우 참.\n"
+"    \n"
+"    기타 연산:\n"
+"    \n"
+"      -o <옵션>      셸 <옵션>을 사용할 수 있으면 참.\n"
+"      -v <변수>         셸 <변수>를 설정하면 참.\n"
+"      -R <변수>         셸 <변수>를 이름 참조로 설정하면 참.\n"
+"    \n"
+"      ! <표현식>         표현식이 거짓이면 참.\n"
+"      <표현식1> -a <표현식2> <표현식1>, <표현식2>가 모두 참이면 참.\n"
+"      <표현식1> -o <표현식2> <표현식1> 또는 <표현식2> 둘 중 하나가 참이면 참.\n"
+"    \n"
+"      <변수1> <연산자> <변수2>   산술 시험.  <연산자>는  -eq, -ne,\n"
+"                     -lt, -le, -gt, or -ge 중 하나.\n"
+"    \n"
+"    산술 이진 연산자는 <인자1>과 <인자2>가 같거나, 다르거나, 작거나, 작고\n"
+"    같거나, 크거나, 크고 같을 경우 참을 반환합니다\n"
+"    \n"
+"    종료 상태:\n"
+"    <표현식>이 참이면 성공을 반환합니다. <표현식>이 거짓을 결과로 냈거나\n"
+"    부적절한 인자를 대입하면 실패를 반환합니다."
 
-#: builtins.c:1343
+#: builtins.c:1344
 msgid ""
 "Evaluate conditional expression.\n"
 "    \n"
 "    This is a synonym for the \"test\" builtin, but the last argument must\n"
 "    be a literal `]', to match the opening `['."
 msgstr ""
+"조건식을 처리합니다.\n"
+"    \n"
+"    \"test\" 내장 명령의 동의 명령입니다만, 마지막 인자는 반드시\n"
+"    `]' 문자로 마무리하여 열기 괄호 `['와 일치해야합니다."
 
-#: builtins.c:1352
+#: builtins.c:1353
 msgid ""
 "Display process times.\n"
 "    \n"
-"    Prints the accumulated user and system times for the shell and all of "
-"its\n"
+"    Prints the accumulated user and system times for the shell and all of its\n"
 "    child processes.\n"
 "    \n"
 "    Exit Status:\n"
 "    Always succeeds."
 msgstr ""
+"프로세스 시간을 표시합니다.\n"
+"    \n"
+"    셸의 사용자 및 시스템 누적 시간, 하위 프로세스의 누적 시간을\n"
+"    나타냅니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    항상 성공."
 
-#: builtins.c:1364
+#: builtins.c:1365
 msgid ""
 "Trap signals and other events.\n"
 "    \n"
-"    Defines and activates handlers to be run when the shell receives "
-"signals\n"
+"    Defines and activates handlers to be run when the shell receives signals\n"
 "    or other conditions.\n"
 "    \n"
 "    ARG is a command to be read and executed when the shell receives the\n"
@@ -3694,37 +4351,60 @@ msgid ""
 "    value.  If ARG is the null string each SIGNAL_SPEC is ignored by the\n"
 "    shell and by the commands it invokes.\n"
 "    \n"
-"    If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell.  "
-"If\n"
-"    a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command.  "
-"If\n"
-"    a SIGNAL_SPEC is RETURN, ARG is executed each time a shell function or "
-"a\n"
-"    script run by the . or source builtins finishes executing.  A "
-"SIGNAL_SPEC\n"
-"    of ERR means to execute ARG each time a command's failure would cause "
-"the\n"
+"    If a SIGNAL_SPEC is EXIT (0) ARG is executed on exit from the shell.  If\n"
+"    a SIGNAL_SPEC is DEBUG, ARG is executed before every simple command.  If\n"
+"    a SIGNAL_SPEC is RETURN, ARG is executed each time a shell function or a\n"
+"    script run by the . or source builtins finishes executing.  A SIGNAL_SPEC\n"
+"    of ERR means to execute ARG each time a command's failure would cause the\n"
 "    shell to exit when the -e option is enabled.\n"
 "    \n"
-"    If no arguments are supplied, trap prints the list of commands "
-"associated\n"
+"    If no arguments are supplied, trap prints the list of commands associated\n"
 "    with each signal.\n"
 "    \n"
 "    Options:\n"
 "      -l\tprint a list of signal names and their corresponding numbers\n"
 "      -p\tdisplay the trap commands associated with each SIGNAL_SPEC\n"
 "    \n"
-"    Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal "
-"number.\n"
+"    Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal number.\n"
 "    Signal names are case insensitive and the SIG prefix is optional.  A\n"
 "    signal may be sent to the shell with \"kill -signal $$\".\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success unless a SIGSPEC is invalid or an invalid option is "
-"given."
+"    Returns success unless a SIGSPEC is invalid or an invalid option is given."
 msgstr ""
+"시그널과 기타 이벤트를 잡습니다.\n"
+"    \n"
+"    셸에서 시그널 또는 기타 상태를 받았을 때 실행할 핸들러를 지정하고 활성\n"
+"    상태로 전환합니다.\n"
+"    \n"
+"    <인자>는 <시그널명세>의 시그널을 셸에서 받았을 때 읽고 실행할 명령\n"
+"    입니다.  <인자>값이 빠지면 (그리고 단일 <시그널명세> 값을 지정하면)\n"
+"    또는 값이 `-'으로 설정했다면, 각 지정 시그널을 원래 값으로 되돌립니다.\n"
+"    <인자>에 널 문자열이 들어갔다면, 각 <시그널명세> 값은 셸과 실행 명령\n"
+"    에서 무시합니다.\n"
+"    \n"
+"    <시그널명세>가 EXIT(0) 이면 <인자>는 셸을 빠져나갈 떄 실행합니다.\n"
+"    <시그널명세>가 DEBUG면, 모든 단순 명령을 실행하기 전에 <인자>를\n"
+"    실행 합니다. <시그널명세>가 RETURN이면, <인자>는 . 또는 원시 내장 \n"
+"    명령 실행을 끝내는 셸 함수 또는 스크립트를 실행할 때마다 실행합니다.\n"
+"    <오류> <시그널명세> 는 -e 옵션을 넣었을 때, 셸을 빠져나오게 하는 \n"
+"    명령 실패를 겪을 때마다 <인자>를 실행합니다.\n"
+"    \n"
+"    어떤 인자도 지정하지 않으면 trap에서 각 시그널 별로 실행하는 명령\n"
+"    목록을 출력합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -l\t시그널 이름과 관련 숫자 목록을 출력합니다\n"
+"      -p\t각 <시그널명세> 관련 처리 명령을 표시합니다\n"
+"    \n"
+"    각 <시그널명세>는 <signal.h>에 지정한 시그널 이름이거나 시그널\n"
+"    번호입니다. 시그널 이름은 대소문자 무관하며, SIG 접두사는 선택사항\n"
+"    입니다.  시그널은 \"kill -signal $$\" 처럼 셸에 보낼 수 있습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 <시그널명세> 또는 옵션을 지정했다면 성공을 반환합니다."
 
-#: builtins.c:1400
+#: builtins.c:1401
 msgid ""
 "Display information about command type.\n"
 "    \n"
@@ -3750,16 +4430,37 @@ msgid ""
 "      NAME\tCommand name to be interpreted.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success if all of the NAMEs are found; fails if any are not "
-"found."
+"    Returns success if all of the NAMEs are found; fails if any are not found."
 msgstr ""
+"명령 형식 정보를 표시합니다.\n"
+"    \n"
+"    각 <이름>에 대해 명령 이름으로 활용할 때 어떻게 해석하는지\n"
+"     나타냅니다.\n"
+"    \n"
+"    옵션:\n"
+"      -a\t<이름>이 들어간 모든 실행 파일 보관 위치를 나타냅니다.\n"
+"    \t\t별칭, 내장명령, 함수가 해당하며, `-p' 옵션은 사용하지\n"
+"    \t\t 말아야합니다.\n"
+"      -f\t셸 함수 찾기 동작을 멈춥니다\n"
+"      -P\t각 <이름>별로 별칭, 내장 명령, 함수로 해도  PATH 검색을 강제\n"
+"    \t\t시행하며, 실행 파일 디스크 이름을 반환합니다\n"
+"      -p\t실행할 디스크 파일 이름을 반환하거나 , `type -t <이름>'을\n"
+"    \t\t`file'로 반환하지 않으면 아무것도 반환하지 않습니다.\n"
+"      -t\t<이름>이 별칭, 셸 예약 단어, 셸 함수, 셸 내장 명령, 디스크 파일\n"
+"    \t\t 또는 없음 여부에 따라 `alias', `keyword', `function', `builtin',\n"
+"    \t\t `file', `' 중 하나를 반환합니다.\n"
+"    \n"
+"    인자:\n"
+"      <이름>\t해석할 명령 이름.\n"
+"    \n"
+"    종료 상태:\n"
+"    모든 <이름>을 찾으면 성공을 반환, 그렇지 않으면 실패를 반환합니다."
 
-#: builtins.c:1431
+#: builtins.c:1432
 msgid ""
 "Modify shell resource limits.\n"
 "    \n"
-"    Provides control over the resources available to the shell and "
-"processes\n"
+"    Provides control over the resources available to the shell and processes\n"
 "    it creates, on systems that allow such control.\n"
 "    \n"
 "    Options:\n"
@@ -3803,8 +4504,52 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 msgstr ""
+"셸 자원 제한을 조정합니다.\n"
+"    \n"
+"    셸과 생성 프로세스를 제어하는 시스템에서 사용할 수 있는 자원의\n"
+"    제어 전반을 제공합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -S\t`soft' 자원 제한을 활용합니다\n"
+"      -H\t`hard' 자원 제한을 활용합니다\n"
+"      -a\t현재 모든 제한 현황을 보고합니다\n"
+"      -b\t소켓 버퍼 킂기\n"
+"      -c\t생성 핵심 파일 최대 크기\n"
+"      -d\t프로세스 데이터 세그먼트 최대 크기\n"
+"      -e\t최대 스케쥴링 우선순위 (`nice')\n"
+"      -f\t셸과 하위 프로세스에서 작성한 파일의 최대 크기\n"
+"      -i\t최대 대기 시그널 수\n"
+"      -k\t프로세스에 할당한 커널 큐 최대 수\n"
+"      -l\t메모리에서 잠글 프로세스 최대 수\n"
+"      -m\t최대 점유 설정 크기\n"
+"      -n\t파일 서술자 개방 최대 갯수\n"
+"      -p\t파이프 버퍼 크기\n"
+"      -q\tPOSIX 메시지 큐 최대 바이트 단위 크기\n"
+"      -r\t최대 실시간 스케쥴링 우선순위\n"
+"      -s\t최대 스택 크기\n"
+"      -t\t초단위 최대 CPU 시간\n"
+"      -u\t최대 사용자 프로세스 수\n"
+"      -v\t가상 메모리 크기\n"
+"      -x\t최대 파일 잠금 수\n"
+"      -P\t가상 터미널 최대 갯수\n"
+"      -R\t블로킹 전 실시간 프로세스 최대 실행 가능 시간\n"
+"      -T\t최대 스레드 수\n"
+"    \n"
+"    모든 플랫폼에서 모든 옵션을 활용할 수 있는건 아닙니다.\n"
+"    \n"
+"    <한계>값이 주어지면, 지정 자원의 새 값이 됩니다. `soft', `hard', \n"
+"    `unlimited' <한계> 값은 현재 soft 한계, hard 한계, 한계 없음을 각각\n"
+"    의미합니다. 아니면, 지정 자원의 현재 값을 출력합니다. 옵션을 지정\n"
+"    하지 않으면, -f 옵션을 설정한 걸로 간주합니다.\n"
+"    \n"
+"    초 단위를 취급하는 -t 옵션과 512 바이트 단위로 증가하는 -p 옵션,\n"
+"    그리고 크기를 갖지 않는 프로세스 수를 취급하는 -u 옵션을 제외하고,\n"
+"    1024 바이트씩 값을 증가합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    옵션을 올바르게 설정했거나 오류가 없다면 성공을 반환합니다."
 
-#: builtins.c:1482
+#: builtins.c:1483
 msgid ""
 "Display or set file mode mask.\n"
 "    \n"
@@ -3821,28 +4566,38 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless MODE is invalid or an invalid option is given."
 msgstr ""
+"파일 모드 마스크를 표시하거나 설정합니다.\n"
+"    \n"
+"    사용자 파일 생성 마스크를 <모드>로 설정합니다. <모드>를 생략하면,\n"
+"    마스크 현재 값을 출력합니다.\n"
+"    \n"
+"    <모드>를 숫자로 시작하면, 8진수로 해석합니다. 그렇지 않으면 chmod(1)\n"
+"    에서 인식하는 심볼릭 모드 문자열이 됩니다.\n"
+"    \n"
+"    웁션:\n"
+"      -p\t<모드>를 생략하면 입력으로 재활용할 형식으로 출력합니다\n"
+"      -S\t출력 심볼릭을 만듭니다. 그렇지 않으면 8진수로 출력합니다\n"
+"    \n"
+"    종료 상태:\n"
+"    <모드>가 올바르거나 옵션을 적절하게 설정하면 성공을 반환합니다."
 
-#: builtins.c:1502
+#: builtins.c:1503
 msgid ""
 "Wait for job completion and return exit status.\n"
 "    \n"
-"    Waits for each process identified by an ID, which may be a process ID or "
-"a\n"
+"    Waits for each process identified by an ID, which may be a process ID or a\n"
 "    job specification, and reports its termination status.  If ID is not\n"
 "    given, waits for all currently active child processes, and the return\n"
 "    status is zero.  If ID is a job specification, waits for all processes\n"
 "    in that job's pipeline.\n"
 "    \n"
-"    If the -n option is supplied, waits for a single job from the list of "
-"IDs,\n"
-"    or, if no IDs are supplied, for the next job to complete and returns "
-"its\n"
+"    If the -n option is supplied, waits for a single job from the list of IDs,\n"
+"    or, if no IDs are supplied, for the next job to complete and returns its\n"
 "    exit status.\n"
 "    \n"
 "    If the -p option is supplied, the process or job identifier of the job\n"
 "    for which the exit status is returned is assigned to the variable VAR\n"
-"    named by the option argument. The variable will be unset initially, "
-"before\n"
+"    named by the option argument. The variable will be unset initially, before\n"
 "    any assignment. This is useful only when the -n option is supplied.\n"
 "    \n"
 "    If the -f option is supplied, and job control is enabled, waits for the\n"
@@ -3853,23 +4608,52 @@ msgid ""
 "    option is given, or if -n is supplied and the shell has no unwaited-for\n"
 "    children."
 msgstr ""
+"작업 완료를 기다리며 종료 상태를 반환합니다.\n"
+"    \n"
+"    프로세스 ID 또는 작업 명세가 될 ID로 식별하는 각 프로세스를 \n"
+"    기다리며, 중단 상태를 보고합니다. ID가 주어지지 않으면 현재의\n"
+"    모든 활성 하위 프로세스를 기다리며, 반환 상태 값은 0입니다.\n"
+"    ID가 작업 명세라면 작업 파이프라인의 모든 프로세스를 기다립니다.\n"
+"    \n"
+"    -n 옵션을 지정하면 ID 목록의 단일 작업을 기다리며, ID를 지정하지\n"
+"    않으면, 다음 작업 완료시까지 기다리고 해당 작업의 종료 상태를 반환\n"
+"    합니다.\n"
+"    \n"
+"    -p 옵션을 지정하면 종료 상태를 반환할 작업의 프로세스 또는 작업\n"
+"    식별자룰 옵션 인자가 명명한 <변수>에 할당합니다. 변수는 할당 전\n"
+"    설정을 해제할 수 있습니다. 보통 -n 옵션을 지정할 때만 쓸만합니다.\n"
+"    \n"
+"    -f 옵션을 지정하고 작업 컨트롤을 사용하면 지정 ID의 상태가 바뀌기를\n"
+"    기다리기보다는, 중단 시기를 기다립니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    최종 ID의 상태를 반환합니다. ID가 잘못되었거나 잘못된 옵션을 지정\n"
+"    했다든지, -n 옵션을 지정하고 셸에서 하위 프로세스를 기다리지 않는\n"
+"    다면 실패를 반환합니다."
 
-#: builtins.c:1533
+#: builtins.c:1534
 msgid ""
 "Wait for process completion and return exit status.\n"
 "    \n"
-"    Waits for each process specified by a PID and reports its termination "
-"status.\n"
+"    Waits for each process specified by a PID and reports its termination status.\n"
 "    If PID is not given, waits for all currently active child processes,\n"
 "    and the return status is zero.  PID must be a process ID.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns the status of the last PID; fails if PID is invalid or an "
-"invalid\n"
+"    Returns the status of the last PID; fails if PID is invalid or an invalid\n"
 "    option is given."
 msgstr ""
+"프로세스 처리 완료를 기다리고 종료 상태를 반환합니다.\n"
+"    \n"
+"    지정 <PID>의 각 프로세스를 기다리며, 종료 상태를 보고합니다.\n"
+"    <PID>를 지정하지 않으면 모든 현재 하위 활성 프로세스를 기다리며,\n"
+"    반환 상태는 0이 됩니다.  <PID>는 프로세스 ID여야 합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    최종 PID의 상태를 반환합니다. PID 값이 잘못되었거나,\n"
+"    부적절한 옵션을 지정하면 실패를 반환합니다."
 
-#: builtins.c:1548
+#: builtins.c:1549
 msgid ""
 "Execute commands for each member in a list.\n"
 "    \n"
@@ -3881,8 +4665,17 @@ msgid ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
+"목록 각 구성 요소의 명령을 실행합니다.\n"
+"    \n"
+"    `for' 반복문은 항목 목록 각 구성요소의 명령 목록을 실행합니다.\n"
+"    `in <단어> ...;' 식으로 나타나지 않으면, `in $@\"'으로 가정합니다.\n"
+"    <단어>의 각 요소에 대해 <이름>을 해당 요소에 설정하고,\n"
+"    <명령>을 실행합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    최종 명령 실행 상태를 반환합니다."
 
-#: builtins.c:1562
+#: builtins.c:1563
 msgid ""
 "Arithmetic for loop.\n"
 "    \n"
@@ -3898,8 +4691,21 @@ msgid ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
+"반복문의 산술 연산을 실행합니다.\n"
+"    \n"
+"    다음과 동일합니다\n"
+"    \t(( <표현식1> ))\n"
+"    \twhile (( <표현식2> )); do\n"
+"    \t\t <명령>\n"
+"    \t\t (( 표현식3 ))\n"
+"    \tdone\n"
+"    <표현식1>, <표현식2>, <표현식3> 은 산술 수식입니다.   어떤 수식이든 생략하면\n"
+"    1 값을 계산한걸로 간주합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    최종 명령 실행 상태를 반환합니다."
 
-#: builtins.c:1580
+#: builtins.c:1581
 msgid ""
 "Select words from a list and execute commands.\n"
 "    \n"
@@ -3918,8 +4724,22 @@ msgid ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
+"단어를 목록에서 선택하고 명령을 실행합니다.\n"
+"    \n"
+"    <단어>는 단어 목록을 만들 때 확장합니다.   확장 단어는 표준 오류에\n"
+"    출력하며, 출력행에 숫자가 붙습니다. 각 `in <단어>'가 없다면 `in \"$@\"'\n"
+"    를 고려합니다. 그 다음 PS3 프롬프트를 나타내고 표준 입력에서 \n"
+"    읽습니다. 표시 단어 중 하나의 숫자로 행을 구성했다면, <이름>\n"
+"    을 해당 단어에 설정합니다. 행이 비어있으면, <단어>와 프롬프트는\n"
+"    다시 나타납니다.  EOF (파일 끝)을 읽으면, 명령 실행이 끝납니다.\n"
+"    다른 값을 읽으면 <이름>을 null로 설정할 수도 있습니다.  읽은 행은\n"
+"    REPLY 변수에 저장합니다. <명령>은 break 명령을 실행하기 전까지\n"
+"    각 선택 때마다 실행합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    마지막 명령 실행 상태를 반환합니다."
 
-#: builtins.c:1601
+#: builtins.c:1602
 msgid ""
 "Report time consumed by pipeline's execution.\n"
 "    \n"
@@ -3934,8 +4754,20 @@ msgid ""
 "    Exit Status:\n"
 "    The return status is the return status of PIPELINE."
 msgstr ""
+"파이프라인 실행의 소요 시간을 보고합니다.\n"
+"    \n"
+"    <파이프라인>을 실행한 후 파이프라인이 멈췄을 때, <파이프라인> 실행에\n"
+"    걸린 실제 시간, 사용자 CPU 시간, 시스템 CPU 시간 요약 내용을 출력합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -p\t이식성이 있는 POSIX 형식의 타이밍 요약 내용을 출력합니다.\n"
+"    \n"
+"    TIMEFORMAT 변수의 값은 출력 형식에 활용합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <파이프라인>의 반환 상태가 곧 반환 상태 입니다."
 
-#: builtins.c:1618
+#: builtins.c:1619
 msgid ""
 "Execute commands based on pattern matching.\n"
 "    \n"
@@ -3945,51 +4777,76 @@ msgid ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
+"패턴 일치에 기반하여 명령을 실행합니다.\n"
+"    \n"
+"    <패턴>에 일치하는 <단어> 기반으로 <명령>을 별도로 실행합니다.\n"
+"    `|' 문자로 여러 패턴을 나눌 수 있습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    최종 명령 실행 상태를 반환합니다."
 
-#: builtins.c:1630
+#: builtins.c:1631
 msgid ""
 "Execute commands based on conditional.\n"
 "    \n"
-"    The `if COMMANDS' list is executed.  If its exit status is zero, then "
-"the\n"
-"    `then COMMANDS' list is executed.  Otherwise, each `elif COMMANDS' list "
-"is\n"
+"    The `if COMMANDS' list is executed.  If its exit status is zero, then the\n"
+"    `then COMMANDS' list is executed.  Otherwise, each `elif COMMANDS' list is\n"
 "    executed in turn, and if its exit status is zero, the corresponding\n"
-"    `then COMMANDS' list is executed and the if command completes.  "
-"Otherwise,\n"
-"    the `else COMMANDS' list is executed, if present.  The exit status of "
-"the\n"
-"    entire construct is the exit status of the last command executed, or "
-"zero\n"
+"    `then COMMANDS' list is executed and the if command completes.  Otherwise,\n"
+"    the `else COMMANDS' list is executed, if present.  The exit status of the\n"
+"    entire construct is the exit status of the last command executed, or zero\n"
 "    if no condition tested true.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
+"조건 기반으로 명령을 실행합니다.\n"
+"    \n"
+"    `if <명령>' 목록을 실행합니다.  종료 상태값이 0이면, `then <명령>'\n"
+"    목록도 실행합니다.  아니면, `elif <명령>' 목록도 실행하며, 종료 상태\n"
+"    값이 0이면 관련 `then <명령>' 목록을 실행하여 if 명령의 처리가 끝\n"
+"    납니다.  위 과정에 만족하지 않으면 `else <명령>' 목록이 있을 경우\n"
+"    실행합니다.  전체 명령 구성의 종료 상태 값은 최종 명령 실행 종료\n"
+"    상태값이며, 또는 어떤 조건에서도 참이 아닌 경우 0이 됩니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    최종 명령 실행 상태 값을 반환합니다."
 
-#: builtins.c:1647
+#: builtins.c:1648
 msgid ""
 "Execute commands as long as a test succeeds.\n"
 "    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `while' COMMANDS has an exit status of zero.\n"
+"    Expand and execute COMMANDS-2 as long as the final command in COMMANDS has\n"
+"    an exit status of zero.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
+"테스트에 성공하는 동안 명령을 실행합니다.\n"
+"    \n"
+"    <명령>의 최종 명령 종료 상태가 0인 동안 <명령-2>로 확장 실행합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    최종 명령 상태를 반환합니다."
 
-#: builtins.c:1659
+#: builtins.c:1660
 msgid ""
 "Execute commands as long as a test does not succeed.\n"
 "    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `until' COMMANDS has an exit status which is not zero.\n"
+"    Expand and execute COMMANDS-2 as long as the final command in COMMANDS has\n"
+"    an exit status which is not zero.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
+"테스트에 실패하는 동안 명령을 실행합니다.\n"
+"    \n"
+"    <명령>의 최종 명령 종료 상태가 0이 아니면 <명령-2>로 확장 실행합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    최종 명령 실행 상태를 반환합니다."
 
-#: builtins.c:1671
+#: builtins.c:1672
 msgid ""
 "Create a coprocess named NAME.\n"
 "    \n"
@@ -4001,22 +4858,37 @@ msgid ""
 "    Exit Status:\n"
 "    The coproc command returns an exit status of 0."
 msgstr ""
+"<이름>으로 병행 프로세스를 만듭니다.\n"
+"    \n"
+"    <명령>을 비동기 실행합니다. 명령의 표준 출력과 표준 입력은 실행하는 \n"
+"    셸에서 배열 변수 <이름>의 색인 0번과 1번에 할당한 파일 서술자와\n"
+"    파이프로 연결합니다. 기본 <이름>은 \"COPROC\" 입니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    coproc 명령이 종료 상태 0을 반환합니다."
 
-#: builtins.c:1685
+#: builtins.c:1686
 msgid ""
 "Define shell function.\n"
 "    \n"
 "    Create a shell function named NAME.  When invoked as a simple command,\n"
-"    NAME runs COMMANDs in the calling shell's context.  When NAME is "
-"invoked,\n"
+"    NAME runs COMMANDs in the calling shell's context.  When NAME is invoked,\n"
 "    the arguments are passed to the function as $1...$n, and the function's\n"
 "    name is in $FUNCNAME.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns success unless NAME is readonly."
 msgstr ""
+"셸 함수를 정의합니다.\n"
+"    \n"
+"    <이름>을 가진 셸 함수를 만듭니다.  단순 명령으로 실행할 경우, <이름>은\n"
+"    셸 컨텍스트를 호출할 때 <명령>을 실행합니다.  <이름>을 실행하면, 함수에\n"
+"    전달하는 인자는 $1,...$N 이며, 함수 이름은 $FUNCNAME이 됩니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <이름>이 읽기 전용이 아니라면 참을 반환합니다."
 
-#: builtins.c:1699
+#: builtins.c:1700
 msgid ""
 "Group commands as a unit.\n"
 "    \n"
@@ -4026,8 +4898,15 @@ msgid ""
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
+"여러 명령을 단위로 묶습니다.\n"
+"    \n"
+"    여러 명령을 그룹 하나로 묶어 실행합니다.  명령 전체를 방향재지정\n"
+"    처리하는 방법 중 하나입니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    최종 명령 실행 상태를 반환합니다."
 
-#: builtins.c:1711
+#: builtins.c:1712
 msgid ""
 "Resume job in foreground.\n"
 "    \n"
@@ -4040,8 +4919,17 @@ msgid ""
 "    Exit Status:\n"
 "    Returns the status of the resumed job."
 msgstr ""
+"포그라운드의 작업을 재개합니다.\n"
+"    \n"
+"    `fg' 명령의 JOB_SPEC 인자와 동일합니다.  멈춘 작업 또는 백그라운드\n"
+"    작업을 재개합니다.  JOB_SPEC은 작업 이름 또는 작업 번호를 지정할 수\n"
+"    있습니다.  JOB_SPEC 다음에 `&'를 입력하여 백그라운드에서 실행하게\n"
+"    합니다. `bg' 인자로 지정할 때처럼 작업 명세를 지정합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    재개한 작업의 상태를 반환합니다."
 
-#: builtins.c:1726
+#: builtins.c:1727
 msgid ""
 "Evaluate arithmetic expression.\n"
 "    \n"
@@ -4051,17 +4939,20 @@ msgid ""
 "    Exit Status:\n"
 "    Returns 1 if EXPRESSION evaluates to 0; returns 0 otherwise."
 msgstr ""
+"산술 연산을 수행합니다.\n"
+"    \n"
+"    <표현식>은 산술 연산 규칙에 따라 실행합니다. `let \"<표현식>\"'과 동일합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <표현식> 결과가 0이면 1을 반환하고 그렇지 않으면 0을 반환합니다."
 
-#: builtins.c:1738
+#: builtins.c:1739
 msgid ""
 "Execute conditional command.\n"
 "    \n"
-"    Returns a status of 0 or 1 depending on the evaluation of the "
-"conditional\n"
-"    expression EXPRESSION.  Expressions are composed of the same primaries "
-"used\n"
-"    by the `test' builtin, and may be combined using the following "
-"operators:\n"
+"    Returns a status of 0 or 1 depending on the evaluation of the conditional\n"
+"    expression EXPRESSION.  Expressions are composed of the same primaries used\n"
+"    by the `test' builtin, and may be combined using the following operators:\n"
 "    \n"
 "      ( EXPRESSION )\tReturns the value of EXPRESSION\n"
 "      ! EXPRESSION\t\tTrue if EXPRESSION is false; else false\n"
@@ -4079,8 +4970,28 @@ msgid ""
 "    Exit Status:\n"
 "    0 or 1 depending on value of EXPRESSION."
 msgstr ""
+"조건 명령을 수행합니다.\n"
+"    \n"
+"    <표현식>의 조건문 수행의 처리 결과에 따라 상태값을 0 또는 1로 반환합니다.\n"
+"    표현식은 `test' 내장 명령에서 활용하는 동일한 규칙에 따라 작성하며,\n"
+"    다음 연산자로 결합합니다:\n"
+"    ( <표현식> )\t<표현식>의 값을 반환\n"
+"    ! <표현식>\t\t <표현식> 결과가 거짓이면 참을, 그렇지 않으면 거짓을 반환\n"
+"    <표현식1> && <표현식2>\t\t<표현식1>과 <표현식2>가 모두 참이면 참을\n"
+"    \t\t\t\t그렇지 않으면 거짓을 반환\n"
+"    <표현식1> || <표현식2>\t\t<표현식1> 또는 <표현식2> 둘 중 하나가 참이면 참을\n"
+"    \t\t\t\t그렇지 않으면 거짓을 반환\n"
+"    \n"
+"    `=='과 `!=' 연산자를 사용한다면 우항의 문자열은 패턴으로 활용하며, 패턴 검사를\n"
+"    수행합니다. `=~' 연산자를 사용할 때는 우항의 문자열은 정규표현식으로 간주합니다.\n"
+"    \n"
+"     && 연산자와 || 연산자는 <표현식1>이 표현식 값을 내는데 충분하다면 <표현식2>를\n"
+"    처리하지는 않습니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    <표현식> 값에 따라 0 또는 1을 반환합니다."
 
-#: builtins.c:1764
+#: builtins.c:1765
 msgid ""
 "Common shell variable names and usage.\n"
 "    \n"
@@ -4133,8 +5044,54 @@ msgid ""
 "    HISTIGNORE\tA colon-separated list of patterns used to decide which\n"
 "    \t\tcommands should be saved on the history list.\n"
 msgstr ""
-
-#: builtins.c:1821
+"일반 셸 변수 이름과 사용법입니다.\n"
+"    \n"
+"    BASH_VERSION\t배시 버전 정보입니다.\n"
+"    CDPATH\t`cd' 인자처럼 디렉터리 검색에 주어지는 콜론으로 구분한\n"
+"    \t\t디렉터리 목록입니다.\n"
+"    GLOBIGNORE\t경로 이름을 확장하여 무시할 콜론 이름으로 구분한 파일 이름\n"
+"    \t\t특징 패턴 목록입니다.\n"
+"    HISTFILE\t명령을 기록에 저장하는 파일 이름입니다.\n"
+"    HISTFILESIZE\t파일에 넣을 수 있는 최대 줄 수 입니다.\n"
+"    HISTSIZE\t동작 중인 셸에서 접근할 수 있는 최대 기록 줄 수 입니다.\n"
+"    HOME\t로그인 후 접근하는 완전한 경로 이름입니다.\n"
+"    HOSTNAME\t현재 호스트 이름입니다.\n"
+"    HOSTTYPE\t이 배시 버전이 실행하고 있는 시스템의 CPU 형식입니다.\n"
+"    IGNOREEOF\n"
+"EOF 문자 입력을 유일한 입력으로 받는 셸의 동작을\n"
+"    \t\t제어합니다.  설정하면, 이 변수의 값은 셸을 나가기\n"
+"    \t\t전 빈 줄에 한줄로 나타낼 EOF 문자 수 입니다 (기본 10개).\n"
+"    \t\t설정을 해제하면, EOF는 입력 끝을 나타냅니다.\n"
+"    MACHTYPE\t현재 배시를 실행하고 있는 시스템을 설명하는 문자열입니다.\n"
+"    MAILCHECK\t배시에서 새 메일을 확인하는 초단위 빈도 시간입니다.\n"
+"    MAILPATH\t배시에서 새 메일을 확인할 콜론 구분 파일 목록입니다.\n"
+"    OSTYPE\t이 배시 버전을 실행하고 있는 유닉스 버전입니다.\n"
+"    PATH\t명령을 찾을 때 검색할 콜론 구분 디렉터리 목록입니다.\n"
+"    PROMPT_COMMAND\t각 기본 프롬프트를 출력하기 전에 실행할\n"
+"    \t\t명령입니다.\n"
+"    PS1\t\t기본 프롬프트 문자열입니다.\n"
+"    PS2\t\t2차 프롬프트 문자열입니다.\n"
+"    PWD\t\t현재 디렉터리의 전체 경로 이름 입니다.\n"
+"    SHELLOPTS\t콜론으로 구분한 활성 셸 옵션 목록입니다.\n"
+"    TERM\t현재 터미널 형식 이름입니다.\n"
+"    TIMEFORMAT\t`time' 역방향 단어로 표시하는 시간 통계의\n"
+"    \t\t출력 형식입니다.\n"
+"    <자동_재개>\tnull 값이 아니라면 자체에서 나타내는 명령행을\n"
+"    \t\t먼저 나타내고, 현재 멈춘 작업 목록의 첫번째 확인 요소임을\n"
+"    \t\t의미합니다.  이 상태가 나타나면 작업을 포 그라운드에서\n"
+"    \t\t실행헙니다. `exact' 값은 명령 단어가 멈춘 작업 목록의\n"
+"    \t\t명령과 정확히 일치해야 함을 의미합니다.\n"
+"    \t\t`substring' 값은 명령 단어가 작업의 부분 문자열과\n"
+"    \t\t일치해야 하는 의미를 담고 있습니다.  다른 값은\n"
+"    \t\t명령이 멈춘 작업의 접두어여야 하는 의미를 담고 있습니다.\n"
+"    <기록 문자>\t기록 확장과 빠른 대체를 제어하는 문자입니다.\n"
+"    \t\t첫번째는 기록 제거 문자로, 보통 `!'을 활용합니다.\n"
+"    \t\t두번째는 보통 `^'으로 표기하는 `빠른 대체문자' 입니다.\n"
+"    \t\t세번째는 `기록 주석' 문자로 보통 `#'으로 표기합니다.\n"
+"    HISTIGNORE\t어떤 명령을 기록 목록에 저장해야 하는지 판단할 때\n"
+"    \t\t활용하는 콜론 구분 패턴 목록입니다.\n"
+
+#: builtins.c:1822
 msgid ""
 "Add directories to stack.\n"
 "    \n"
@@ -4164,8 +5121,33 @@ msgid ""
 "    Returns success unless an invalid argument is supplied or the directory\n"
 "    change fails."
 msgstr ""
+"디렉터리를 스택에 추가합니다.\n"
+"    \n"
+"    디렉터리를 디렉터리 스택 상단에 추가하거나, 스택을 돌리거나,\n"
+"    스택의 새 상단에 현재 작업 디렉터리를 둡니다. 인자를 지정하지\n"
+"    않으면 상단 디렉터리 둘을 바꿉니다.\n"
+"    \n"
+"    옵션:\n"
+"      -n\t스택에 디렉터리를 추가할 때 디렉터리 일반 변경 동작을\n"
+"    \t\t막은 상태에서, 스택만 다루게 합니다.\n"
+"    \n"
+"    인자:\n"
+"      +N\t`dirs' 내장 명령에 나타난 항목을 0부터 시작해서 왼쪽부터\n"
+"    \t\t세어 N번째 항목을 스택의 최상단에 오도록 회전합니다.\n"
+"    \n"
+"      -N\t`dirs' 내장 명령에 나타난 항목을 0부터 시작해서 오른쪽부터\n"
+"    \t\t세어 N번째 항목을 스택의 최상단에 오도록 회전합니다.\n"
+"    \n"
+"      <디렉터리>\t<디렉터리>를 스택 상단에 추가하여 새 현재 작업\n"
+"    \t\t디렉터리로 지정합니다.\n"
+"    \n"
+"    `dirs' 내장 명령은 디렉터리 스택을 표시합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 인자를 지정하고 디렉터리 변경에 성공하면 성공을 반환\n"
+"    합니다."
 
-#: builtins.c:1855
+#: builtins.c:1856
 msgid ""
 "Remove directories from stack.\n"
 "    \n"
@@ -4191,8 +5173,32 @@ msgid ""
 "    Returns success unless an invalid argument is supplied or the directory\n"
 "    change fails."
 msgstr ""
+"스택에서 디렉터리를 제거합니다.\n"
+"    \n"
+"    디렉터리 스택에서 항목을 제거합니다.  인자를 지정하지 않으면,\n"
+"    스택의 상단 디렉터리를 제거하며, 새 상단 디렉터리로 바꿉니다.\n"
+"    \n"
+"    옵션:\n"
+"      -n\t스택에서 디렉터리를 제거할 때 디렉터리 일반 변경동작을\n"
+"    \t\t막아 스택만 처리하게합니다.\n"
+"    \n"
+"    인자:\n"
+"      +N\t0부터 시작해서 `dirs' 내장 명령에 나타난 항목을 왼쪽부터\n"
+"    \t\t세어 N번째 항목을 제거합니다. 예를 들어 `popd +0' 명령은\n"
+"    \t\t처음 디렉터리를 `popd +1' 명령은  두번째 디렉터리를\n"
+"    \t\t제거합니다.\n"
+"      -N\t0부터 시작해서 `dirs' 내장 명령에 나타난 항목을 오른쪽부터\n"
+"    \t\t세어 N번째 항목을 제거합니다. 예를 들어 `popd -0' 명령은\n"
+"    \t\t마지막 디렉터리를 `popd -1' 명령은 마지막에서 두번째의\n"
+"    \t\t디렉터리를 제거합니다.\n"
+"    \n"
+"    `dirs' 내장 명령은 디렉터리 스택을 보여줍니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 인자를 지정했거나 디렉터리를 제대로 이동했다면\n"
+"    성공을 반환합니다.전"
 
-#: builtins.c:1885
+#: builtins.c:1886
 msgid ""
 "Display directory stack.\n"
 "    \n"
@@ -4220,31 +5226,28 @@ msgid ""
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 msgstr ""
-"ë\94\94ë \89í\86 ë¦¬ ì\8a¤í\83\9dì\9d\84 ë³´ì\97¬ì¤\8d니다.\n"
+"ë\94\94ë \89í\84°ë¦¬ ì\8a¤í\83\9dì\9d\84 í\91\9cì\8b\9cí\95©니다.\n"
 "    \n"
-"    현재 기억된 디렉토리의 목록을 보여줍니다.  디렉토리들은\n"
-"    `pushd' ëª\85ë ¹ì\9d\84 í\86µí\95´ ëª©ë¡\9dì\97\90 ê²½ë¡\9c를 ì \80ì\9e¥í\95  ì\88\98 ì\9e\88ê³ ; 'popd' \n"
-"    ëª\85ë ¹ì\9d\84 í\86µí\95´ 거슬러 올라갈 수 있습니다.\n"
+"    현재 기억한 디렉터리 목록을 보여줍니다.  디렉터리는\n"
+"    `pushd' ëª\85ë ¹ì\9c¼ë¡\9c ëª©ë¡\9dì\97\90 ê²½ë¡\9c를 ì \80ì\9e¥í\95  ì\88\98 ì\9e\88ê³ , 'popd' \n"
+"    ëª\85ë ¹ì\9c¼ë¡\9c 거슬러 올라갈 수 있습니다.\n"
 "    \n"
 "    옵션:\n"
-"      -c\tì\9b\90ì\86\8c를 ì \84ë¶\80 ì\82­ì \9cí\95¨ì\9c¼ë¡\9cì\8d¨ ë\94\94ë \89í\86 리 스택을 초기화합니다\n"
-"      -l\tí\99\88 ë\94\94ë \89í\86 리까지 ~로 축약된 상대경로를 표시하지 않습니다\n"
-"      -p\tí\95\9c ì¤\84ì\97\90 í\95\98ë\82\98ì\94© ë\94\94ë \89í\86 리 스택을 표시합니다\n"
-"      -v\t한 줄에 하나씩 스택의 위치와 함께 디렉토리 스택을 표시합니다\n"
+"      -c\tì\9b\90ì\86\8c를 ì \84ë¶\80 ì\82­ì \9cí\95¨ì\9c¼ë¡\9cì\8d¨ ë\94\94ë \89í\84°리 스택을 초기화합니다\n"
+"      -l\tí\99\88 ë\94\94ë \89í\84°리까지 ~로 축약된 상대경로를 표시하지 않습니다\n"
+"      -p\tí\95\9c ì¤\84ì\97\90 í\95\98ë\82\98ì\94© ë\94\94ë \89í\84°리 스택을 표시합니다\n"
+"      -v\t한 줄에 하나씩 스택의 위치 및 디렉터리 스택을 표시합니다\n"
 "    \n"
 "    인자:\n"
-"      +N\t인자 없이 실행될 때 보여지는 목록의 왼쪽부터 N번째 항목을 보여줍니"
-"다.\n"
+"      +N\t인자 없이 실행될 때 보여지는 목록의 왼쪽부터 N번째 항목을 보여줍니다.\n"
 "    \t세는 수는 0부터 시작합니다.\n"
 "    \n"
-"      -N\t인자 없이 실행될 때 보여지는 목록의 오른쪽부터 N번째 항목을 보여줍"
-"니다.\n"
+"      -N\t인자 없이 실행될 때 보여지는 목록의 오른쪽부터 N번째 항목을 보여줍니다.\n"
 "\t세는 수는 0부터 시작합니다.\n"
 "    종료 상태:\n"
-"    유효하지 않은 옵션이 주어지거나 오류가 발생하지 않는다면 성공을 반환합니"
-"다."
+"    부적절한 옵션이 주어지거나 오류가 발생하지 않는다면 성공을 반환합니다."
 
-#: builtins.c:1916
+#: builtins.c:1917
 msgid ""
 "Set and unset shell options.\n"
 "    \n"
@@ -4263,8 +5266,24 @@ msgid ""
 "    Returns success if OPTNAME is enabled; fails if an invalid option is\n"
 "    given or OPTNAME is disabled."
 msgstr ""
+"셸 옵션을 설정 또는 해제합니다.\n"
+"    \n"
+"    <옵션이름> 셸 옵션의 설정을 바꿉니다. 어떤 옵션 인자도 지정하지 않으면\n"
+"    <옵션이름>에 지정한 항목을 보여주거나, <옵션이름>이 없을 경우 모든\n"
+"    셸 옵션을 보여주든지 설정 여부를 함께 나타냅니다.\n"
+"    \n"
+"    옵션:\n"
+"      -o\t`set -o'로 지정한 <옵션이름>으로 제한합니다\n"
+"      -p\t각 셸 옵션과 상태를 출력합니다\n"
+"      -q\t출력을 끕니다\n"
+"      -s\t각 <옵션이름>을 사용합니다 (설정)\n"
+"      -u\t각 <옵션이름>을 사용하지 않습니다 (설정해제)\n"
+"    \n"
+"    종료 상태:\n"
+"    <옵션이름>을 활성화했다면 성공을 반환합니다. 부적절한 옵션을\n"
+"    지정했거나 <옵션이름>을 사용하지 않으면 실패를 반환합니다."
 
-#: builtins.c:1937
+#: builtins.c:1938
 msgid ""
 "Formats and prints ARGUMENTS under control of the FORMAT.\n"
 "    \n"
@@ -4272,45 +5291,63 @@ msgid ""
 "      -v var\tassign the output to shell variable VAR rather than\n"
 "    \t\tdisplay it on the standard output\n"
 "    \n"
-"    FORMAT is a character string which contains three types of objects: "
-"plain\n"
-"    characters, which are simply copied to standard output; character "
-"escape\n"
+"    FORMAT is a character string which contains three types of objects: plain\n"
+"    characters, which are simply copied to standard output; character escape\n"
 "    sequences, which are converted and copied to the standard output; and\n"
-"    format specifications, each of which causes printing of the next "
-"successive\n"
+"    format specifications, each of which causes printing of the next successive\n"
 "    argument.\n"
 "    \n"
-"    In addition to the standard format specifications described in "
-"printf(1),\n"
+"    In addition to the standard format specifications described in printf(1),\n"
 "    printf interprets:\n"
 "    \n"
 "      %b\texpand backslash escape sequences in the corresponding argument\n"
 "      %q\tquote the argument in a way that can be reused as shell input\n"
-"      %(fmt)T\toutput the date-time string resulting from using FMT as a "
-"format\n"
+"      %Q\tlike %q, but apply any precision to the unquoted argument before\n"
+"    \t\tquoting\n"
+"      %(fmt)T\toutput the date-time string resulting from using FMT as a format\n"
 "    \t        string for strftime(3)\n"
 "    \n"
 "    The format is re-used as necessary to consume all of the arguments.  If\n"
 "    there are fewer arguments than the format requires,  extra format\n"
-"    specifications behave as if a zero value or null string, as "
-"appropriate,\n"
+"    specifications behave as if a zero value or null string, as appropriate,\n"
 "    had been supplied.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success unless an invalid option is given or a write or "
-"assignment\n"
+"    Returns success unless an invalid option is given or a write or assignment\n"
 "    error occurs."
 msgstr ""
+"<형식>에 따라 <인자>를 구성하고 출력합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -v <변수>\t표준 출력에 나타내는 대신 셸 <변수>에 할당합니다.\n"
+"    \n"
+"    <형식>은 세가지 형식의 객체가 들어간 문자열입니다. 표준 출력에 그냥\n"
+"    복사하는 일반 문자, 표준 출력에 변환하여 복사하는 문자 이스케이핑 시퀀스,\n"
+"    그리고 다음 뒤따라오는 인자를 형식에 맞춰 출력하는 형식 지정자가 바로\n"
+"    세가지 형식 입니다.\n"
+"    \n"
+"    게다가 printf(1)에 표준 형식 지정자에서 printf는 다음과 같이 해석합니다:\n"
+"    \n"
+"      %b\t관련 인자의 백슬래시 이스케이프 시퀀스를 확장합니다\n"
+"      %q\t셸 입력으로 다시 사용할 수 있도록 변수를 따옴표 처리합니다\n"
+"      %Q\t%q와 비슷하지만, 따옴표 처리하기 전의 인자에 정빌도를 적용합니다\n"
+"      %(fmt)T\tstrftime(3)의 형식 문자열로 <형식>을 사용하도록 날짜-시간\n"
+"    \t        문자열을 출력합니다\n"
+"    \n"
+"    형식은 모든 인자에 대해 필요한대로 재활용합니다. 필요한 형식보다\n"
+"    적은 인자를 지정했다면,  추가 형식 지정 부분에 대해 적당하게 널 문자열\n"
+"    이 들어간 것처럼 처리해줍니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 설정했거나 기록, 할당 오류가 나타나지 않으면 성공을\n"
+"    반환합니다."
 
-#: builtins.c:1971
+#: builtins.c:1974
 msgid ""
 "Specify how arguments are to be completed by Readline.\n"
 "    \n"
-"    For each NAME, specify how arguments are to be completed.  If no "
-"options\n"
-"    are supplied, existing completion specifications are printed in a way "
-"that\n"
+"    For each NAME, specify how arguments are to be completed.  If no options\n"
+"    are supplied, existing completion specifications are printed in a way that\n"
 "    allows them to be reused as input.\n"
 "    \n"
 "    Options:\n"
@@ -4325,38 +5362,61 @@ msgid ""
 "    \t\tcommand) word\n"
 "    \n"
 "    When completion is attempted, the actions are applied in the order the\n"
-"    uppercase-letter options are listed above. If multiple options are "
-"supplied,\n"
-"    the -D option takes precedence over -E, and both take precedence over -"
-"I.\n"
+"    uppercase-letter options are listed above. If multiple options are supplied,\n"
+"    the -D option takes precedence over -E, and both take precedence over -I.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 msgstr ""
+"readline에서 인자를 어떻게 완성 처리할 지 지정합니다.\n"
+"    \n"
+"    각 <이름>에 대해 인자를 어떻게 완성할 지 지정합니다.  옵션을 지정하지\n"
+"    않으면, 입력할 때 다시 활용할 수 있게 하는 방식으로 기존 완성 명세를\n"
+"    출력합니다.\n"
+"    \n"
+"    옵션:\n"
+"      -p\t기존 완성 명세를 재사용 형식으로 출력합니다\n"
+"      -r\t각 <이름>별 완성 명세를 제거하거나, <이름>을 지정하지 않았다면\n"
+"    \t\t모든 완성 명세를 제거합니다\n"
+"      -D\t어떤 개별 완성 명세 없이 명령에 대해 기본 완성 명세와 동작을\n"
+"    \t\t적용합니다\n"
+"      -E\t\"빈\" 명령에 대해 완성 명세와 동작을 적용합니다 -- 빈 줄 상태에서\n"
+"    \t\t완성 동작을 시도합니다\n"
+"      -I\t초기 단어(보통 명령) 완성 명세와 동작을 적용합니다\n"
+"    \n"
+"    완성 동작을 시도할 때 상단에 대문자 옵션 순서대로 동작을 적용합니다. 여러\n"
+"    옵션을 지정하면 -D 옵션은 -E 옵션보다 우선하며, 두 옵션은 -I 옵션보다\n"
+"    우선합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 지정했거나 오류가 발생하지 않으면 성공을 반환합니다."
 
-#: builtins.c:2001
+#: builtins.c:2004
 msgid ""
 "Display possible completions depending on the options.\n"
 "    \n"
 "    Intended to be used from within a shell function generating possible\n"
-"    completions.  If the optional WORD argument is supplied, matches "
-"against\n"
+"    completions.  If the optional WORD argument is supplied, matches against\n"
 "    WORD are generated.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns success unless an invalid option is supplied or an error occurs."
 msgstr ""
+"옵션에 따라 가능한 완성 명세를 표시합니다.\n"
+"    \n"
+"    가능한 완성 명세를 만드는 셸 함수에서 사용하도록 의도했습니다.\n"
+"    추가 <단어> 인자를 지정하면, <단어>에 일치하는 항목을 만듭니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    적절한 옵션을 지정했거나 오류가 없으면 성공을 반환합니다."
 
-#: builtins.c:2016
+#: builtins.c:2019
 msgid ""
 "Modify or display completion options.\n"
 "    \n"
-"    Modify the completion options for each NAME, or, if no NAMEs are "
-"supplied,\n"
-"    the completion currently being executed.  If no OPTIONs are given, "
-"print\n"
-"    the completion options for each NAME or the current completion "
-"specification.\n"
+"    Modify the completion options for each NAME, or, if no NAMEs are supplied,\n"
+"    the completion currently being executed.  If no OPTIONs are given, print\n"
+"    the completion options for each NAME or the current completion specification.\n"
 "    \n"
 "    Options:\n"
 "    \t-o option\tSet completion option OPTION for each NAME\n"
@@ -4378,27 +5438,46 @@ msgid ""
 "    Returns success unless an invalid option is supplied or NAME does not\n"
 "    have a completion specification defined."
 msgstr ""
+"자동 완성 옵션을 수정하거나 표시합니다.\n"
+"\n"
+"    각 <이름> 별로 자동 완성 옵션을 수정하거나, 지정 <이름>이 없다면,\n"
+"    현재 실행하는 명령의 자동완성 옵션을 수정합니다.  주어진 <옵션>이 없다면\n"
+"    각 <이름> 별 자동 완성 옵션을 출력하거나 현재 자동 완성 명세를 출력합니다.\n"
+"    \n"
+"    옵션:\n"
+"    \t-o <옵션>\t각 <이름>별 <옵션>을 설정합니다\n"
+"    \t-D\t\t\"기본\"  명령 자동 완성 옵션을 바꿉니다\n"
+"    \t-E\t\t\"빈\" 명령 자동 완성 옵션을 바꿉니다\n"
+"    \t-I\t\t초기 단어의 자동 완성 옵션을 바꿉니다\n"
+"    \n"
+"    지정 옵션을 끄는 `-o' 대신 `+o'를 사용하십시오.\n"
+"    \n"
+"    인자:\n"
+"    \n"
+"    각 <이름>은 `complete' 내장 명령으로 앞서 지정해야 하는 자동 완성\n"
+"    명세 명령을 참조합니다. <이름>이 없다면 현재 자동 완성 규칙을 생성하는\n"
+"    compopt를 호출해야 하며, 현재 실행하는 자동 완성 생성자의 옵션도\n"
+"    역시 마찬가지로 수정해야합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    부적절한 옵션을 지정하지 않았거나 <이름>에 자동 완성 명세를 지정했다면\n"
+"    성공을 반환합니다."
 
-#: builtins.c:2047
+#: builtins.c:2050
 msgid ""
 "Read lines from the standard input into an indexed array variable.\n"
 "    \n"
-"    Read lines from the standard input into the indexed array variable "
-"ARRAY, or\n"
-"    from file descriptor FD if the -u option is supplied.  The variable "
-"MAPFILE\n"
+"    Read lines from the standard input into the indexed array variable ARRAY, or\n"
+"    from file descriptor FD if the -u option is supplied.  The variable MAPFILE\n"
 "    is the default ARRAY.\n"
 "    \n"
 "    Options:\n"
 "      -d delim\tUse DELIM to terminate lines, instead of newline\n"
-"      -n count\tCopy at most COUNT lines.  If COUNT is 0, all lines are "
-"copied\n"
-"      -O origin\tBegin assigning to ARRAY at index ORIGIN.  The default "
-"index is 0\n"
+"      -n count\tCopy at most COUNT lines.  If COUNT is 0, all lines are copied\n"
+"      -O origin\tBegin assigning to ARRAY at index ORIGIN.  The default index is 0\n"
 "      -s count\tDiscard the first COUNT lines read\n"
 "      -t\tRemove a trailing DELIM from each line read (default newline)\n"
-"      -u fd\tRead lines from file descriptor FD instead of the standard "
-"input\n"
+"      -u fd\tRead lines from file descriptor FD instead of the standard input\n"
 "      -C callback\tEvaluate CALLBACK each time QUANTUM lines are read\n"
 "      -c quantum\tSpecify the number of lines read between each call to\n"
 "    \t\t\tCALLBACK\n"
@@ -4411,17 +5490,47 @@ msgid ""
 "    element to be assigned and the line to be assigned to that element\n"
 "    as additional arguments.\n"
 "    \n"
-"    If not supplied with an explicit origin, mapfile will clear ARRAY "
-"before\n"
+"    If not supplied with an explicit origin, mapfile will clear ARRAY before\n"
 "    assigning to it.\n"
 "    \n"
 "    Exit Status:\n"
-"    Returns success unless an invalid option is given or ARRAY is readonly "
-"or\n"
+"    Returns success unless an invalid option is given or ARRAY is readonly or\n"
 "    not an indexed array."
 msgstr ""
+"표준 입력을 읽어 색인 배열 변수에 대입합니다.\n"
+"    \n"
+"    표준 입력에서 행을 읽어 색인 <배열> 변수에 넣거나 -u 옵션을 지정하여\n"
+"    <파일서술자>에서 행을 읽어 색인 <배열> 변수에 넣습니다.  <매핑파일>\n"
+"    변수는 기본적으로 <배열> 취급합니다.\n"
+"    \n"
+"    옵션:\n"
+"    -d <구분자>\t개행 문자 대신 <구분자>로 행을 끊습니다.\n"
+"    -n <갯수>\t\t<갯수>만큼 행을 읽습니다. <갯수> 값이 0이면\n"
+"            \t\t 모든 행을 복사합니다.\n"
+"    -O <시작>\t\t<시작> 인덱스에 <배열> 할당을 시작합니다.\n"
+"            \t\t기본 인덱스는 0 입니다.\n"
+"    -s <갯수>\t\t처음 <갯수>만큼 읽은 행을 무시합니다\n"
+"    -t\t\t읽은 각 행 끝에 뒤다라오는 <구분자>를 제거합니다\n"
+"           \t\t(기본 값은 개행 문자)\n"
+"    -u <파일서술자>\t표준 입력 대신 <파일서술자>에서 행을 읽습니다\n"
+"    -C <콜백>\t\t<양자> 행을 읽을 때마다 실행할 <콜백> 입니다\n"
+"    -c <양자>\t\t<콜백>을 실행할 때마다 읽을 행 갯수를 지정합니다\n"
+"    \n"
+"    인자:\n"
+"      <배열>\t파일 데이터에 활용할 배열 변수 이름\n"
+"    \n"
+"    -c 옵션 없이 -C를 지정하면, 기본 양자 수는 5000입니다.  <콜백>을\n"
+"    실행하면, 다음 배열 요소의 색인 번호를 할당하고, 해당 요소에 할당할 행을\n"
+"    추가 인자로 지정합니다.\n"
+"    \n"
+"    <시작> 색인 번호를 제대로 지정하지 않으면, mapfile에서 <배열>에\n"
+"    할당하기 전에 <배열>값을 삭제합니다.\n"
+"    \n"
+"    종료 상태:\n"
+"    부적절한 옵션을 주지 않았거나 <배열>을 읽기 전용으로 두지 않았거나\n"
+"    색인 배열로 올바르게 지정했다면 성공을 반환합니다."
 
-#: builtins.c:2083
+#: builtins.c:2086
 msgid ""
 "Read lines from a file into an array variable.\n"
 "    \n"
@@ -4430,18 +5539,3 @@ msgstr ""
 "파일에서 줄을 읽어 배열 변수에 넣습니다.\n"
 "    \n"
 "    `mapfile'의 동의어."
-
-#~ msgid ""
-#~ "Returns the context of the current subroutine call.\n"
-#~ "    \n"
-#~ "    Without EXPR, returns "
-#~ msgstr ""
-#~ "현재 서브루틴 콜의 컨텍스트를 반환합니다.\n"
-#~ "    \n"
-#~ "    EXPR이 없으면, 다음을 반환 "
-
-#~ msgid "add_process: process %5ld (%s) in the_pipeline"
-#~ msgstr "add_process: 프로세스 %5ld (%s) 는 the_pipeline에 있음"
-
-#~ msgid "Unknown Signal #"
-#~ msgstr "알 수 없는 신호 #"
index 51b3d4f61cdee6f82a1418fb90721faba8f101c2..86de738c33c04f42f861ea5bc5dbb6f617999e8f 100644 (file)
Binary files a/po/nl.gmo and b/po/nl.gmo differ
index dcc82d95f6ee4e369695261fce842d74f9459dad..f80f24709385550c87b8bf2eeb464ed9373a52be 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
@@ -1,5 +1,5 @@
 # Dutch translations for GNU bash.
-# Copyright (C) 2020 Free Software Foundation, Inc.
+# Copyright (C) 2022 Free Software Foundation, Inc.
 # This file is distributed under the same license as the bash package.
 #
 # «Lernfähiger Software! Ich lach mich kaputt!»
 # om stilstaan en niet om finale opgave.  Een alternatieve vertaling
 # zou dus "Stilstand" kunnen zijn.
 #
-# Benno Schulenberg <benno@vertaalt.nl>, 2006, 2008, 2010, 2011, 2013, 2014.
-# Benno Schulenberg <benno@vertaalt.nl>, 2015, 2016, 2019, 2020.
-# Erwin Poeze <erwin.poeze@gmail.com>, 2009.
-# Julie Vermeersch <julie@lambda1.be>, 2004.
 # Erick Branderhorst <branderh@iaehv.nl>, 1996.
+# Julie Vermeersch <julie@lambda1.be>, 2004.
+# Erwin Poeze <erwin.poeze@gmail.com>, 2009.
+# Benno Schulenberg <benno@vertaalt.nl>, 2006, 2008, 2010, 2011, 2013, 2014.
+# Benno Schulenberg <benno@vertaalt.nl>, 2015, 2016, 2019, 2020, 2022.
 msgid ""
 msgstr ""
-"Project-Id-Version: bash-5.1\n"
+"Project-Id-Version: bash-5.2-rc1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-11-28 12:51-0500\n"
-"PO-Revision-Date: 2020-12-16 09:57+0100\n"
+"POT-Creation-Date: 2022-01-11 14:50-0500\n"
+"PO-Revision-Date: 2022-06-23 10:18+0200\n"
 "Last-Translator: Benno Schulenberg <vertaling@coevern.nl>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
 "Language: nl\n"
@@ -41,57 +41,52 @@ msgstr ""
 msgid "bad array subscript"
 msgstr "ongeldige array-index"
 
-#: arrayfunc.c:421 builtins/declare.def:638 variables.c:2274 variables.c:2300
-#: variables.c:3133
+#: arrayfunc.c:471 builtins/declare.def:709 variables.c:2242 variables.c:2268
+#: variables.c:3101
 #, c-format
 msgid "%s: removing nameref attribute"
 msgstr "%s: 'nameref'-eigenschap wordt verwijderd"
 
-#: arrayfunc.c:446 builtins/declare.def:851
+#: arrayfunc.c:496 builtins/declare.def:868
 #, c-format
 msgid "%s: cannot convert indexed to associative array"
 msgstr "%s: kan geïndexeerd array niet omzetten naar associatief array"
 
-#: arrayfunc.c:700
-#, c-format
-msgid "%s: invalid associative array key"
-msgstr "%s: ongeldige sleutel voor associatief array"
-
-#: arrayfunc.c:702
+#: arrayfunc.c:777
 #, c-format
 msgid "%s: cannot assign to non-numeric index"
 msgstr "%s: niet-numerieke index is niet mogelijk"
 
-#: arrayfunc.c:747
+#: arrayfunc.c:822
 #, c-format
 msgid "%s: %s: must use subscript when assigning associative array"
 msgstr "%s: %s: een index is nodig bij toekenning aan associatief array"
 
-#: bashhist.c:452
+#: bashhist.c:455
 #, c-format
 msgid "%s: cannot create: %s"
 msgstr "Kan %s niet aanmaken: %s"
 
-#: bashline.c:4310
+#: bashline.c:4479
 msgid "bash_execute_unix_command: cannot find keymap for command"
 msgstr "bash_execute_unix_command(): kan voor opdracht geen toetsenkaart vinden"
 
-#: bashline.c:4459
+#: bashline.c:4637
 #, c-format
 msgid "%s: first non-whitespace character is not `\"'"
 msgstr "%s: eerste teken dat geen witruimte is is niet '\"'"
 
-#: bashline.c:4488
+#: bashline.c:4666
 #, c-format
 msgid "no closing `%c' in %s"
 msgstr "geen sluit-'%c' in %s"
 
-#: bashline.c:4519
+#: bashline.c:4697
 #, c-format
 msgid "%s: missing colon separator"
 msgstr "%s: ontbrekend scheidingsteken (dubbele punt)"
 
-#: bashline.c:4555
+#: bashline.c:4733
 #, c-format
 msgid "`%s': cannot unbind in command keymap"
 msgstr "Kan '%s' niet losmaken in toetsenkaart"
@@ -111,7 +106,7 @@ msgstr "accoladevervanging: onvoldoende geheugen beschikbaar voor %u elementen"
 msgid "brace expansion: failed to allocate memory for `%s'"
 msgstr "accoladevervanging: onvoldoende geheugen beschikbaar voor '%s'"
 
-#: builtins/alias.def:131 variables.c:1844
+#: builtins/alias.def:131 variables.c:1817
 #, c-format
 msgid "`%s': invalid alias name"
 msgstr "'%s': ongeldige naam voor alias"
@@ -182,7 +177,7 @@ msgstr ""
 msgid "HOME not set"
 msgstr "HOME is niet gedefinieerd"
 
-#: builtins/cd.def:335 builtins/common.c:161 test.c:901
+#: builtins/cd.def:335 builtins/common.c:161 test.c:916
 msgid "too many arguments"
 msgstr "te veel argumenten"
 
@@ -209,7 +204,7 @@ msgstr "waarschuwing: "
 msgid "%s: usage: "
 msgstr "%s: Gebruik:  "
 
-#: builtins/common.c:193 shell.c:516 shell.c:844
+#: builtins/common.c:193 shell.c:524 shell.c:866
 #, c-format
 msgid "%s: option requires an argument"
 msgstr "%s: optie vereist een argument"
@@ -224,7 +219,7 @@ msgstr "%s: vereist een numeriek argument"
 msgid "%s: not found"
 msgstr "%s: niet gevonden"
 
-#: builtins/common.c:216 shell.c:857
+#: builtins/common.c:216 shell.c:879
 #, c-format
 msgid "%s: invalid option"
 msgstr "%s: ongeldige optie"
@@ -234,7 +229,7 @@ msgstr "%s: ongeldige optie"
 msgid "%s: invalid option name"
 msgstr "%s: ongeldige optienaam"
 
-#: builtins/common.c:230 execute_cmd.c:2373 general.c:368 general.c:373
+#: builtins/common.c:230 execute_cmd.c:2402 general.c:368 general.c:373
 #, c-format
 msgid "`%s': not a valid identifier"
 msgstr "'%s': is geen geldige naam"
@@ -247,7 +242,7 @@ msgstr "ongeldig octaal getal"
 msgid "invalid hex number"
 msgstr "ongeldig hexadecimaal getal"
 
-#: builtins/common.c:244 expr.c:1569
+#: builtins/common.c:244 expr.c:1574
 msgid "invalid number"
 msgstr "ongeldig getal"
 
@@ -261,88 +256,93 @@ msgstr "%s: ongeldige signaalaanduiding"
 msgid "`%s': not a pid or valid job spec"
 msgstr "'%s': is geen PID en geen geldige taakaanduiding"
 
-#: builtins/common.c:266 error.c:510
+#: builtins/common.c:266 error.c:536
 #, c-format
 msgid "%s: readonly variable"
 msgstr "%s: is een alleen-lezen variabele"
 
-#: builtins/common.c:274
+#: builtins/common.c:273
+#, c-format
+msgid "%s: cannot assign"
+msgstr "%s: kan niet toewijzen"
+
+#: builtins/common.c:281
 #, c-format
 msgid "%s: %s out of range"
 msgstr "%s: %s valt buiten bereik"
 
-#: builtins/common.c:274 builtins/common.c:276
+#: builtins/common.c:281 builtins/common.c:283
 msgid "argument"
 msgstr "argument"
 
-#: builtins/common.c:276
+#: builtins/common.c:283
 #, c-format
 msgid "%s out of range"
 msgstr "%s valt buiten bereik"
 
-#: builtins/common.c:284
+#: builtins/common.c:291
 #, c-format
 msgid "%s: no such job"
 msgstr "%s: taak bestaat niet"
 
-#: builtins/common.c:292
+#: builtins/common.c:299
 #, c-format
 msgid "%s: no job control"
 msgstr "%s: geen taakbesturing"
 
-#: builtins/common.c:294
+#: builtins/common.c:301
 msgid "no job control"
 msgstr "geen taakbesturing"
 
-#: builtins/common.c:304
+#: builtins/common.c:311
 #, c-format
 msgid "%s: restricted"
 msgstr "%s: beperkte modus"
 
-#: builtins/common.c:306
+#: builtins/common.c:313
 msgid "restricted"
 msgstr "beperkte modus"
 
-#: builtins/common.c:314
+#: builtins/common.c:321
 #, c-format
 msgid "%s: not a shell builtin"
 msgstr "%s: is geen ingebouwde opdracht van de shell"
 
-#: builtins/common.c:323
+#: builtins/common.c:330
 #, c-format
 msgid "write error: %s"
 msgstr "schrijffout: %s"
 
-#: builtins/common.c:331
+#: builtins/common.c:338
 #, c-format
 msgid "error setting terminal attributes: %s"
 msgstr "fout tijdens instellen van terminaleigenschappen: %s"
 
-#: builtins/common.c:333
+#: builtins/common.c:340
 #, c-format
 msgid "error getting terminal attributes: %s"
 msgstr "fout tijdens verkrijgen van terminaleigenschappen: %s"
 
-#: builtins/common.c:635
+#: builtins/common.c:642
 #, c-format
 msgid "%s: error retrieving current directory: %s: %s\n"
 msgstr "%s: fout tijdens bepalen van huidige map: %s: %s\n"
 
-#: builtins/common.c:701 builtins/common.c:703
+#: builtins/common.c:708 builtins/common.c:710
 #, c-format
 msgid "%s: ambiguous job spec"
 msgstr "%s: taakaanduiding is niet eenduidig"
 
-#: builtins/common.c:964
+#: builtins/common.c:971
 msgid "help not available in this version"
 msgstr "hulp is niet beschikbaar in deze versie"
 
-#: builtins/common.c:1008 builtins/set.def:953 variables.c:3839
+#: builtins/common.c:1038 builtins/set.def:953 variables.c:3825
 #, c-format
 msgid "%s: cannot unset: readonly %s"
 msgstr "Kan '%s' niet verwijderen: %s is alleen-lezen"
 
-#: builtins/common.c:1013 builtins/set.def:932 variables.c:3844
+#: builtins/common.c:1043 builtins/set.def:932 variables.c:3830
 #, c-format
 msgid "%s: cannot unset"
 msgstr "Kan '%s' niet verwijderen"
@@ -352,108 +352,108 @@ msgstr "Kan '%s' niet verwijderen"
 msgid "%s: invalid action name"
 msgstr "%s: ongeldige actienaam"
 
-#: builtins/complete.def:486 builtins/complete.def:634
-#: builtins/complete.def:865
+#: builtins/complete.def:486 builtins/complete.def:642
+#: builtins/complete.def:873
 #, c-format
 msgid "%s: no completion specification"
 msgstr "%s: is geen completerings-aanduiding"
 
-#: builtins/complete.def:688
+#: builtins/complete.def:696
 msgid "warning: -F option may not work as you expect"
 msgstr "waarschuwing: optie -F functioneert mogelijk niet zoals verwacht"
 
-#: builtins/complete.def:690
+#: builtins/complete.def:698
 msgid "warning: -C option may not work as you expect"
 msgstr "waarschuwing: optie -C functioneert mogelijk niet zoals verwacht"
 
-#: builtins/complete.def:838
+#: builtins/complete.def:846
 msgid "not currently executing completion function"
 msgstr "er wordt momenteel geen completeringsfunctie uitgevoerd"
 
-#: builtins/declare.def:134
+#: builtins/declare.def:137
 msgid "can only be used in a function"
 msgstr "kan alleen worden gebruikt binnen een functie"
 
-#: builtins/declare.def:363 builtins/declare.def:756
+#: builtins/declare.def:437
+msgid "cannot use `-f' to make functions"
+msgstr "'-f' kan niet gebruikt worden om een functie te definiëren"
+
+#: builtins/declare.def:464 execute_cmd.c:6132
+#, c-format
+msgid "%s: readonly function"
+msgstr "%s: is een alleen-lezen functie"
+
+#: builtins/declare.def:521 builtins/declare.def:804
 #, c-format
 msgid "%s: reference variable cannot be an array"
 msgstr "%s: verwijzingsvariabele mag geen array zijn"
 
-#: builtins/declare.def:374 variables.c:3385
+#: builtins/declare.def:532 variables.c:3359
 #, c-format
 msgid "%s: nameref variable self references not allowed"
 msgstr "%s: zelfverwijzing door naamsverwijzingsvariabele is niet toegestaan"
 
-#: builtins/declare.def:379 variables.c:2104 variables.c:3304 variables.c:3312
-#: variables.c:3382
+#: builtins/declare.def:537 variables.c:2072 variables.c:3278 variables.c:3286
+#: variables.c:3356
 #, c-format
 msgid "%s: circular name reference"
 msgstr "%s: circulaire naamsverwijzing"
 
-#: builtins/declare.def:384 builtins/declare.def:762 builtins/declare.def:773
+#: builtins/declare.def:541 builtins/declare.def:811 builtins/declare.def:820
 #, c-format
 msgid "`%s': invalid variable name for name reference"
 msgstr "'%s': ongeldige variabelenaam voor naamsverwijzing"
 
-#: builtins/declare.def:514
-msgid "cannot use `-f' to make functions"
-msgstr "'-f' kan niet gebruikt worden om een functie te definiëren"
-
-#: builtins/declare.def:526 execute_cmd.c:5986
-#, c-format
-msgid "%s: readonly function"
-msgstr "%s: is een alleen-lezen functie"
-
-#: builtins/declare.def:824
-#, c-format
-msgid "%s: quoted compound array assignment deprecated"
-msgstr "%s: aangehaalde samengesteld-array-toekenning is verouderd"
-
-#: builtins/declare.def:838
+#: builtins/declare.def:856
 #, c-format
 msgid "%s: cannot destroy array variables in this way"
 msgstr "%s: kan array-variabelen niet op deze manier verwijderen"
 
-#: builtins/declare.def:845 builtins/read.def:815
+#: builtins/declare.def:862 builtins/read.def:887
 #, c-format
 msgid "%s: cannot convert associative to indexed array"
 msgstr "%s: kan associatief array niet omzetten naar geïndexeerd array"
 
-#: builtins/enable.def:143 builtins/enable.def:151
+#: builtins/declare.def:891
+#, c-format
+msgid "%s: quoted compound array assignment deprecated"
+msgstr "%s: aangehaalde samengesteld-array-toekenning is verouderd"
+
+#: builtins/enable.def:145 builtins/enable.def:153
 msgid "dynamic loading not available"
 msgstr "dynamisch-laden is niet beschikbaar"
 
-#: builtins/enable.def:343
+#: builtins/enable.def:376
 #, c-format
 msgid "cannot open shared object %s: %s"
 msgstr "kan gedeeld object %s niet openen: %s"
 
-#: builtins/enable.def:371
+#: builtins/enable.def:405
 #, c-format
 msgid "cannot find %s in shared object %s: %s"
 msgstr "kan %s niet vinden in gedeeld object %s: %s"
 
-#: builtins/enable.def:388
+#: builtins/enable.def:422
 #, c-format
 msgid "%s: dynamic builtin already loaded"
 msgstr "%s: dynamische ingebouwde functie is reeds geladen"
 
-#: builtins/enable.def:392
+#: builtins/enable.def:426
 #, c-format
 msgid "load function for %s returns failure (%d): not loaded"
 msgstr "laadfunctie voor %s geeft foutcode (%d): is niet geladen"
 
-#: builtins/enable.def:517
+#: builtins/enable.def:551
 #, c-format
 msgid "%s: not dynamically loaded"
 msgstr "%s: is niet dynamisch geladen"
 
-#: builtins/enable.def:543
+#: builtins/enable.def:577
 #, c-format
 msgid "%s: cannot delete: %s"
 msgstr "Kan %s niet verwijderen: %s"
 
-#: builtins/evalfile.c:138 builtins/hash.def:185 execute_cmd.c:5818
+#: builtins/evalfile.c:138 builtins/hash.def:185 execute_cmd.c:5959
 #, c-format
 msgid "%s: is a directory"
 msgstr "%s: is een map"
@@ -468,7 +468,7 @@ msgstr "%s: is geen normaal bestand"
 msgid "%s: file is too large"
 msgstr "%s: bestand is te groot"
 
-#: builtins/evalfile.c:188 builtins/evalfile.c:206 shell.c:1647
+#: builtins/evalfile.c:188 builtins/evalfile.c:206 shell.c:1673
 #, c-format
 msgid "%s: cannot execute binary file"
 msgstr "%s: kan binair bestand niet uitvoeren"
@@ -565,12 +565,12 @@ msgstr ""
 "Er is geen hulptekst voor '%s'.\n"
 "Probeer 'help help' of 'man -k %s' of 'info %s'."
 
-#: builtins/help.def:224
+#: builtins/help.def:223
 #, c-format
 msgid "%s: cannot open: %s"
 msgstr "Kan %s niet openen: %s"
 
-#: builtins/help.def:524
+#: builtins/help.def:523
 #, c-format
 msgid ""
 "These shell commands are defined internally.  Type `help' to see this list.\n"
@@ -590,21 +590,21 @@ msgstr ""
 "(Een sterretje (*) naast een naam betekent dat de functie uitgeschakeld is.)\n"
 "\n"
 
-#: builtins/history.def:155
+#: builtins/history.def:159
 msgid "cannot use more than one of -anrw"
 msgstr "slechts één van '-a', '-n', '-r' of '-w' is mogelijk"
 
-#: builtins/history.def:188 builtins/history.def:198 builtins/history.def:213
-#: builtins/history.def:230 builtins/history.def:242 builtins/history.def:249
+#: builtins/history.def:192 builtins/history.def:204 builtins/history.def:215
+#: builtins/history.def:228 builtins/history.def:240 builtins/history.def:247
 msgid "history position"
 msgstr "geschiedenispositie"
 
-#: builtins/history.def:340
+#: builtins/history.def:338
 #, c-format
 msgid "%s: invalid timestamp"
 msgstr "%s: ongeldig tijdsstempel"
 
-#: builtins/history.def:451
+#: builtins/history.def:449
 #, c-format
 msgid "%s: history expansion failed"
 msgstr "%s: geschiedenisexpansie is mislukt"
@@ -627,80 +627,80 @@ msgstr "%s: argumenten moeten proces-IDs of taak-IDs zijn"
 msgid "Unknown error"
 msgstr "Onbekende fout"
 
-#: builtins/let.def:97 builtins/let.def:122 expr.c:639 expr.c:657
+#: builtins/let.def:97 builtins/let.def:122 expr.c:640 expr.c:658
 msgid "expression expected"
 msgstr "uitdrukking werd verwacht"
 
-#: builtins/mapfile.def:178
+#: builtins/mapfile.def:180
 #, c-format
 msgid "%s: not an indexed array"
 msgstr "%s: is geen geïndexeerd array"
 
-#: builtins/mapfile.def:271 builtins/read.def:308
+#: builtins/mapfile.def:276 builtins/read.def:336
 #, c-format
 msgid "%s: invalid file descriptor specification"
 msgstr "%s: ongeldige aanduiding van bestandsdescriptor"
 
-#: builtins/mapfile.def:279 builtins/read.def:315
+#: builtins/mapfile.def:284 builtins/read.def:343
 #, c-format
 msgid "%d: invalid file descriptor: %s"
 msgstr "%d: ongeldige bestandsdescriptor: %s"
 
-#: builtins/mapfile.def:288 builtins/mapfile.def:326
+#: builtins/mapfile.def:293 builtins/mapfile.def:331
 #, c-format
 msgid "%s: invalid line count"
 msgstr "%s: ongeldig regelaantal"
 
-#: builtins/mapfile.def:299
+#: builtins/mapfile.def:304
 #, c-format
 msgid "%s: invalid array origin"
 msgstr "%s: ongeldig array-begin"
 
 # Quantum is een hoeveelheid regels, een getal.
 # Callback is de aan te roepen functie, maar onnodig in de vertaling.
-#: builtins/mapfile.def:316
+#: builtins/mapfile.def:321
 #, c-format
 msgid "%s: invalid callback quantum"
 msgstr "%s: ongeldige hoeveelheid"
 
-#: builtins/mapfile.def:349
+#: builtins/mapfile.def:354
 msgid "empty array variable name"
 msgstr "lege naam van array-variabele"
 
-#: builtins/mapfile.def:370
+#: builtins/mapfile.def:375
 msgid "array variable support required"
 msgstr "ondersteuning van arrayvariabelen is vereist"
 
-#: builtins/printf.def:419
+#: builtins/printf.def:430
 #, c-format
 msgid "`%s': missing format character"
 msgstr "'%s': ontbrekend opmaakteken"
 
-#: builtins/printf.def:474
+#: builtins/printf.def:485
 #, c-format
 msgid "`%c': invalid time format specification"
 msgstr "'%c': ongeldige aanduiding van tijdsopmaak"
 
-#: builtins/printf.def:676
+#: builtins/printf.def:708
 #, c-format
 msgid "`%c': invalid format character"
 msgstr "'%c': ongeldig opmaakteken"
 
-#: builtins/printf.def:702
+#: builtins/printf.def:734
 #, c-format
 msgid "warning: %s: %s"
 msgstr "waarschuwing: %s: %s"
 
-#: builtins/printf.def:788
+#: builtins/printf.def:822
 #, c-format
 msgid "format parsing problem: %s"
 msgstr "probleem bij ontleden van opmaak: %s"
 
-#: builtins/printf.def:885
+#: builtins/printf.def:919
 msgid "missing hex digit for \\x"
 msgstr "ontbrekend hexadecimaal cijfer bij \\x"
 
-#: builtins/printf.def:900
+#: builtins/printf.def:934
 #, c-format
 msgid "missing unicode digit for \\%c"
 msgstr "ontbrekend Unicode-cijfer bij \\%c"
@@ -844,12 +844,12 @@ msgstr ""
 "\n"
 "    De opdracht 'dirs' toont de huidige mappenstapel."
 
-#: builtins/read.def:280
+#: builtins/read.def:308
 #, c-format
 msgid "%s: invalid timeout specification"
 msgstr "%s: ongeldige aanduiding van tijdslimiet"
 
-#: builtins/read.def:755
+#: builtins/read.def:827
 #, c-format
 msgid "read error: %d: %s"
 msgstr "leesfout: %d: %s"
@@ -862,7 +862,7 @@ msgstr "kan alleen een 'return' doen uit een functie of een uit script aangeroep
 msgid "cannot simultaneously unset a function and a variable"
 msgstr "kan niet tegelijk een functie en een variabele verwijderen"
 
-#: builtins/set.def:966
+#: builtins/set.def:969
 #, c-format
 msgid "%s: not an array variable"
 msgstr "%s: is geen array-variabele"
@@ -881,11 +881,11 @@ msgstr "Kan '%s' niet exporteren"
 msgid "shift count"
 msgstr "shift-aantal"
 
-#: builtins/shopt.def:310
+#: builtins/shopt.def:323
 msgid "cannot set and unset shell options simultaneously"
 msgstr "kan shell-opties niet tegelijk inschakelen en uitschakelen"
 
-#: builtins/shopt.def:428
+#: builtins/shopt.def:444
 #, c-format
 msgid "%s: invalid shell option name"
 msgstr "%s: ongeldige shell-optienaam"
@@ -952,16 +952,16 @@ msgstr "%s: ongeldige limietwaarde"
 msgid "`%c': bad command"
 msgstr "'%c': ongeldige opdracht"
 
-#: builtins/ulimit.def:455
+#: builtins/ulimit.def:464
 #, c-format
 msgid "%s: cannot get limit: %s"
 msgstr "%s: kan de limiet niet bepalen: %s"
 
-#: builtins/ulimit.def:481
+#: builtins/ulimit.def:490
 msgid "limit"
 msgstr "limiet"
 
-#: builtins/ulimit.def:493 builtins/ulimit.def:793
+#: builtins/ulimit.def:502 builtins/ulimit.def:802
 #, c-format
 msgid "%s: cannot modify limit: %s"
 msgstr "%s: kan de limiet niet wijzigen: %s"
@@ -980,7 +980,7 @@ msgstr "'%c': ongeldige operator in symbolische modus"
 msgid "`%c': invalid symbolic mode character"
 msgstr "'%c': ongeldig teken in symbolische modus"
 
-#: error.c:89 error.c:347 error.c:349 error.c:351
+#: error.c:89 error.c:373 error.c:375 error.c:377
 msgid " line "
 msgstr " regel "
 
@@ -1000,96 +1000,106 @@ msgstr "Afbreken..."
 msgid "INFORM: "
 msgstr "informatie: "
 
-#: error.c:462
+#: error.c:310
+#, c-format
+msgid "DEBUG warning: "
+msgstr "DEBUG-waarschuwing: "
+
+#: error.c:488
 msgid "unknown command error"
 msgstr "onbekende opdrachtfout"
 
-#: error.c:463
+#: error.c:489
 msgid "bad command type"
 msgstr "ongeldig opdrachttype"
 
-#: error.c:464
+#: error.c:490
 msgid "bad connector"
 msgstr "ongeldige verbinder"
 
-#: error.c:465
+#: error.c:491
 msgid "bad jump"
 msgstr "ongeldige sprong"
 
-#: error.c:503
+#: error.c:529
 #, c-format
 msgid "%s: unbound variable"
 msgstr "%s: ongebonden variabele"
 
-#: eval.c:242
+#: eval.c:243
 msgid "\atimed out waiting for input: auto-logout\n"
 msgstr "\awachten op invoer duurde te lang -- automatisch afgemeld\n"
 
-#: execute_cmd.c:537
+#: execute_cmd.c:555
 #, c-format
 msgid "cannot redirect standard input from /dev/null: %s"
 msgstr "kan standaardinvoer niet omleiden vanaf /dev/null: %s"
 
-#: execute_cmd.c:1297
+#: execute_cmd.c:1317
 #, c-format
 msgid "TIMEFORMAT: `%c': invalid format character"
 msgstr "TIMEFORMAT: '%c': ongeldig opmaakteken"
 
-#: execute_cmd.c:2362
+#: execute_cmd.c:2391
 #, c-format
 msgid "execute_coproc: coproc [%d:%s] still exists"
 msgstr "execute_coproc(): coproc [%d:%s] bestaat nog steeds"
 
-#: execute_cmd.c:2486
+#: execute_cmd.c:2524
 msgid "pipe error"
 msgstr "pijpfout"
 
-#: execute_cmd.c:4793
+#: execute_cmd.c:4923
 #, c-format
 msgid "eval: maximum eval nesting level exceeded (%d)"
 msgstr "eval: maximum 'eval'-nestingsniveau is overschreden (%d)"
 
-#: execute_cmd.c:4805
+#: execute_cmd.c:4935
 #, c-format
 msgid "%s: maximum source nesting level exceeded (%d)"
 msgstr "%s: maximum 'source'-nestingsniveau is overschreden (%d)"
 
-#: execute_cmd.c:4913
+#: execute_cmd.c:5043
 #, c-format
 msgid "%s: maximum function nesting level exceeded (%d)"
 msgstr "%s: maximum functie-nestingsniveau is overschreden (%d)"
 
-#: execute_cmd.c:5467
+#: execute_cmd.c:5598
 #, c-format
 msgid "%s: restricted: cannot specify `/' in command names"
 msgstr "%s: beperkte modus: '/' in opdrachtnamen is niet toegestaan"
 
-#: execute_cmd.c:5574
+#: execute_cmd.c:5715
 #, c-format
 msgid "%s: command not found"
 msgstr "%s: opdracht niet gevonden"
 
-#: execute_cmd.c:5816
+#: execute_cmd.c:5957
 #, c-format
 msgid "%s: %s"
 msgstr "%s: %s"
 
-#: execute_cmd.c:5854
+#: execute_cmd.c:5975
+#, c-format
+msgid "%s: cannot execute: required file not found"
+msgstr "%s: kan niet uitvoeren: vereist bestand is niet gevonden"
+
+#: execute_cmd.c:6000
 #, c-format
 msgid "%s: %s: bad interpreter"
 msgstr "%s: %s: ongeldige interpreter"
 
-#: execute_cmd.c:5891
+#: execute_cmd.c:6037
 #, c-format
 msgid "%s: cannot execute binary file: %s"
 msgstr "%s: kan binair bestand %s niet uitvoeren"
 
-#: execute_cmd.c:5977
+#: execute_cmd.c:6123
 #, c-format
 msgid "`%s': is a special builtin"
 msgstr "'%s' is een speciale ingebouwde shell-functie"
 
-#: execute_cmd.c:6029
+#: execute_cmd.c:6175
 #, c-format
 msgid "cannot duplicate fd %d to fd %d"
 msgstr "kan bestandsdescriptor %d niet dupliceren naar bestandsdescriptor %d"
@@ -1102,68 +1112,68 @@ msgstr "recursieniveau van expressies is overschreden"
 msgid "recursion stack underflow"
 msgstr "recursiestapel-onderloop"
 
-#: expr.c:477
+#: expr.c:478
 msgid "syntax error in expression"
 msgstr "syntaxfout in expressie"
 
-#: expr.c:521
+#: expr.c:522
 msgid "attempted assignment to non-variable"
 msgstr "poging tot toewijzing aan een niet-variabele"
 
-#: expr.c:530
+#: expr.c:531
 msgid "syntax error in variable assignment"
 msgstr "syntaxfout in toewijzing aan variabele"
 
-#: expr.c:544 expr.c:911
+#: expr.c:545 expr.c:912
 msgid "division by 0"
 msgstr "deling door nul"
 
-#: expr.c:592
+#: expr.c:593
 msgid "bug: bad expassign token"
 msgstr "**interne fout**: onjuist symbool in toewijzingsexpressie"
 
-#: expr.c:646
+#: expr.c:647
 msgid "`:' expected for conditional expression"
 msgstr "':' werd verwacht voor een voorwaardelijke expressie"
 
-#: expr.c:972
+#: expr.c:973
 msgid "exponent less than 0"
 msgstr "exponent is kleiner dan 0"
 
-#: expr.c:1029
+#: expr.c:1030
 msgid "identifier expected after pre-increment or pre-decrement"
 msgstr "naam verwacht na pre-increment of pre-decrement"
 
-#: expr.c:1056
+#: expr.c:1057
 msgid "missing `)'"
 msgstr "ontbrekend ')'"
 
-#: expr.c:1107 expr.c:1487
+#: expr.c:1108 expr.c:1492
 msgid "syntax error: operand expected"
 msgstr "syntaxfout: operator verwacht"
 
-#: expr.c:1489
+#: expr.c:1494
 msgid "syntax error: invalid arithmetic operator"
 msgstr "syntaxfout: ongeldige rekenkundige operator"
 
-#: expr.c:1513
+#: expr.c:1518
 #, c-format
 msgid "%s%s%s: %s (error token is \"%s\")"
 msgstr "%s%s%s: %s (het onjuiste symbool is \"%s\")"
 
-#: expr.c:1573
+#: expr.c:1578
 msgid "invalid arithmetic base"
 msgstr "ongeldige rekenkundige basis"
 
-#: expr.c:1582
+#: expr.c:1587
 msgid "invalid integer constant"
 msgstr "ongeldige integerconstante"
 
-#: expr.c:1598
+#: expr.c:1603
 msgid "value too great for base"
 msgstr "waarde is te groot voor basis"
 
-#: expr.c:1647
+#: expr.c:1652
 #, c-format
 msgid "%s: expression error\n"
 msgstr "%s: expressiefout\n"
@@ -1172,7 +1182,7 @@ msgstr "%s: expressiefout\n"
 msgid "getcwd: cannot access parent directories"
 msgstr "getwd(): kan geen geen toegang verkrijgen tot bovenliggende mappen"
 
-#: input.c:99 subst.c:6069
+#: input.c:99 subst.c:6208
 #, c-format
 msgid "cannot reset nodelay mode for fd %d"
 msgstr "kan 'nodelay'-modus niet uitschakelen voor bestandsdescriptor %d"
@@ -1191,167 +1201,167 @@ msgstr "check_bash_input(): buffer bestaat al voor nieuwe bestandsdescriptor %d"
 msgid "start_pipeline: pgrp pipe"
 msgstr "start_pipeline(): procesgroep van pijp"
 
-#: jobs.c:906
+#: jobs.c:907
 #, c-format
 msgid "bgp_delete: LOOP: psi (%d) == storage[psi].bucket_next"
 msgstr "bgp_delete: LUS: psi (%d) == storage[psi].bucket_next"
 
-#: jobs.c:959
+#: jobs.c:960
 #, c-format
 msgid "bgp_search: LOOP: psi (%d) == storage[psi].bucket_next"
 msgstr "bgp_search: LUS: psi (%d) == storage[psi].bucket_next"
 
-#: jobs.c:1283
+#: jobs.c:1279
 #, c-format
 msgid "forked pid %d appears in running job %d"
 msgstr "afgesplitst PID %d hoort bij draaiende taak %d"
 
-#: jobs.c:1402
+#: jobs.c:1397
 #, c-format
 msgid "deleting stopped job %d with process group %ld"
 msgstr "verwijderen van gepauzeerde taak %d met procesgroep %ld..."
 
-#: jobs.c:1511
+#: jobs.c:1502
 #, c-format
 msgid "add_process: pid %5ld (%s) marked as still alive"
 msgstr "add_process(): PID %5ld (%s) staat gemarkeerd als nog actief"
 
-#: jobs.c:1850
+#: jobs.c:1839
 #, c-format
 msgid "describe_pid: %ld: no such pid"
 msgstr "describe_pid(): PID %ld bestaat niet"
 
-#: jobs.c:1865
+#: jobs.c:1854
 #, c-format
 msgid "Signal %d"
 msgstr "Signaal %d"
 
-#: jobs.c:1879 jobs.c:1905
+#: jobs.c:1868 jobs.c:1894
 msgid "Done"
 msgstr "Klaar"
 
-#: jobs.c:1884 siglist.c:122
+#: jobs.c:1873 siglist.c:123
 msgid "Stopped"
 msgstr "Gepauzeerd"
 
-#: jobs.c:1888
+#: jobs.c:1877
 #, c-format
 msgid "Stopped(%s)"
 msgstr "Gepauzeerd(%s)"
 
-#: jobs.c:1892
+#: jobs.c:1881
 msgid "Running"
 msgstr "Wordt uitgevoerd"
 
-#: jobs.c:1909
+#: jobs.c:1898
 #, c-format
 msgid "Done(%d)"
 msgstr "Klaar(%d)"
 
-#: jobs.c:1911
+#: jobs.c:1900
 #, c-format
 msgid "Exit %d"
 msgstr "Exit %d"
 
-#: jobs.c:1914
+#: jobs.c:1903
 msgid "Unknown status"
 msgstr "Onbekende afsluitwaarde"
 
-#: jobs.c:2001
+#: jobs.c:1990
 #, c-format
 msgid "(core dumped) "
 msgstr "(geheugendump gemaakt) "
 
-#: jobs.c:2020
+#: jobs.c:2009
 #, c-format
 msgid "  (wd: %s)"
 msgstr "  (werkmap: %s)"
 
-#: jobs.c:2259
+#: jobs.c:2250
 #, c-format
 msgid "child setpgid (%ld to %ld)"
 msgstr "instellen van procesgroep %2$ld van dochter %1$ld"
 
-#: jobs.c:2617 nojobs.c:664
+#: jobs.c:2608 nojobs.c:666
 #, c-format
 msgid "wait: pid %ld is not a child of this shell"
 msgstr "wait(): PID %ld is geen dochterproces van deze shell"
 
-#: jobs.c:2893
+#: jobs.c:2884
 #, c-format
 msgid "wait_for: No record of process %ld"
 msgstr "wait_for(): proces %ld is nergens geregistreerd"
 
-#: jobs.c:3236
+#: jobs.c:3223
 #, c-format
 msgid "wait_for_job: job %d is stopped"
 msgstr "wait_for_job(): taak %d is gepauzeerd"
 
-#: jobs.c:3564
+#: jobs.c:3551
 #, c-format
 msgid "%s: no current jobs"
 msgstr "%s: geen lopende taken"
 
-#: jobs.c:3571
+#: jobs.c:3558
 #, c-format
 msgid "%s: job has terminated"
 msgstr "%s: taak is afgesloten"
 
-#: jobs.c:3580
+#: jobs.c:3567
 #, c-format
 msgid "%s: job %d already in background"
 msgstr "%s: taak %d draait al op de achtergrond"
 
-#: jobs.c:3806
+#: jobs.c:3793
 msgid "waitchld: turning on WNOHANG to avoid indefinite block"
 msgstr "waitchld(): WNOHANG wordt ingeschakeld om een onbegrensde blokkering te vermijden"
 
-#: jobs.c:4320
+#: jobs.c:4307
 #, c-format
 msgid "%s: line %d: "
 msgstr "%s: regel %d: "
 
-#: jobs.c:4334 nojobs.c:919
+#: jobs.c:4321 nojobs.c:921
 #, c-format
 msgid " (core dumped)"
 msgstr " (geheugendump gemaakt)"
 
-#: jobs.c:4346 jobs.c:4359
+#: jobs.c:4333 jobs.c:4346
 #, c-format
 msgid "(wd now: %s)\n"
 msgstr "(werkmap is nu: %s)\n"
 
-#: jobs.c:4391
+#: jobs.c:4378
 msgid "initialize_job_control: getpgrp failed"
 msgstr "initialize_job_control: getpgrp() is mislukt"
 
-#: jobs.c:4447
+#: jobs.c:4434
 msgid "initialize_job_control: no job control in background"
 msgstr "initialize_job_control: geen taakbesturing in de achtergrond"
 
-#: jobs.c:4463
+#: jobs.c:4450
 msgid "initialize_job_control: line discipline"
 msgstr "initialize_job_control: lijnprotocol"
 
-#: jobs.c:4473
+#: jobs.c:4460
 msgid "initialize_job_control: setpgid"
 msgstr "initialize_job_control: setpgid()"
 
-#: jobs.c:4494 jobs.c:4503
+#: jobs.c:4481 jobs.c:4490
 #, c-format
 msgid "cannot set terminal process group (%d)"
 msgstr "kan procesgroep (%d) van terminal niet instellen"
 
-#: jobs.c:4508
+#: jobs.c:4495
 msgid "no job control in this shell"
 msgstr "er is geen taakbesturing in deze shell"
 
-#: lib/malloc/malloc.c:353
+#: lib/malloc/malloc.c:367
 #, c-format
 msgid "malloc: failed assertion: %s\n"
 msgstr "malloc(): controletest is mislukt: %s\n"
 
-#: lib/malloc/malloc.c:369
+#: lib/malloc/malloc.c:383
 #, c-format
 msgid ""
 "\r\n"
@@ -1360,47 +1370,47 @@ msgstr ""
 "\r\n"
 "malloc(): %s:%d: controletest is mislukt\r\n"
 
-#: lib/malloc/malloc.c:370 lib/malloc/malloc.c:933
+#: lib/malloc/malloc.c:384 lib/malloc/malloc.c:941
 msgid "unknown"
 msgstr "onbekend"
 
-#: lib/malloc/malloc.c:882
+#: lib/malloc/malloc.c:892
 msgid "malloc: block on free list clobbered"
 msgstr "malloc(): een pointer op de lijst van vrije blokken is overschreven"
 
-#: lib/malloc/malloc.c:972
+#: lib/malloc/malloc.c:980
 msgid "free: called with already freed block argument"
 msgstr "free(): aangeroepen met als argument een blok dat al vrijgegeven is"
 
-#: lib/malloc/malloc.c:975
+#: lib/malloc/malloc.c:983
 msgid "free: called with unallocated block argument"
 msgstr "free(): aangeroepen met als argument een ongebruikt blok"
 
-#: lib/malloc/malloc.c:994
+#: lib/malloc/malloc.c:1001
 msgid "free: underflow detected; mh_nbytes out of range"
 msgstr "free(): onderloop: 'mh_nbytes' valt buiten bereik"
 
-#: lib/malloc/malloc.c:1001
+#: lib/malloc/malloc.c:1007
 msgid "free: underflow detected; magic8 corrupted"
 msgstr "free(): onderloop: 'magic8' is beschadigd"
 
-#: lib/malloc/malloc.c:1009
+#: lib/malloc/malloc.c:1014
 msgid "free: start and end chunk sizes differ"
 msgstr "free(): blokgroottes van begin en eind zijn verschillend"
 
-#: lib/malloc/malloc.c:1119
+#: lib/malloc/malloc.c:1176
 msgid "realloc: called with unallocated block argument"
 msgstr "realloc(): aangeroepen met als argument een ongebruikt blok"
 
-#: lib/malloc/malloc.c:1134
+#: lib/malloc/malloc.c:1191
 msgid "realloc: underflow detected; mh_nbytes out of range"
 msgstr "realloc(): onderloop: 'mh_nbytes' valt buiten bereik"
 
-#: lib/malloc/malloc.c:1141
+#: lib/malloc/malloc.c:1197
 msgid "realloc: underflow detected; magic8 corrupted"
 msgstr "realloc(): onderloop: 'magic8' is beschadigd"
 
-#: lib/malloc/malloc.c:1150
+#: lib/malloc/malloc.c:1205
 msgid "realloc: start and end chunk sizes differ"
 msgstr "realloc(): blokgroottes van begin en eind zijn verschillend"
 
@@ -1442,22 +1452,22 @@ msgstr "%s: ongeldige aanduiding van netwerkpad"
 msgid "network operations not supported"
 msgstr "netwerkoperaties worden niet ondersteund"
 
-#: locale.c:217
+#: locale.c:219
 #, c-format
 msgid "setlocale: LC_ALL: cannot change locale (%s)"
 msgstr "setlocale(): LC_ALL: kan niet van taalregio veranderen (%s)"
 
-#: locale.c:219
+#: locale.c:221
 #, c-format
 msgid "setlocale: LC_ALL: cannot change locale (%s): %s"
 msgstr "setlocale(): LC_ALL: kan niet van taalregio veranderen (%s): %s"
 
-#: locale.c:292
+#: locale.c:294
 #, c-format
 msgid "setlocale: %s: cannot change locale (%s)"
 msgstr "setlocale(): %s: kan niet van taalregio veranderen (%s)"
 
-#: locale.c:294
+#: locale.c:296
 #, c-format
 msgid "setlocale: %s: cannot change locale (%s): %s"
 msgstr "setlocale(): %s: kan niet van taalregio veranderen (%s): %s"
@@ -1475,136 +1485,136 @@ msgstr "U hebt nieuwe post in $_"
 msgid "The mail in %s has been read\n"
 msgstr "De post in %s is gelezen.\n"
 
-#: make_cmd.c:317
+#: make_cmd.c:314
 msgid "syntax error: arithmetic expression required"
 msgstr "syntaxfout: een rekenkundige uitdrukking is vereist"
 
-#: make_cmd.c:319
+#: make_cmd.c:316
 msgid "syntax error: `;' unexpected"
 msgstr "syntaxfout: onverwachte ';'"
 
-#: make_cmd.c:320
+#: make_cmd.c:317
 #, c-format
 msgid "syntax error: `((%s))'"
 msgstr "syntaxfout: '((%s))'"
 
-#: make_cmd.c:572
+#: make_cmd.c:569
 #, c-format
 msgid "make_here_document: bad instruction type %d"
 msgstr "make_here_document(): ongeldig instructietype %d"
 
-#: make_cmd.c:657
+#: make_cmd.c:668
 #, c-format
 msgid "here-document at line %d delimited by end-of-file (wanted `%s')"
 msgstr "regel %d van \"hier\"-document eindigt met einde van bestand (verwachtte '%s')"
 
-#: make_cmd.c:756
+#: make_cmd.c:769
 #, c-format
 msgid "make_redirection: redirection instruction `%d' out of range"
 msgstr "make_redirection(): omleidingsinstructie '%d' valt buiten bereik"
 
-#: parse.y:2393
+#: parse.y:2428
 #, c-format
 msgid "shell_getc: shell_input_line_size (%zu) exceeds SIZE_MAX (%lu): line truncated"
 msgstr "shell_getc(): lengte van invoerregel (%zu) overschrijdt SIZE_MAX (%lu): regel is afgekapt"
 
-#: parse.y:2826
+#: parse.y:2921
 msgid "maximum here-document count exceeded"
 msgstr "maximum aantal \"hier\"-documenten is overschreden"
 
-#: parse.y:3581 parse.y:3957 parse.y:4556
+#: parse.y:3684 parse.y:4244 parse.y:6148
 #, c-format
 msgid "unexpected EOF while looking for matching `%c'"
 msgstr "onverwacht bestandseinde tijdens zoeken naar bijpassende '%c'"
 
-#: parse.y:4696
+#: parse.y:4452
 msgid "unexpected EOF while looking for `]]'"
 msgstr "onverwacht bestandseinde tijdens zoeken naar ']]'"
 
-#: parse.y:4701
+#: parse.y:4457
 #, c-format
 msgid "syntax error in conditional expression: unexpected token `%s'"
 msgstr "syntaxfout in conditionele expressie: onverwacht symbool '%s'"
 
-#: parse.y:4705
+#: parse.y:4461
 msgid "syntax error in conditional expression"
 msgstr "syntaxfout in conditionele expressie"
 
-#: parse.y:4783
+#: parse.y:4539
 #, c-format
 msgid "unexpected token `%s', expected `)'"
 msgstr "onverwacht symbool '%s'; ')' werd verwacht"
 
-#: parse.y:4787
+#: parse.y:4543
 msgid "expected `)'"
 msgstr "')' werd verwacht"
 
-#: parse.y:4815
+#: parse.y:4571
 #, c-format
 msgid "unexpected argument `%s' to conditional unary operator"
 msgstr "onverwacht argument '%s' bij eenzijdige conditionele operator"
 
-#: parse.y:4819
+#: parse.y:4575
 msgid "unexpected argument to conditional unary operator"
 msgstr "onverwacht argument bij eenzijdige conditionele operator"
 
-#: parse.y:4865
+#: parse.y:4621
 #, c-format
 msgid "unexpected token `%s', conditional binary operator expected"
 msgstr "onverwacht symbool '%s'; tweezijdige conditionele operator werd verwacht"
 
-#: parse.y:4869
+#: parse.y:4625
 msgid "conditional binary operator expected"
 msgstr "tweezijdige conditionele operator werd verwacht"
 
-#: parse.y:4891
+#: parse.y:4647
 #, c-format
 msgid "unexpected argument `%s' to conditional binary operator"
 msgstr "onverwacht argument '%s' bij tweezijdige conditionele operator"
 
-#: parse.y:4895
+#: parse.y:4651
 msgid "unexpected argument to conditional binary operator"
 msgstr "onverwacht argument bij tweezijdige conditionele operator"
 
-#: parse.y:4906
+#: parse.y:4662
 #, c-format
 msgid "unexpected token `%c' in conditional command"
 msgstr "onverwacht symbool '%c' in conditionele opdracht"
 
-#: parse.y:4909
+#: parse.y:4665
 #, c-format
 msgid "unexpected token `%s' in conditional command"
 msgstr "onverwacht symbool '%s' in conditionele opdracht"
 
-#: parse.y:4913
+#: parse.y:4669
 #, c-format
 msgid "unexpected token %d in conditional command"
 msgstr "onverwacht symbool %d in conditionele opdracht"
 
-#: parse.y:6336
+#: parse.y:6118
 #, c-format
 msgid "syntax error near unexpected token `%s'"
 msgstr "syntaxfout nabij onverwacht symbool '%s'"
 
-#: parse.y:6355
+#: parse.y:6137
 #, c-format
 msgid "syntax error near `%s'"
 msgstr "syntaxfout nabij '%s'"
 
-#: parse.y:6365
+#: parse.y:6151
 msgid "syntax error: unexpected end of file"
 msgstr "syntaxfout: onverwacht bestandseinde"
 
-#: parse.y:6365
+#: parse.y:6151
 msgid "syntax error"
 msgstr "syntaxfout"
 
-#: parse.y:6428
+#: parse.y:6216
 #, c-format
 msgid "Use \"%s\" to leave the shell.\n"
 msgstr "Gebruik \"%s\" om de shell te verlaten.\n"
 
-#: parse.y:6602
+#: parse.y:6394
 msgid "unexpected EOF while looking for matching `)'"
 msgstr "onverwacht bestandseinde tijdens zoeken naar bijpassende ')'"
 
@@ -1642,94 +1652,94 @@ msgstr "xtrace_set(): bestandspointer is NIL"
 msgid "xtrace fd (%d) != fileno xtrace fp (%d)"
 msgstr "xtrace-bestandsdescriptor (%d) != bestandsnummer van xtrace-bestandspointer (%d)"
 
-#: print_cmd.c:1540
+#: print_cmd.c:1545
 #, c-format
 msgid "cprintf: `%c': invalid format character"
 msgstr "cprintf(): '%c': ongeldig opmaakteken"
 
-#: redir.c:149 redir.c:197
+#: redir.c:150 redir.c:198
 msgid "file descriptor out of range"
 msgstr "bestandsdescriptor valt buiten bereik"
 
-#: redir.c:204
+#: redir.c:205
 #, c-format
 msgid "%s: ambiguous redirect"
 msgstr "%s: omleiding is niet eenduidig"
 
-#: redir.c:208
+#: redir.c:209
 #, c-format
 msgid "%s: cannot overwrite existing file"
 msgstr "%s: kan bestaand bestand niet overschrijven"
 
-#: redir.c:213
+#: redir.c:214
 #, c-format
 msgid "%s: restricted: cannot redirect output"
 msgstr "%s: beperkte modus: omleiden van uitvoer is niet toegestaan"
 
-#: redir.c:218
+#: redir.c:219
 #, c-format
 msgid "cannot create temp file for here-document: %s"
 msgstr "kan geen tijdelijk bestand maken voor \"hier\"-document: %s"
 
-#: redir.c:222
+#: redir.c:223
 #, c-format
 msgid "%s: cannot assign fd to variable"
 msgstr "%s: kan bestandsdescriptor niet toewijzen aan variabele"
 
-#: redir.c:649
+#: redir.c:650
 msgid "/dev/(tcp|udp)/host/port not supported without networking"
 msgstr "/dev/(tcp|udp)/host/port is niet mogelijk zonder netwerk"
 
-#: redir.c:938 redir.c:1053 redir.c:1114 redir.c:1284
+#: redir.c:945 redir.c:1065 redir.c:1130 redir.c:1303
 msgid "redirection error: cannot duplicate fd"
 msgstr "omleidingsfout: kan bestandsdescriptor niet dupliceren"
 
-#: shell.c:347
+#: shell.c:353
 msgid "could not find /tmp, please create!"
 msgstr "Kan /tmp niet vinden; maak deze aan!"
 
-#: shell.c:351
+#: shell.c:357
 msgid "/tmp must be a valid directory name"
 msgstr "/tmp dient een geldige mapnaam te zijn"
 
-#: shell.c:804
+#: shell.c:826
 msgid "pretty-printing mode ignored in interactive shells"
 msgstr "pretty-printing-modus wordt genegeerd in interactieve shells"
 
-#: shell.c:948
+#: shell.c:972
 #, c-format
 msgid "%c%c: invalid option"
 msgstr "%c%c: ongeldige optie"
 
-#: shell.c:1319
+#: shell.c:1343
 #, c-format
 msgid "cannot set uid to %d: effective uid %d"
 msgstr "kan UID niet op %d instellen; effectieve UID is %d"
 
-#: shell.c:1330
+#: shell.c:1354
 #, c-format
 msgid "cannot set gid to %d: effective gid %d"
 msgstr "kan GID niet op %d instellen; effectieve GID is %d"
 
-#: shell.c:1518
+#: shell.c:1544
 msgid "cannot start debugger; debugging mode disabled"
 msgstr "kan debugger niet starten; debugging-modus is uitgeschakeld"
 
-#: shell.c:1632
+#: shell.c:1658
 #, c-format
 msgid "%s: Is a directory"
 msgstr "%s: is een map"
 
-#: shell.c:1881
+#: shell.c:1907
 msgid "I have no name!"
 msgstr "Ik heb geen naam!"
 
-#: shell.c:2035
+#: shell.c:2061
 #, c-format
 msgid "GNU bash, version %s-(%s)\n"
 msgstr "GNU bash, versie %s-(%s)\n"
 
-#: shell.c:2036
+#: shell.c:2062
 #, c-format
 msgid ""
 "Usage:\t%s [GNU long option] [option] ...\n"
@@ -1738,320 +1748,320 @@ msgstr ""
 "Gebruik:  %s [opties]\n"
 "          %s [opties] scriptbestand...\n"
 
-#: shell.c:2038
+#: shell.c:2064
 msgid "GNU long options:\n"
 msgstr "Lange opties:\n"
 
-#: shell.c:2042
+#: shell.c:2068
 msgid "Shell options:\n"
 msgstr "Korte opties:\n"
 
-#: shell.c:2043
+#: shell.c:2069
 msgid "\t-ilrsD or -c command or -O shopt_option\t\t(invocation only)\n"
 msgstr "\t-ilrsD,  of -c OPDRACHT,  of -O SHOPT-OPTIE    (enkel bij aanroep)\n"
 
-#: shell.c:2062
+#: shell.c:2088
 #, c-format
 msgid "\t-%s or -o option\n"
 msgstr "\t-%s,  of -o optie    (veranderbaar via 'set')\n"
 
-#: shell.c:2068
+#: shell.c:2094
 #, c-format
 msgid "Type `%s -c \"help set\"' for more information about shell options.\n"
 msgstr "Typ '%s -c \"help set\"' voor meer informatie over shell-opties.\n"
 
-#: shell.c:2069
+#: shell.c:2095
 #, c-format
 msgid "Type `%s -c help' for more information about shell builtin commands.\n"
 msgstr "Typ '%s -c help' voor meer informatie over ingebouwde shell-functies.\n"
 
-#: shell.c:2070
+#: shell.c:2096
 #, c-format
 msgid "Use the `bashbug' command to report bugs.\n"
 msgstr "Gebruik de opdracht 'bashbug' om fouten in bash te rapporteren.\n"
 
-#: shell.c:2072
+#: shell.c:2098
 #, c-format
 msgid "bash home page: <http://www.gnu.org/software/bash>\n"
 msgstr "Webpagina van 'bash': <http://www.gnu.org/software/bash>\n"
 
-#: shell.c:2073
+#: shell.c:2099
 #, c-format
 msgid "General help using GNU software: <http://www.gnu.org/gethelp/>\n"
 msgstr "Algemene hulp bij gebruik van GNU-software: <http://www.gnu.org/gethelp/>\n"
 
-#: sig.c:757
+#: sig.c:765
 #, c-format
 msgid "sigprocmask: %d: invalid operation"
 msgstr "sigprocmask(): %d: ongeldige operatie"
 
-#: siglist.c:47
+#: siglist.c:48
 msgid "Bogus signal"
 msgstr "Niet-bestaand signaal"
 
 # Vroeger ging dit over het afsluiten van een modemverbinding,
 # tegenwoordig over het afsluiten van een pseudoterminal.
-#: siglist.c:50
+#: siglist.c:51
 msgid "Hangup"
 msgstr "Opgehangen"
 
-#: siglist.c:54
+#: siglist.c:55
 msgid "Interrupt"
 msgstr "Onderbroken"
 
 # Verleden tijd, "Afgesloten", net als de andere actiesignaalnamen.
-#: siglist.c:58
+#: siglist.c:59
 msgid "Quit"
 msgstr "Afgesloten"
 
-#: siglist.c:62
+#: siglist.c:63
 msgid "Illegal instruction"
 msgstr "Ongeldige instructie"
 
-#: siglist.c:66
+#: siglist.c:67
 msgid "BPT trace/trap"
 msgstr "Traceer/breekpunt-instructie"
 
-#: siglist.c:74
+#: siglist.c:75
 msgid "ABORT instruction"
 msgstr "ABORT-instructie"
 
-#: siglist.c:78
+#: siglist.c:79
 msgid "EMT instruction"
 msgstr "EMT-instructie"
 
-#: siglist.c:82
+#: siglist.c:83
 msgid "Floating point exception"
 msgstr "Drijvendekomma-berekeningsfout"
 
-#: siglist.c:86
+#: siglist.c:87
 msgid "Killed"
 msgstr "Geëlimineerd"
 
-#: siglist.c:90
+#: siglist.c:91
 msgid "Bus error"
 msgstr "Busfout"
 
-#: siglist.c:94
+#: siglist.c:95
 msgid "Segmentation fault"
 msgstr "Segmentatiefout"
 
-#: siglist.c:98
+#: siglist.c:99
 msgid "Bad system call"
 msgstr "Onjuiste systeemaanroep"
 
-#: siglist.c:102
+#: siglist.c:103
 msgid "Broken pipe"
 msgstr "Gebroken pijp"
 
-#: siglist.c:106
+#: siglist.c:107
 msgid "Alarm clock"
 msgstr "Wekker"
 
-#: siglist.c:110
+#: siglist.c:111
 msgid "Terminated"
 msgstr "Beëindigd"
 
-#: siglist.c:114
+#: siglist.c:115
 msgid "Urgent IO condition"
 msgstr "Urgente in-/uitvoertoestand"
 
-#: siglist.c:118
+#: siglist.c:119
 msgid "Stopped (signal)"
 msgstr "Gepauzeerd (signaal)"
 
-#: siglist.c:126
+#: siglist.c:127
 msgid "Continue"
 msgstr "Doorgaan"
 
-#: siglist.c:134
+#: siglist.c:135
 msgid "Child death or stop"
 msgstr "Dochter is geëlimineerd of gestopt"
 
-#: siglist.c:138
+#: siglist.c:139
 msgid "Stopped (tty input)"
 msgstr "Gepauzeerd (terminalinvoer)"
 
-#: siglist.c:142
+#: siglist.c:143
 msgid "Stopped (tty output)"
 msgstr "Gepauzeerd (terminaluitvoer)"
 
-#: siglist.c:146
+#: siglist.c:147
 msgid "I/O ready"
 msgstr "I/O is mogelijk"
 
-#: siglist.c:150
+#: siglist.c:151
 msgid "CPU limit"
 msgstr "CPU-limiet"
 
-#: siglist.c:154
+#: siglist.c:155
 msgid "File limit"
 msgstr "Bestandslimiet"
 
-#: siglist.c:158
+#: siglist.c:159
 msgid "Alarm (virtual)"
 msgstr "Alarm (virtueel)"
 
-#: siglist.c:162
+#: siglist.c:163
 msgid "Alarm (profile)"
 msgstr "Alarm (profiel)"
 
-#: siglist.c:166
+#: siglist.c:167
 msgid "Window changed"
 msgstr "Venster is veranderd"
 
-#: siglist.c:170
+#: siglist.c:171
 msgid "Record lock"
 msgstr "Recordvergrendeling"
 
-#: siglist.c:174
+#: siglist.c:175
 msgid "User signal 1"
 msgstr "Gebruikerssignaal 1"
 
-#: siglist.c:178
+#: siglist.c:179
 msgid "User signal 2"
 msgstr "Gebruikerssignaal 2"
 
-#: siglist.c:182
+#: siglist.c:183
 msgid "HFT input data pending"
 msgstr "HFT-invoergegevens staan te wachten"
 
-#: siglist.c:186
+#: siglist.c:187
 msgid "power failure imminent"
 msgstr "stroomstoring dreigt"
 
-#: siglist.c:190
+#: siglist.c:191
 msgid "system crash imminent"
 msgstr "systeemcrash dreigt"
 
-#: siglist.c:194
+#: siglist.c:195
 msgid "migrate process to another CPU"
 msgstr "proces naar andere processor verplaatsen"
 
-#: siglist.c:198
+#: siglist.c:199
 msgid "programming error"
 msgstr "programmeerfout"
 
-#: siglist.c:202
+#: siglist.c:203
 msgid "HFT monitor mode granted"
 msgstr "HFT-monitormodus is gegeven"
 
-#: siglist.c:206
+#: siglist.c:207
 msgid "HFT monitor mode retracted"
 msgstr "HFT-monitormodus is herroepen"
 
-#: siglist.c:210
+#: siglist.c:211
 msgid "HFT sound sequence has completed"
 msgstr "HFT-geluidssequentie is afgespeeld"
 
-#: siglist.c:214
+#: siglist.c:215
 msgid "Information request"
 msgstr "Verzoek om informatie"
 
-#: siglist.c:222 siglist.c:224
+#: siglist.c:223 siglist.c:225
 #, c-format
 msgid "Unknown Signal #%d"
 msgstr "Onbekend signaal #%d"
 
-#: subst.c:1476 subst.c:1666
+#: subst.c:1480 subst.c:1670
 #, c-format
 msgid "bad substitution: no closing `%s' in %s"
 msgstr "ongeldige vervanging: geen sluit-'%s' in %s"
 
-#: subst.c:3281
+#: subst.c:3307
 #, c-format
 msgid "%s: cannot assign list to array member"
 msgstr "%s: kan geen lijst toewijzen aan een array-element"
 
-#: subst.c:5910 subst.c:5926
+#: subst.c:6048 subst.c:6064
 msgid "cannot make pipe for process substitution"
 msgstr "kan geen pijp maken voor procesvervanging"
 
-#: subst.c:5985
+#: subst.c:6124
 msgid "cannot make child for process substitution"
 msgstr "kan geen dochterproces maken voor procesvervanging"
 
-#: subst.c:6059
+#: subst.c:6198
 #, c-format
 msgid "cannot open named pipe %s for reading"
 msgstr "kan pijp genaamd %s niet openen om te lezen"
 
-#: subst.c:6061
+#: subst.c:6200
 #, c-format
 msgid "cannot open named pipe %s for writing"
 msgstr "kan pijp genaamd %s niet openen om te schrijven"
 
-#: subst.c:6084
+#: subst.c:6223
 #, c-format
 msgid "cannot duplicate named pipe %s as fd %d"
 msgstr "kan pijp genaamd %s niet dupliceren als bestandsdescriptor %d"
 
-#: subst.c:6213
+#: subst.c:6370
 msgid "command substitution: ignored null byte in input"
 msgstr "opdrachtsubstitutie: null-byte in invoer is genegeerd"
 
-#: subst.c:6353
+#: subst.c:6533
 msgid "cannot make pipe for command substitution"
 msgstr "kan geen pijp maken voor opdrachtvervanging"
 
-#: subst.c:6397
+#: subst.c:6580
 msgid "cannot make child for command substitution"
 msgstr "kan geen dochterproces maken voor opdrachtvervanging"
 
-#: subst.c:6423
+#: subst.c:6613
 msgid "command_substitute: cannot duplicate pipe as fd 1"
 msgstr "command_substitute(): kan pijp niet dupliceren als bestandsdescriptor 1"
 
-#: subst.c:6883 subst.c:9952
+#: subst.c:7082 subst.c:10252
 #, c-format
 msgid "%s: invalid variable name for name reference"
 msgstr "%s: ongeldige variabelenaam voor naamsverwijzing"
 
-#: subst.c:6979 subst.c:6997 subst.c:7169
+#: subst.c:7178 subst.c:7196 subst.c:7369
 #, c-format
 msgid "%s: invalid indirect expansion"
 msgstr "%s: ongeldige indirecte expansie"
 
-#: subst.c:7013 subst.c:7177
+#: subst.c:7212 subst.c:7377
 #, c-format
 msgid "%s: invalid variable name"
 msgstr "%s: ongeldige variabelenaam"
 
-#: subst.c:7256
+#: subst.c:7478
 #, c-format
 msgid "%s: parameter not set"
 msgstr "%s: parameter is niet ingesteld"
 
-#: subst.c:7258
+#: subst.c:7480
 #, c-format
 msgid "%s: parameter null or not set"
 msgstr "%s: lege parameter, of niet ingesteld"
 
-#: subst.c:7503 subst.c:7518
+#: subst.c:7727 subst.c:7742
 #, c-format
 msgid "%s: substring expression < 0"
 msgstr "%s: resultaat van deeltekenreeks is kleiner dan nul"
 
-#: subst.c:9281 subst.c:9302
+#: subst.c:9560 subst.c:9587
 #, c-format
 msgid "%s: bad substitution"
 msgstr "%s: ongeldige vervanging"
 
-#: subst.c:9390
+#: subst.c:9678
 #, c-format
 msgid "$%s: cannot assign in this way"
 msgstr "$%s: kan niet op deze manier toewijzen"
 
-#: subst.c:9814
+#: subst.c:10111
 msgid "future versions of the shell will force evaluation as an arithmetic substitution"
 msgstr "toekomstige versies van de shell zullen dit als een rekenkundige vervanging evalueren"
 
-#: subst.c:10367
+#: subst.c:10795
 #, c-format
 msgid "bad substitution: no closing \"`\" in %s"
 msgstr "ongeldige vervanging: geen afsluitende '`' in %s"
 
-#: subst.c:11434
+#: subst.c:11874
 #, c-format
 msgid "no match: %s"
 msgstr "geen overeenkomst: %s"
@@ -2074,21 +2084,21 @@ msgstr "')' werd verwacht"
 msgid "`)' expected, found %s"
 msgstr "')' werd verwacht; %s gevonden"
 
-#: test.c:466 test.c:799
+#: test.c:469 test.c:814
 #, c-format
 msgid "%s: binary operator expected"
 msgstr "tweezijdige operator werd verwacht, %s gevonden"
 
-#: test.c:756 test.c:759
+#: test.c:771 test.c:774
 #, c-format
 msgid "%s: unary operator expected"
 msgstr "eenzijdige operator werd verwacht, %s gevonden"
 
-#: test.c:881
+#: test.c:896
 msgid "missing `]'"
 msgstr "ontbrekende ']'"
 
-#: test.c:899
+#: test.c:914
 #, c-format
 msgid "syntax error: `%s' unexpected"
 msgstr "syntaxfout: onverwachte '%s'"
@@ -2097,99 +2107,104 @@ msgstr "syntaxfout: onverwachte '%s'"
 msgid "invalid signal number"
 msgstr "ongeldig signaalnummer"
 
-#: trap.c:325
+#: trap.c:323
 #, c-format
 msgid "trap handler: maximum trap handler level exceeded (%d)"
 msgstr "trap handler: maximum 'trap-handler'-niveau is overschreden (%d)"
 
-#: trap.c:414
+#: trap.c:412
 #, c-format
 msgid "run_pending_traps: bad value in trap_list[%d]: %p"
 msgstr "run_pending_traps(): ongeldige waarde in trap_list[%d]: %p"
 
-#: trap.c:418
+#: trap.c:416
 #, c-format
 msgid "run_pending_traps: signal handler is SIG_DFL, resending %d (%s) to myself"
 msgstr "run_pending_traps: signaalverwerker is SIG_DFL, herzenden van %d (%s) aan mezelf..."
 
-#: trap.c:487
+#: trap.c:509
 #, c-format
 msgid "trap_handler: bad signal %d"
 msgstr "trap_handler(): ongeldig signaal %d"
 
-#: variables.c:421
+#: variables.c:424
 #, c-format
 msgid "error importing function definition for `%s'"
 msgstr "fout tijdens importeren van functiedefinitie voor '%s'"
 
-#: variables.c:833
+#: variables.c:838
 #, c-format
 msgid "shell level (%d) too high, resetting to 1"
 msgstr "shell-niveau is te hoog (%d); teruggezet op 1"
 
-#: variables.c:2674
+#: variables.c:2642
 msgid "make_local_variable: no function context at current scope"
 msgstr "make_local_variable(): er is geen functiecontext in huidige geldigheidsbereik"
 
-#: variables.c:2693
+#: variables.c:2661
 #, c-format
 msgid "%s: variable may not be assigned value"
 msgstr "%s: aan variabele mag geen waarde toegewezen worden"
 
-#: variables.c:3475
+#: variables.c:2818 variables.c:2874
+#, c-format
+msgid "%s: cannot inherit value from incompatible type"
+msgstr "%s: kan geen waarde overerven van incompatibel type"
+
+#: variables.c:3459
 #, c-format
 msgid "%s: assigning integer to name reference"
 msgstr "%s: toekenning van geheel getal aan naamsverwijzing"
 
-#: variables.c:4404
+#: variables.c:4390
 msgid "all_local_variables: no function context at current scope"
 msgstr "all_local_variables(): er is geen functiecontext in huidige geldigheidsbereik"
 
-#: variables.c:4771
+#: variables.c:4757
 #, c-format
 msgid "%s has null exportstr"
 msgstr "*** %s heeft lege export-tekenreeks"
 
-#: variables.c:4776 variables.c:4785
+#: variables.c:4762 variables.c:4771
 #, c-format
 msgid "invalid character %d in exportstr for %s"
 msgstr "*** ongeldig teken '%d' in export-tekenreeks voor %s"
 
-#: variables.c:4791
+#: variables.c:4777
 #, c-format
 msgid "no `=' in exportstr for %s"
 msgstr "*** geen '=' in export-tekenreeks voor %s"
 
-#: variables.c:5331
+#: variables.c:5317
 msgid "pop_var_context: head of shell_variables not a function context"
 msgstr "pop_var_context(): top van 'shell_variables' is geen functiecontext"
 
-#: variables.c:5344
+#: variables.c:5330
 msgid "pop_var_context: no global_variables context"
 msgstr "pop_var_context(): er is geen 'global_variables'-context"
 
-#: variables.c:5424
+#: variables.c:5410
 msgid "pop_scope: head of shell_variables not a temporary environment scope"
 msgstr "pop_scope(): top van 'shell_variables' is geen tijdelijk geldigheidsbereik"
 
-#: variables.c:6387
+#: variables.c:6400
 #, c-format
 msgid "%s: %s: cannot open as FILE"
 msgstr "%s: Kan %s niet openen als BESTAND"
 
-#: variables.c:6392
+#: variables.c:6405
 #, c-format
 msgid "%s: %s: invalid value for trace file descriptor"
 msgstr "%s: ongeldige waarde %s voor 'trace'-bestandsdescriptor"
 
-#: variables.c:6437
+#: variables.c:6450
 #, c-format
 msgid "%s: %s: compatibility value out of range"
 msgstr "%s: %s: compatibiliteitswaarde valt buiten bereik"
 
 #: version.c:46 version2.c:46
-msgid "Copyright (C) 2020 Free Software Foundation, Inc."
-msgstr "Copyright (C) 2020 Free Software Foundation, Inc."
+msgid "Copyright (C) 2022 Free Software Foundation, Inc."
+msgstr "Copyright (C) 2022 Free Software Foundation, Inc."
 
 #: version.c:47 version2.c:47
 msgid "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n"
@@ -2276,12 +2291,12 @@ msgid "command [-pVv] command [arg ...]"
 msgstr "command [-pVv] OPDRACHT [ARGUMENT...]"
 
 #: builtins.c:78
-msgid "declare [-aAfFgiIlnrtux] [-p] [name[=value] ...]"
-msgstr "declare [-aAfFgiIlnrtux] [-p] [NAAM[=WAARDE] ...]"
+msgid "declare [-aAfFgiIlnrtux] [name[=value] ...] or declare -p [-aAfFilnrtux] [name ...]"
+msgstr "declare [-aAfFgiIlnrtux] [NAAM[=WAARDE] ...] of declare -p [-aAfFilnrtux] [NAAM ...]"
 
 #: builtins.c:80
-msgid "typeset [-aAfFgiIlnrtux] [-p] name[=value] ..."
-msgstr "typeset [-aAfFgiIlnrtux] [-p] NAAM[=WAARDE]..."
+msgid "typeset [-aAfFgiIlnrtux] name[=value] ... or typeset -p [-aAfFilnrtux] [name ...]"
+msgstr "typeset [-aAfFgiIlnrtux] NAAM[=WAARDE] ... of typeset -p [-aAfFilnrtux] [NAAM ...]"
 
 #: builtins.c:82
 msgid "local [option] name[=value] ..."
@@ -2375,8 +2390,8 @@ msgid "return [n]"
 msgstr "return [N]"
 
 #: builtins.c:142
-msgid "set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...]"
-msgstr "set [--abefhkmnptuvxBCHP] [-o OPTIENAAM] [--] [ARGUMENT...]"
+msgid "set [-abefhkmnptuvxBCEHPT] [-o option-name] [--] [-] [arg ...]"
+msgstr "set [-abefhkmnptuvxBCEHPT] [-o OPTIENAAM] [--] [-] [ARGUMENT...]"
 
 #: builtins.c:144
 msgid "unset [-f] [-v] [-n] [name ...]"
@@ -2423,8 +2438,8 @@ msgid "type [-afptP] name [name ...]"
 msgstr "type [-afptP] NAAM..."
 
 #: builtins.c:171
-msgid "ulimit [-SHabcdefiklmnpqrstuvxPT] [limit]"
-msgstr "ulimit [-SHabcdefiklmnpqrstuvxPT] [GRENSWAARDE]"
+msgid "ulimit [-SHabcdefiklmnpqrstuvxPRT] [limit]"
+msgstr "ulimit [-SHabcdefiklmnpqrstuvxPRT] [GRENSWAARDE]"
 
 #: builtins.c:174
 msgid "umask [-p] [-S] [mode]"
@@ -2463,12 +2478,12 @@ msgid "if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else C
 msgstr "if OPDRACHTEN; then OPDRACHTEN; [elif OPDRACHTEN; then OPDRACHTEN;]... [else OPDRACHTEN;] fi"
 
 #: builtins.c:196
-msgid "while COMMANDS; do COMMANDS; done"
-msgstr "while OPDRACHTEN; do OPDRACHTEN; done"
+msgid "while COMMANDS; do COMMANDS-2; done"
+msgstr "while OPDRACHTEN; do OPDRACHTEN2; done"
 
 #: builtins.c:198
-msgid "until COMMANDS; do COMMANDS; done"
-msgstr "until OPDRACHTEN; do OPDRACHTEN; done"
+msgid "until COMMANDS; do COMMANDS-2; done"
+msgstr "until OPDRACHTEN; do OPDRACHTEN2; done"
 
 #: builtins.c:200
 msgid "coproc [NAME] command [redirections]"
@@ -3747,7 +3762,8 @@ msgid ""
 "    splitting, and the first word is assigned to the first NAME, the second\n"
 "    word to the second NAME, and so on, with any leftover words assigned to\n"
 "    the last NAME.  Only the characters found in $IFS are recognized as word\n"
-"    delimiters.\n"
+"    delimiters. By default, the backslash character escapes delimiter characters\n"
+"    and newline.\n"
 "    \n"
 "    If no NAMEs are supplied, the line read is stored in the REPLY variable.\n"
 "    \n"
@@ -3789,8 +3805,11 @@ msgstr ""
 "    als optie '-u' gegeven is) en wijst het eerste woord aan de eerste NAAM toe,\n"
 "    het tweede woord aan de tweede NAAM, en zo verder; de resterende woorden\n"
 "    worden toegewezen aan de laatste NAAM.  Alleen de tekens in de variabele\n"
-"    IFS worden herkend als woordscheidingstekens.  Als er geen namen gegeven\n"
-"    zijn, dan wordt de gelezen regel opgeslagen in de variabele REPLY.\n"
+"    IFS worden herkend als woordscheidingstekens.  Standaard ontdoet een\n"
+"    backslash scheidingstekens en het nieuweregelteken van hun betekenis.\n"
+"\n"
+"    Als er geen namen gegeven zijn, dan wordt de gelezen regel opgeslagen in\n"
+"    de variabele REPLY.\n"
 "\n"
 "    Opties:\n"
 "      -a ARRAY   de gelezen woorden toekennen aan de opeenvolgende posities\n"
@@ -3819,7 +3838,7 @@ msgstr ""
 "    de tijdslimiet overschreden werd, er een toekenningsfout optrad, of een\n"
 "    ongeldige bestandsdescriptor als argument van '-u' gegeven werd."
 
-#: builtins.c:1041
+#: builtins.c:1042
 msgid ""
 "Return from a shell function.\n"
 "    \n"
@@ -3840,7 +3859,7 @@ msgstr ""
 "    uitvoeren is."
 
 # Voor de duidelijkheid is de tekstvolgorde veranderd.
-#: builtins.c:1054
+#: builtins.c:1055
 msgid ""
 "Set or unset values of shell options and positional parameters.\n"
 "    \n"
@@ -4000,7 +4019,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is 0, tenzij een ongeldige optie gegeven werd."
 
-#: builtins.c:1139
+#: builtins.c:1140
 msgid ""
 "Unset values and attributes of shell variables and functions.\n"
 "    \n"
@@ -4037,7 +4056,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldige optie gegeven werd of een\n"
 "    NAAM alleen-lezen is."
 
-#: builtins.c:1161
+#: builtins.c:1162
 msgid ""
 "Set export attribute for shell variables.\n"
 "    \n"
@@ -4069,7 +4088,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is 0, tenzij een ongeldige optie of NAAM gegeven werd."
 
-#: builtins.c:1180
+#: builtins.c:1181
 msgid ""
 "Mark shell variables as unchangeable.\n"
 "    \n"
@@ -4106,7 +4125,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is 0, tenzij een ongeldige optie of NAAM gegeven werd."
 
-#: builtins.c:1202
+#: builtins.c:1203
 msgid ""
 "Shift positional parameters.\n"
 "    \n"
@@ -4123,7 +4142,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is 0 tenzij N negatief is of groter dan $#."
 
-#: builtins.c:1214 builtins.c:1229
+#: builtins.c:1215 builtins.c:1230
 msgid ""
 "Execute commands from a file in the current shell.\n"
 "    \n"
@@ -4146,7 +4165,7 @@ msgstr ""
 "    De afsluitwaarde is die van de laatst uitgevoerde opdracht in het gegeven\n"
 "    bestand, of 1 als dit bestand niet gelezen kan worden."
 
-#: builtins.c:1245
+#: builtins.c:1246
 msgid ""
 "Suspend shell execution.\n"
 "    \n"
@@ -4171,7 +4190,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij taakbeheer uitgeschakeld is of er een fout\n"
 "    optreedt."
 
-#: builtins.c:1261
+#: builtins.c:1262
 msgid ""
 "Evaluate conditional expression.\n"
 "    \n"
@@ -4313,7 +4332,7 @@ msgstr ""
 "    De afsluitwaarde is 0 als EXPRESSIE waar is, 1 als EXPRESSIE onwaar is,\n"
 "    en 2 als een ongeldig argument gegeven werd."
 
-#: builtins.c:1343
+#: builtins.c:1344
 msgid ""
 "Evaluate conditional expression.\n"
 "    \n"
@@ -4325,7 +4344,7 @@ msgstr ""
 "    Dit is een synoniem voor de ingebouwde functie 'test', behalve dat\n"
 "    het laatste argument een ']' moet zijn, horend bij de begin-'['."
 
-#: builtins.c:1352
+#: builtins.c:1353
 msgid ""
 "Display process times.\n"
 "    \n"
@@ -4343,7 +4362,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is altijd 0."
 
-#: builtins.c:1364
+#: builtins.c:1365
 msgid ""
 "Trap signals and other events.\n"
 "    \n"
@@ -4412,7 +4431,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldige optie of SIGNAALAANDUIDING\n"
 "    gegeven werd."
 
-#: builtins.c:1400
+#: builtins.c:1401
 msgid ""
 "Display information about command type.\n"
 "    \n"
@@ -4463,7 +4482,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is 0 als elke NAAM gevonden werd, anders 1."
 
-#: builtins.c:1431
+#: builtins.c:1432
 msgid ""
 "Modify shell resource limits.\n"
 "    \n"
@@ -4557,7 +4576,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldige optie gegeven werd of er een\n"
 "    fout optrad."
 
-#: builtins.c:1482
+#: builtins.c:1483
 msgid ""
 "Display or set file mode mask.\n"
 "    \n"
@@ -4589,7 +4608,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij MODUS ongeldig is of een ongeldige optie\n"
 "    gegeven werd."
 
-#: builtins.c:1502
+#: builtins.c:1503
 msgid ""
 "Wait for job completion and return exit status.\n"
 "    \n"
@@ -4640,7 +4659,7 @@ msgstr ""
 "    of als een ongeldige optie gegeven werd, of als '-n' gegeven werd maar de\n"
 "    shell geen dochters heeft waarop gewacht wordt."
 
-#: builtins.c:1533
+#: builtins.c:1534
 msgid ""
 "Wait for process completion and return exit status.\n"
 "    \n"
@@ -4662,7 +4681,7 @@ msgstr ""
 "    De afsluitwaarde is die van de laatste PID, 1 als PID ongeldig is,\n"
 "    of 2 als een ongeldige optie gegeven werd."
 
-#: builtins.c:1548
+#: builtins.c:1549
 msgid ""
 "Execute commands for each member in a list.\n"
 "    \n"
@@ -4683,7 +4702,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is die van de laatst uitgevoerde opdracht."
 
-#: builtins.c:1562
+#: builtins.c:1563
 msgid ""
 "Arithmetic for loop.\n"
 "    \n"
@@ -4710,7 +4729,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is die van de laatst uitgevoerde opdracht."
 
-#: builtins.c:1580
+#: builtins.c:1581
 msgid ""
 "Select words from a list and execute commands.\n"
 "    \n"
@@ -4747,7 +4766,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is die van de laatst uitgevoerde opdracht."
 
-#: builtins.c:1601
+#: builtins.c:1602
 msgid ""
 "Report time consumed by pipeline's execution.\n"
 "    \n"
@@ -4772,9 +4791,10 @@ msgstr ""
 "    De uitvoer kan via de omgevingsvariabele TIMEFORMAT aangepast worden.\n"
 "    Optie '-p' negeert deze omgevingsvariabele en toont de tijden in een\n"
 "    overdraagbare standaardopmaak.\n"
+"\n"
 "    De afsluitwaarde is die van de PIJPLIJN."
 
-#: builtins.c:1618
+#: builtins.c:1619
 msgid ""
 "Execute commands based on pattern matching.\n"
 "    \n"
@@ -4792,7 +4812,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is die van de laatst uitgevoerde opdracht."
 
-#: builtins.c:1630
+#: builtins.c:1631
 msgid ""
 "Execute commands based on conditional.\n"
 "    \n"
@@ -4820,41 +4840,41 @@ msgstr ""
 "    De afsluitwaarde van de gehele opdracht is die van de laatst uitgevoerde\n"
 "    deelopdracht, of nul als geen enkele 'if' of 'elif' nul opleverde."
 
-#: builtins.c:1647
+#: builtins.c:1648
 msgid ""
 "Execute commands as long as a test succeeds.\n"
 "    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `while' COMMANDS has an exit status of zero.\n"
+"    Expand and execute COMMANDS-2 as long as the final command in COMMANDS has\n"
+"    an exit status of zero.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
 "Opdrachten uitvoeren zolang een test slaagt.\n"
 "\n"
-"    Voert de gegeven opdrachten uit zolang de laatste opdracht achter\n"
-"    'while' een afsluitwaarde van 0 heeft.\n"
+"    Voert de tweede reeks opdrachten uit zolang de laatste opdracht van\n"
+"    de eerste reeks een afsluitwaarde van 0 heeft.\n"
 "\n"
 "    De afsluitwaarde is die van de laatst uitgevoerde opdracht."
 
-#: builtins.c:1659
+#: builtins.c:1660
 msgid ""
 "Execute commands as long as a test does not succeed.\n"
 "    \n"
-"    Expand and execute COMMANDS as long as the final command in the\n"
-"    `until' COMMANDS has an exit status which is not zero.\n"
+"    Expand and execute COMMANDS-2 as long as the final command in COMMANDS has\n"
+"    an exit status which is not zero.\n"
 "    \n"
 "    Exit Status:\n"
 "    Returns the status of the last command executed."
 msgstr ""
 "Opdrachten uitvoeren zolang een test niet slaagt.\n"
 "\n"
-"    Voert de gegeven opdrachten uit zolang de laatste opdracht achter\n"
-"    'until' een afsluitwaarde ongelijk aan 0 heeft.\n"
+"    Voert de tweede reeks opdrachten uit zolang de laatste opdracht van\n"
+"    de eerste reeks een afsluitwaarde ongelijk aan 0 heeft.\n"
 "\n"
 "    De afsluitwaarde is die van de laatst uitgevoerde opdracht."
 
-#: builtins.c:1671
+#: builtins.c:1672
 msgid ""
 "Create a coprocess named NAME.\n"
 "    \n"
@@ -4875,7 +4895,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde van coproc is 0."
 
-#: builtins.c:1685
+#: builtins.c:1686
 msgid ""
 "Define shell function.\n"
 "    \n"
@@ -4896,7 +4916,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is 0, tenzij NAAM onveranderbaar is."
 
-#: builtins.c:1699
+#: builtins.c:1700
 msgid ""
 "Group commands as a unit.\n"
 "    \n"
@@ -4913,7 +4933,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is die van de laatst uitgevoerde opdracht."
 
-#: builtins.c:1711
+#: builtins.c:1712
 msgid ""
 "Resume job in foreground.\n"
 "    \n"
@@ -4937,7 +4957,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is die van de hervatte taak."
 
-#: builtins.c:1726
+#: builtins.c:1727
 msgid ""
 "Evaluate arithmetic expression.\n"
 "    \n"
@@ -4954,7 +4974,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is 1 als de EXPRESSIE tot 0 evalueert; anders 0."
 
-#: builtins.c:1738
+#: builtins.c:1739
 msgid ""
 "Execute conditional command.\n"
 "    \n"
@@ -5000,7 +5020,7 @@ msgstr ""
 "\n"
 "    De afsluitwaarde is 0 of 1, afhankelijk van EXPRESSIE."
 
-#: builtins.c:1764
+#: builtins.c:1765
 msgid ""
 "Common shell variable names and usage.\n"
 "    \n"
@@ -5098,7 +5118,7 @@ msgstr ""
 "                    vervangingsteken, gewoonlijk '^'; het derde teken is het\n"
 "                    geschiedeniscommentaarteken, gewoonlijk '#'\n"
 
-#: builtins.c:1821
+#: builtins.c:1822
 msgid ""
 "Add directories to stack.\n"
 "    \n"
@@ -5151,7 +5171,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldig argument gegeven werd of de\n"
 "    mapwijziging mislukte."
 
-#: builtins.c:1855
+#: builtins.c:1856
 msgid ""
 "Remove directories from stack.\n"
 "    \n"
@@ -5200,7 +5220,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldig argument gegeven werd of de\n"
 "    mapwijziging mislukte."
 
-#: builtins.c:1885
+#: builtins.c:1886
 msgid ""
 "Display directory stack.\n"
 "    \n"
@@ -5249,7 +5269,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldige optie gegeven werd of er een\n"
 "    fout optrad."
 
-#: builtins.c:1916
+#: builtins.c:1917
 msgid ""
 "Set and unset shell options.\n"
 "    \n"
@@ -5288,7 +5308,7 @@ msgstr ""
 "    een ongeldige optienaam gegeven werd, en de afsluitwaarde is 2 als een\n"
 "    ongeldige optie gegeven werd."
 
-#: builtins.c:1937
+#: builtins.c:1938
 msgid ""
 "Formats and prints ARGUMENTS under control of the FORMAT.\n"
 "    \n"
@@ -5307,6 +5327,8 @@ msgid ""
 "    \n"
 "      %b\texpand backslash escape sequences in the corresponding argument\n"
 "      %q\tquote the argument in a way that can be reused as shell input\n"
+"      %Q\tlike %q, but apply any precision to the unquoted argument before\n"
+"    \t\tquoting\n"
 "      %(fmt)T\toutput the date-time string resulting from using FMT as a format\n"
 "    \t        string for strftime(3)\n"
 "    \n"
@@ -5336,8 +5358,10 @@ msgstr ""
 "    betekent %b dat de backslash-stuurtekens in het betreffende argument\n"
 "    omgezet moeten worden, en betekent %q dat het argument op zo'n manier\n"
 "    aangehaald moet worden dat het als invoer voor de shell hergebruikt\n"
-"    kan worden.  Verder betekent %(OPMAAK)T dat datum-plus-tijd getoond\n"
-"    moet worden door deze opmaak aan strftime(3) mee te geven.\n"
+"    kan worden.  %Q is als %q, maar een precisie wordt toegepast op het\n"
+"    onaangehaalde argument vóór het aanhalen.  Verder betekent %(OPMAAK)T\n"
+"    dat datum-plus-tijd getoond moet worden door deze opmaak aan strftime(3)\n"
+"    mee te geven.\n"
 "\n"
 "    De gegeven opmaak wordt zo vaak hergebruikt als nodig is om alle argumenten\n"
 "    te consumeren.  Als er minder argumenten zijn dan de opmaak verwacht, dan\n"
@@ -5347,7 +5371,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldige optie gegeven werd of er een\n"
 "    schrijf- of toekenningsfout optrad."
 
-#: builtins.c:1971
+#: builtins.c:1974
 msgid ""
 "Specify how arguments are to be completed by Readline.\n"
 "    \n"
@@ -5397,7 +5421,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldige optie gegeven werd of er\n"
 "    een fout optrad."
 
-#: builtins.c:2001
+#: builtins.c:2004
 msgid ""
 "Display possible completions depending on the options.\n"
 "    \n"
@@ -5417,7 +5441,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldige optie gegeven werd of er een\n"
 "    fout optrad."
 
-#: builtins.c:2016
+#: builtins.c:2019
 msgid ""
 "Modify or display completion options.\n"
 "    \n"
@@ -5469,7 +5493,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij een ongeldige optie gegeven werd of voor\n"
 "    NAAM geen completeringsvoorschrift gedefinieerd is."
 
-#: builtins.c:2047
+#: builtins.c:2050
 msgid ""
 "Read lines from the standard input into an indexed array variable.\n"
 "    \n"
@@ -5532,7 +5556,7 @@ msgstr ""
 "    De afsluitwaarde is 0, tenzij ARRAY alleen-lezen is of geen array is, of\n"
 "    een ongeldige optie gegeven werd."
 
-#: builtins.c:2083
+#: builtins.c:2086
 msgid ""
 "Read lines from a file into an array variable.\n"
 "    \n"
@@ -5542,6 +5566,9 @@ msgstr ""
 "\n"
 "    Een synoniem voor 'mapfile'."
 
+#~ msgid "%s: invalid associative array key"
+#~ msgstr "%s: ongeldige sleutel voor associatief array"
+
 #~ msgid ""
 #~ "Returns the context of the current subroutine call.\n"
 #~ "    \n"
diff --git a/subst.c b/subst.c
index 394b56151fe62447cc68dff87bcbd08e959c24c3..163f42c1a7f764549188cdc279a48e4fc24f4f89 100644 (file)
--- a/subst.c
+++ b/subst.c
@@ -11258,7 +11258,7 @@ add_string:
          {
            t_index = sindex++;
 
-           temp = string_extract (string, &sindex, "`", SX_REQMATCH);
+           temp = string_extract (string, &sindex, "`", (word->flags & W_COMPLETE) ? SX_COMPLETE : SX_REQMATCH);
            /* The test of sindex against t_index is to allow bare instances of
               ` to pass through, for backwards compatibility. */
            if (temp == &extract_string_error || temp == &extract_string_fatal)
diff --git a/test.c b/test.c
index 0b96456a124c651d094129c15f63136e5cd9cff4..9997df149ad8452087638abd34ddd96cede82877 100644 (file)
--- a/test.c
+++ b/test.c
@@ -804,6 +804,7 @@ three_arguments ()
     {
       advance (1);
       value = !two_arguments ();
+      pos = argc;
     }
   else if (argv[pos][0] == '(' && argv[pos+2][0] == ')')
     {
index 0b06381072414283266cf5d055a42ac14b9b6da6..c8bef8dd12533217b1b65fc20d00f3d1cc1b81e7 100755 (executable)
@@ -1,4 +1,4 @@
-BUILD_DIR=/usr/local/build/chet/bash/bash-current
+BUILD_DIR=/usr/local/build/bash/bash-current
 THIS_SH=$BUILD_DIR/bash
 PATH=$PATH:$BUILD_DIR
 
index 391edbbd34902184d75fc3e77cc7d8adbb64f9bd..4be22f4bbadcba480f83865cdfdec0de98009f10 100644 (file)
@@ -220,6 +220,8 @@ t ! -z "$z"
 0
 t ! -n "$z"
 1
+t ! ! "$z"
+0
 t "$zero"
 1
 t ! "$zero"
@@ -272,7 +274,7 @@ b ( 1 = 2
 2
 ./test.tests: line 26: test: too many arguments
 2
-./test.tests: line 431: [: missing `]'
+./test.tests: line 434: [: missing `]'
 2
 ./test.tests: line 26: test: (: unary operator expected
 2
index 03e2754a5d6df36b6f0d0961152c4b1fbdac81bd..df4b850956faf001999d5a33db827a2b5cae0367 100644 (file)
@@ -358,6 +358,9 @@ t ! -z "$z"
 echo 't ! -n "$z"'
 t ! -n "$z"
 
+echo 't ! ! "$z"'
+t ! ! "$z"
+
 zero=
 echo 't "$zero"'
 t "$zero"