精华内容
下载资源
问答
  • 利用管道实现ls -l| wc -l 命令

    千次阅读 2018-08-08 19:39:53
    思路:子进程实现ls -l命令将结果返回给父进程,父进程再实现wc -l命令 在具体实现之前需要弄清一个dup函数: int dup(int oldfd) 作用:文件描述符的复制,可以实现文件共享 实现:从小到大找第一个未使用的...

    思路:子进程实现ls -l命令将结果返回给父进程,父进程再实现wc -l命令

    在具体实现之前需要弄清一个dup函数:

    int dup(int oldfd)

    作用:文件描述符的复制,可以实现文件共享

    实现:从小到大找第一个未使用的文件描述符, 让他和oldfd指向同一个文件表,操作任何一个都是访问同一个文件

    返回值:调用成功返回新的文件描述符,失败返回-1

    具体使用代码:

      1 #include<stdio.h>
      2 #include<fcntl.h>
      3 #include<unistd.h>
      4 int main()
      5 {
      6     int fd=open("abc.txt",O_WRONLY);
      7     printf("fd=%d\n",fd);                                                                                                                                
      8     close(1);
      9     dup(fd);
     10     write(1,"hehe",4);
     11 
     12 }
    

    这里我们用close(1)关闭了文件描述符,当调用dup时,它会找第一个未使用的文件描述符也就是我们刚关闭的标准输出,这时文件描述符fd与标准输出文件描述符指向同一个文件表,我们调用write往标准输出里写的时候,也就时写到了文件abc.txt里。为了验证,我们cat以下abc.txt。

    ok,理解了这个之后我们返回看ls -l|wc -l命令的实现,我们只需要调用dup将子进程的输出与父进程的输入指向同一个文件描述符即可,这就起到了类似于管道的作用。对于命令的执行,我们需要调用execlp函数,它会从PATH环境变量所指的目录中查找符合参数“ls” 以及“wc”的文件名,找到后变执行该文件。

    具体实现代码:

    1 //子进程执行ls -l 父进程执行 wc- l
      2 #include<stdio.h>
      3 #include<stdlib.h>
      4 #include<fcntl.h>                                                                                                                                        
      5 #include<unistd.h>
      6 
      7 int main()
      8 {
      9     int fds[2];
     10     pipe(fds);
     11     pid_t pid=fork();
     12     if(pid==0)
     13     {
     14         close(1);
     15         dup(fds[1]);
     16         close(fds[1]);
     17         close(fds[0]);
     18         execlp("ls","ls","-l",NULL);
     19         exit(1);
     20     }
     21     else
     22     {
     23         close(0);
     24         dup(fds[0]);
     25         close(fds[0]);
     26         close(fds[1]);
     27         execlp("wc","wc","-l",NULL);
     28         exit(1);
     29     }
     30 }
    

    实现结果:

    展开全文
  • ls -l|grep ^-| wc -l在Linux中的作用是查看当前目录内的文件数量(不包含子目录中的文件),其中用管道|分为了三段,下面来解释下每一段的含义: ls -l:列出当前目录下所有文件 grep ^-:grep用于筛选前面管道传来...

    一、命令解释

    1.1 含义

    ls -l|grep ^-| wc -l在Linux中的作用是查看当前目录内的文件数量(不包含子目录中的文件),其中用管道|分为了三段,下面来解释下每一段的含义:

            ls -l:列出当前目录下所有文件

            grep ^-:grep用于筛选前面管道传来的信息,筛选标准是“行首后紧跟着一个-符号”(^代表行首,)

            wc -l:统计文件的行数

    1.2 实例

            例如,当前目录下有两个文件,分别叫a和b:

    $ ls -l
    总用量 0
    -rw-rw-r-- 1 honeyding honeyding 0 3月   6 17:22 a
    -rw-rw-r-- 1 honeyding honeyding 0 3月   6 17:22 b
    
    $ ls -l|grep ^-
    -rw-rw-r-- 1 honeyding honeyding 0 3月   6 17:22 a
    -rw-rw-r-- 1 honeyding honeyding 0 3月   6 17:22 b
    
    $ ls -l|grep ^-| wc -l
    2
    
    $ ls -l| wc -l
    3
    

            ls -l| wc -l会输出3是因为还统计了“总用量 0”这一行 

    二、其他相关命令

    1. 查看某文件夹下文件的个数

            ls -l |grep "^-"|wc -l

            或

            find ./company -type f | wc -l

    2. 查看某文件夹下文件的个数,包括子文件夹里的。

            ls -lR|grep "^-"|wc -l

    3. 查看某文件夹下文件夹的个数,包括子文件夹里的。

            ls -lR|grep "^d"|wc -l

            说明:ls -l表示长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)

            grep "^-"表示将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d

            wc -l用于统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于

    一行信息对应一个文件,所以也就是文件的个数。

     

     

    展开全文
  • linux wc -l命令

    千次阅读 2019-09-03 19:43:13
    [root@localhost shell]# wc --help 用法:wc [选项]... [文件]...  或:wc [选项]... --files0-from=F 输出每个指定文件的行数、单词计数和字节数,如果指定了 多于一个文件,继续给出所有相关数据的总计。如果...
    语法
    [root@localhost shell]# wc --help
    用法:wc [选项]... [文件]...
     或:wc [选项]... --files0-from=F
    输出每个指定文件的行数、单词计数和字节数,如果指定了
    多于一个文件,继续给出所有相关数据的总计。如果没有指定
    文件,或者文件为"-",则从标准输入读取数据。
      -c, --bytes		输出字节数统计
      -m, --chars		输出字符数统计
      -l, --lines		输出行数统计
          --files0-from=文件	从指定文件读取以NUL 终止的名称,如果该文件被
    					指定为"-"则从标准输入读文件名
      -L, --max-line-length	显示最长行的长度
      -w, --words			显示单词计数
          --help		显示此帮助信息并退出
          --version		显示版本信息并退出
    
    实例
    [root@localhost shell]# cat stu.txt 
    100:zhangsan:nan:jisuanji
    101:zhanghong:nv:wenmi
    [root@localhost shell]# cat stu.txt | wc -l       //文件行数
    2
    [root@localhost shell]# cat stu.txt | sed -n '1p'   //sed输出第1行
    100:zhangsan:nan:jisuanji
    [root@localhost shell]# cat stu.txt | sed -n '1p'| wc -L  //第一行的长度,:也算
    25
    [root@localhost shell]# cat stu.txt | sed  -n '1p'| sed 's/[^0-9]//g'  //只保留数字
    100
    [root@localhost shell]# cat stu.txt | sed  -n '1p'| sed 's/[^0-9]//g'| wc -L   //数字的长度
    3
    
    展开全文
  • linux之ls -l|grep "^-"|wc -l命令

    千次阅读 2019-05-12 13:45:19
    linux之ls -l|grep "^-"|wc -l命令 查看某文件夹下文件的个数 ls -l |grep "^-"|wc -l 或 find ./company -type f | wc -l 查看某文件夹下文件的个数,包括子文件夹里的。 ls -lR|grep "^-"|wc -l 查看某文件夹...

    linux之ls -l|grep "^-"|wc -l命令

    查看某文件夹下文件的个数
    ls -l |grep "^-"|wc -l

    find ./company -type f | wc -l

    查看某文件夹下文件的个数,包括子文件夹里的。
    ls -lR|grep "^-"|wc -l

    查看某文件夹下文件夹的个数,包括子文件夹里的。
    ls -lR|grep "^d"|wc -l

    说明:
    ls -l
    长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)

    grep "^-"
    这里将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d

    wc -l
    统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于
    一行信息对应一个文件,所以也就是文件的个数。

    展开全文
  • 主要介绍了一天一个shell命令 linux文本操作系列-wc命令详解,需要的朋友可以参考下
  • 使用管道实现:ls -l | wc -w命令

    千次阅读 2018-06-04 19:10:39
    * 功能:使用管道实现ls -l | wc -w,显示单词数量 * @author AWEEN * @create on 2018-06-03 */ int main( void ){ int fd[ 2 ]; //新建无名管道 int ret = pipe(fd); if (ret 0 ){ perror( ...
  • 管道 |wc -l (wc也是一个命令)

    万次阅读 2014-08-08 16:23:17
    cat是打开一个文本文件的命令,|是管道,就是将cat命令的结果传给下一个命令,这里是grep grep是搜索命令,这里所有匹配“>” ,并将结果传给wc命令 wc命令是统计命令,如文件的字符数等,wc -l是统计行数
  • linux之 grep "xxx" * | wc -l 命令

    万次阅读 2018-12-01 06:44:54
    grep 'xxx' * | wc -l 查看某文件夹下文件的个数 ls -l |grep &amp;amp;quot;^-&amp;amp;quot;|wc -l 或 find ./company -type f | wc -l 查看某文件夹下文件的个数,包括子文件夹里的。 ls -lR|grep ...
  • Linux命令基础29-wc命令

    2019-05-09 14:34:27
    本文介绍一个有关统计的命令wc,wc是英文单词word count的缩写,中文就是单词统计的意思。下面来看看wc的基本用法和带参数用法。 1.whatis wc 2.桌面创建一个file.txt文件 3.wc file,txt 4.wc带参数用法 ...
  • #!/bin/sh #对变量赋值 a=helloworld #打印变量a的内容 echo a的内容是:$a #有时候变量名很容易与其他...#文件行数,从0开始计数:wc -l filename wc -l a.txt #文件单词数:wc -w filename wc -w a.txt
  • 【Linux】ls -l|grep "^-"| wc -l解释

    千次阅读 2020-03-06 17:43:26
    ls -l|grep ^-| wc -l在Linux中的作用是查看当前目录内的文件数量(不包含子目录中的文件),其中用管道|分为了三段,下面来解释下每一段的含义 ls -l:列出当前目录下所有文件 grep ^-:grep用于筛选前面管道传来的...
  • 图解Linux命令之--wc命令

    千次阅读 2016-08-03 21:53:56
    wc命令-->用来统计指定文件中的行数,单词数,字符数
  • ls -l |wc -l命令多统计一行

    千次阅读 2012-05-15 12:10:33
    #ls -l |wc -l注意:总用量也占用1行,所以统计出来的是14而不是13其他网友提醒#ls -l |wc -l就统计实际的行,放大就看出效果1和l不同
  • linux之ls -l|grep ^-|wc -l命令查看某文件夹下文件的个数查看某文件夹下文件的个数,包括子文件夹里的查看某文件夹下文件夹的个数,包括子文件夹里的说明 查看某文件夹下文件的个数 ls -l |grep ^-|wc -l 或 find ....
  •  Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。 -c 统计字节数。 -l 统计行数。 -m 统计字符数。这个标志不能与 -c 标志一起使用。 -w 统计字数。一个字...
  • ps -C nginx --no-header |wc -l

    千次阅读 2016-10-27 21:13:00
    [root@ok ok]# ps --help|grep C -A all processes -C by command name -V,V show version L list format codes f ASCII art forest -w,w wide output n numeric WCHAN,UI...
  • wc 统计文件里面有多少单词,多少行,多少字符。 wc语法 [root@www ~]# wc [-lwm] ...wc命令比较简单使用,每个参数使用如下: #wc -l /etc/passwd #统计行数,在对记录数时,很常用 40 /etc/pas
  • linux wc -l统计行数

    千次阅读 2018-07-25 00:19:57
    统计php-fpm进程行数 ps -ef|grep php-fpm |wc -l
  • 转:http://www.cnblogs.com/senior-engineer/p/6203268.html Shell 中常见的日志统计方法 ... 查看某文件夹下文件的个数   ls -l |grep "^-"|wc -l 或 find ./company -typ
  • ps -C java --no-heading| wc -l ps -C java --no-heading| wc -l 转载于:https://www.cnblogs.com/lqCnblog/p/6868786.html
  • ls -l命令详解(转)

    万次阅读 2017-06-20 11:01:59
     ls -l 列表信息详解 我们平时用ls -l 命令查看一个目录下的文件和子目录...有很多初学者对这些不太了解,因此想详悉讲解一下用ls -l命令得到的文件列表每一个字段的意思 [root@kevin root]# ll 总用量 1
  • ll |wc -l 比ls |wc -l 多出来一行的原因

    千次阅读 2018-12-17 11:49:17
    Linux中ll命令等价于 ls -l ,ll 出的结果为 其实就是多了一条总用量,这个占一行,所以ll出来的才比ls多出一行
  • shell wc -l

    千次阅读 2019-03-14 21:31:00
    shell 命令wc -l 给出一个比较常用的命令: cat * | wc -l 查询当前文件夹下的文件的总行数。 原理就是统计了文件中换行符的数量。 转载于:https://www.cnblogs.com/drjava/p/10533649.html...
  • Linux 系统中 wc(Word Count)命令的功能为统计指定文件中的行数、字数、字节数,并将统计结果显示输出。 1、命令格式 wc [options] 文件... 2、命令功能 统计指定文件中的字节数、字数、行数,并将统计结果显示...
  • |wc -l 或 find ./company -type f | wc -l   查看某文件夹下文件的个数,包括子文件夹里的:ls -lR|grep "^-"|wc -l   查看某文件夹下文件夹的个数,包括子文件夹里的:ls -lR|grep "^d"...
  • linux中 ls |wc -l

    2018-10-16 08:57:00
    linux中 ls |wc -l_百度知道 答 205行,205个字,1920个字节,wc-l只输出文件行数 转载于:https://www.cnblogs.com/lvdongjie/p/9795965.html
  • linux命令学习(2)—— wc -l 统计文件的行数参考网址:https://blog.csdn.net/a19881029/article/details/8644985[123@123 123]$ wc --help 用法:wc [选项]... [文件]... -c 统计字节数。-l 统计行数。-m ...
  • 例1. 查看Oracle数据库活动... ps -ef|grep LOCAL=NO|wc -l 15 解释:ps -ef是查看所有的进程的 然后用grep筛选出LOCAL=NO,然后使用wc -l输出行数 转载于:https://www.cnblogs.com/recognition/p/5356212.html...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 80,488
精华内容 32,195
关键字:

-l命令wc