当前位置:  技术问答>linux和unix

问一些基本的shell命令

    来源: 互联网  发布时间:2016-12-10

    本文导语:  filter file2 | cat file1 - file3 | lpr filter file2 | cat file1 /dev/fd/0 file3 | lpr 首先查了下 |  管道符号  命令1 | 命令2  机制:上一个的命令输出作为下一个命令的输入 想问下那个事上一个命令呢? 按照我的执行...

filter file2 | cat file1 - file3 | lpr
filter file2 | cat file1 /dev/fd/0 file3 | lpr
首先查了下 |  管道符号 
命令1 | 命令2 
机制:上一个的命令输出作为下一个命令的输入
想问下那个事上一个命令呢?
按照我的执行来看命令2好像是先执行的,命令2就是上一个命令?

lpr命令这样使用不对吗,执行的结果提示没有目标(no default destination available),man lpr看确实需要有个参数。
但这条命令我是从UNIX环境高级编程中看来的

-符号是啥意思呢?

我建立上个文件file1,file2和file3,文件的内容分别是file1,file2和file3(也就是文件名)
我执行filter file2 | cat file1 - file3 或者filter file2 | cat file1 /dev/fd/0 file3 
都如下输出
#filter file2 | cat file1 - file3 
file1
command not found
file3
这怎么解释呢?

|
filter file2 | cat file1 - file3 

这儿的-表示标准输入
现在管道机制的作用把filter file2的输出作为cat的标准输入了

|
楼主可以将其简化为“cat -”是什么。
cat a.txt是输出a.txt的内容,那么cat -就是输出标准输入的内容。
Ctrl + D发送EOF或者敲回车看效果。
lpr的命令没用过,不过可以试试xargs:
filter file2 | cat file1 /dev/fd/0 file3 | xargs lpr
xargs简单的说就是这样:
ls a.txt | xargs file等效于file a.txt。即把标准输入的内容作为参数。

|
命令1 | 命令2 
--------------
管道,这里表示命令1的结果作为命令2 的输入

|
程序执行都是从左至右的,左边的是第一个,右边的其次,依次下去。
“怎么第一个命令没有输出?”因为第一个命令输出的结果,直接传给管道右边的第二个命令去了。并做为了第二个命令所需要的输入。
用比较常用的两个命令来示范一下,这样你会比较容易理解吧:
echo abcdefg | less

试一下你就知道了

|
了解一下popen函数或者了解一下父子进程管道通信,你会有所觉悟.

    
 
 

您可能感兴趣的文章:

  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 不同类型的shell*(K SHELL , C SHELL) 用命令怎么切换?
  • linux bash shell命令:grep文本搜索工具简介
  • 菜鸟问问题:shell是什么呢?普通的ls、cp、pwd这些命令算不算shell呢?如何把自己写的文件变成shell呢?
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • 小弟没写过shell,求解 linux shell 命令
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • 如何编写Shell,当SQL执行完毕后,继续调用Shell命令。
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)
  • Linux 下的cd命令为什么要实现成shell的内建命令
  • shell 命令有as命令吗
  • Linux命令、编辑器与Shell编程 和 UNIX SHELL范例精解(第4版) 区别大么?
  • cd、zip等命令在shell提示符下能执行,在shell脚本中为什么不能执行呢?
  • IT科技资讯 iis7站长之家
  • redhat linux7.2/7.3,SHELL下,reboot是重启,那么要在SHELL下关机是什么命令???
  • 内核执行shell命令问题
  • 最近学shell命令,但它大量的命令选项特别让人郁闷,不知道有什么方法可以记住这些选项?
  • Linux程序中运行shell命令
  • unix shell如何在不把命令结果打出来的情况下判断命令是否可以执行呢?
  • 在shell命令行中敲一个可执行文件,起一个进程pc,这个进程属于shell进程
  • 求教高手,关于shell命令
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 我在执行shell时,想在shell里直接向mysql数据库插入数据,我该如何写shell。
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • shell变量和子shell的问题请教
  • 请问“当前shell”和“子shell”的区别?
  • 怎么知道当前是B_SHELL 还是C_SHELL
  • 用户登陆后运行某SHELL退出SHELL就回到LOGIN是怎么作到的?
  • 怎么写shell代码 写好shell怎么运行?
  • 请问一个shell中如何获取这个shell自身抛出的错误?
  • 非登录shell是什么 意思,和登录shell有什么区别啊
  • Solaris 8中修改root的shell为一个非法的Shell后怎么办?
  • 各位Shell高人,如何取得Shell的第10个入口参数?$10不行啊,急!
  • shell 编程 执行shell新建多个终端 并执行程序
  • 如何在一台机器上的shell中执行另外一台机器上的shell
  • 在shell中的交互问题,现在需要在shell结束时按某键或任意键
  • 请问什么是shell编程?一般都用shell编程实现什么?
  • 请教 一个shell问题 如何通过shell获得一个日志文件中的增量部分
  • 子shell改变父shell定义变量的值
  • shell脚本如何调用另外一个shell脚本的函数?
  • 如何进入纯shell环境?在shell下如何进入X Windows?
  • 请问,Shell中如何执行另外一个Shell脚本?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3