Chinaunix

标题: 关于ls命令 [打印本页]

作者: mingjwan    时间: 2005-09-10 16:01
标题: 关于ls命令
突然发现,直接使用ls命令时:列出文件的格式如下:
bin     dev      home     lib        misc   opt   ...
但是使用了命令ls >; a.txt后cat a.txt后的结果却是如下:
bin
dev
home
lib
....
呵呵,这是为什么呢?
作者: sakulagi    时间: 2005-09-10 16:40
标题: 关于ls命令
ls大概可以根据stdout的类型来判断是否用某种格式输出,呵呵。
作者: tonyfu    时间: 2005-09-10 17:09
标题: 关于ls命令
这样可以原样输出
list=`ls`
echo $list

用cat filename时输入的结果方便把结果作为变量使用,呵呵
作者: mingjwan    时间: 2005-09-12 12:34
标题: 关于ls命令
原帖由 "tonyfu" 发表:
这样可以原样输出
list=`ls`
echo $list

不行啊?还是一行输出.
作者: tonyfu    时间: 2005-09-12 12:48
标题: 关于ls命令
就是输出一行啊,,如果想竖列输出就要用你的方法
ls >;aa
cat aa
作者: mingjwan    时间: 2005-09-12 13:29
标题: 关于ls命令
呵呵,离题了.我主要是想知道为什么会结果不同.
作者: tonyfu    时间: 2005-09-12 13:33
标题: 关于ls命令
反正就是这结果,呵呵,,至于为什么会这样不太好回答,,,请斑竹来吧
作者: sakulagi    时间: 2005-09-12 13:52
标题: 关于ls命令

  1. if (isatty (STDOUT_FILENO))
  2.         {
  3.           format = many_per_line;
  4.           /* See description of qmark_funny_chars, above.  */
  5.           qmark_funny_chars = 1;
  6.         }
  7.       else
  8.         {
  9.           format = one_per_line;
  10.           qmark_funny_chars = 0;
  11.         }
  12.       break;
复制代码

看了一下ls的源码,证实了我开始的想法。楼主看看这个代码,有没有发现啥?
作者: tonyfu    时间: 2005-09-12 13:56
标题: 关于ls命令
佩服佩服,,,根源原来在此
作者: mingjwan    时间: 2005-09-12 18:18
标题: 关于ls命令
呵呵,版主果然厉害.
作者: HonestQiao    时间: 2005-09-12 18:32
标题: 关于ls命令
原帖由 "tonyfu" 发表:
就是输出一行啊,,如果想竖列输出就要用你的方法
ls >;aa
cat aa



直接 ls | cat
作者: dingyi129    时间: 2005-09-12 20:05
标题: 关于ls命令
[quote]原帖由 "sakulagi"]看了一下ls的源码,证实了我开始的想法。楼主看看这个代码,有没有发现啥?[/quote 发表:



厉害
作者: liugr3988    时间: 2005-09-13 11:11
标题: 关于ls命令
又学到一点
作者: xy-coordinate    时间: 2005-09-13 11:45
标题: 关于ls命令
源文件在哪儿?
作者: tonyfu    时间: 2005-09-13 11:45
标题: 关于ls命令
原帖由 "HonestQiao" 发表:



直接 ls | cat



不错,,这样写SHELL看着更清楚了,,
作者: mingjwan    时间: 2005-09-13 12:28
标题: 关于ls命令
呵呵,直接
ls -1(是一,不是L)就可以了.
作者: tonyfu    时间: 2005-09-13 13:11
标题: 关于ls命令
-1     list one file per line

原来man里边都有写,,以前没注意过
作者: freet15    时间: 2005-09-15 09:33
标题: 关于ls命令
呵呵,多看源码


原来有人解释了,




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2