[ 
https://issues.apache.org/jira/browse/HADOOP-13079?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15267764#comment-15267764
 ] 

Allen Wittenauer edited comment on HADOOP-13079 at 5/3/16 12:11 AM:
--------------------------------------------------------------------

bq. It's not surprising, because it matches the traditional UNIX / Linux 
behavior. 

The defaulting of -q on is not traditional UNIX behavior.  It may be what GNU 
does ("Linux"), but it's not the expected, standard behavior according to the 
POSIX spec. (The POSIX spec, does, however, say that individual implementations 
may turn it on.)  The fact that -q is an stanard, single letter option and the 
way to turn it off is not should have been a very big hint.


was (Author: aw):
bq. It's not surprising, because it matches the traditional UNIX / Linux 
behavior. 

The defaulting of -q on is not traditional UNIX behavior.  It may be what GNU 
does ("Linux"), but it's not the expected, standard behavior according to the 
POSIX spec. (The POSIX spec, does, however, say that individual implementations 
may turn it on.)  The fact that -q is an option and the way to turn it off is 
not should have been a very big hint.

> Add -q to fs -ls to print non-printable characters
> --------------------------------------------------
>
>                 Key: HADOOP-13079
>                 URL: https://issues.apache.org/jira/browse/HADOOP-13079
>             Project: Hadoop Common
>          Issue Type: Bug
>            Reporter: John Zhuge
>            Assignee: John Zhuge
>              Labels: supportability
>
> Add option {{-q}} to "hdfs dfs -ls" to print non-printable characters as "?". 
> Non-printable characters are defined by 
> [isprint(3)|http://linux.die.net/man/3/isprint] according to the current 
> locale.
> Default to {{-q}} behavior on terminal; otherwise, print raw characters. See 
> the difference in these 2 command lines:
> * {{hadoop fs -ls /dir}}
> * {{hadoop fs -ls /dir | od -c}}
> In C, {{isatty(STDOUT_FILENO)}} is used to find out whether the output is a 
> terminal. Since Java doesn't have {{isatty}}, I will use JNI to call C 
> {{isatty()}} because the closest test {{System.console() == null}} does not 
> work in some cases.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to