]>
Commit | Line | Data |
---|---|---|
7117c2d2 JA |
1 | /* |
2 | recho -- really echo args, bracketed with <> and with invisible chars | |
3 | made visible. | |
4 | ||
5 | Chet Ramey | |
6 | chet@po.cwru.edu | |
7 | */ | |
8 | ||
95732b49 | 9 | /* Copyright (C) 2002-2005 Free Software Foundation, Inc. |
7117c2d2 JA |
10 | |
11 | This file is part of GNU Bash, the Bourne Again SHell. | |
12 | ||
3185942a JA |
13 | Bash is free software: you can redistribute it and/or modify |
14 | it under the terms of the GNU General Public License as published by | |
15 | the Free Software Foundation, either version 3 of the License, or | |
16 | (at your option) any later version. | |
7117c2d2 | 17 | |
3185942a JA |
18 | Bash is distributed in the hope that it will be useful, |
19 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
21 | GNU General Public License for more details. | |
22 | ||
23 | You should have received a copy of the GNU General Public License | |
24 | along with Bash. If not, see <http://www.gnu.org/licenses/>. | |
25 | */ | |
7117c2d2 | 26 | |
95732b49 JA |
27 | #if defined (HAVE_CONFIG_H) |
28 | # include <config.h> | |
29 | #endif | |
7117c2d2 | 30 | |
95732b49 | 31 | #include "bashansi.h" |
726f6388 JA |
32 | #include <stdio.h> |
33 | ||
d166f048 JA |
34 | void strprint(); |
35 | ||
36 | int | |
726f6388 JA |
37 | main(argc, argv) |
38 | int argc; | |
39 | char **argv; | |
40 | { | |
41 | register int i; | |
42 | ||
43 | for (i = 1; i < argc; i++) { | |
44 | printf("argv[%d] = <", i); | |
45 | strprint(argv[i]); | |
46 | printf(">\n"); | |
47 | } | |
d166f048 | 48 | exit(0); |
726f6388 JA |
49 | } |
50 | ||
d166f048 | 51 | void |
726f6388 JA |
52 | strprint(str) |
53 | char *str; | |
54 | { | |
7117c2d2 | 55 | register unsigned char *s; |
726f6388 | 56 | |
7117c2d2 | 57 | for (s = (unsigned char *)str; s && *s; s++) { |
726f6388 JA |
58 | if (*s < ' ') { |
59 | putchar('^'); | |
60 | putchar(*s+64); | |
61 | } else if (*s == 127) { | |
62 | putchar('^'); | |
63 | putchar('?'); | |
64 | } else | |
65 | putchar(*s); | |
66 | } | |
67 | } |