按照惯例,UNIX系统shell使用文件描述符0与进程的标准输入(一般是键盘)相关联,文件描述符1与标准输出(一般是显示器)相关联,文件描述符2与标准出错输出(一般是显示器)相关联. 在依从POSIX的应用程序中,幻数0.1.2应当替换成符号常量STDIN_FILENO.STDOUT_FILENO和STDERR_FILENO.这些常量都定义在头文件<unistd.h>中. 一般在教材中不会明确区分,但是我们应注意到标准输入有两层含义:一是指STDIN_FILENO(惯例指定的标准输入设备描述符…
shell中可能经常能看到:1>/dev/null  2>&1  eg:sudo kill -9 `ps -elf |grep -v grep|grep $1|awk '{print $4}'` 1>/dev/null 2>/dev/null 命令的结果可以通过%>的形式来定义输出 /dev/null 代表空设备文件> 代表重定向到哪里,例如:echo "123" > /home/123.txt1 表示stdout标准输出,系统默认值是…
$# 是传给脚本的参数个数 $ 是脚本本身的名字 $ 是传递给该shell脚本的第一个参数 $ 是传递给该shell脚本的第二个参数 $@ 是传给脚本的所有参数的列表 $* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个 $$ 是脚本运行的当前进程ID号 $? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误 区别:@* 相同点:都是引用所有参数 不同点:只有在双引号中体现出来.假设在脚本运行时写了三个参数(分别存储在12 3)则"*" 等价于 “12…
From:http://dadekey.blog.51cto.com/107327/119938 我们先写一个简单的脚本,执行以后再解释各个变量的意义   # touch variable # vi variable   脚本内容如下: #!/bin/sh echo "number:$#" echo "scname:$0" echo "first :$1" echo "second:$2" echo "argume:…
原文网址:http://dadekey.blog.51cto.com/107327/119938 我们先写一个简单的脚本,执行以后再解释各个变量的意义   # touch variable # vi variable   脚本内容如下:   #!/bin/sh echo "number:$#"echo "scname:$0"echo "first :$1"echo "second:$2"echo "argume:$@…
Linux标准输入.输出和错误和文件重定向 专题 https://www.cnblogs.com/softidea/p/3965093.html 感觉自己对 这一块的理解一直不好 昨天同事给了一个 bat 文件也用到了标准输入 直接通过文件进行输入 脚本参数内容 比之前写脚本参数容易的多也规整的多 今天再看 linux的标准输入和标准输出 尤其是哪一句 >& 将错误输出 重定向到标准输出 自己竟然一直没有理解到 & 其实是地址符号的意思.. 这一块是在是太low了. 当我们在shel…
Shell中可能经常能看到:>/dev/null  2>&1 eg:sudo kill -9 `ps -elf |grep -v grep|grep $1|awk '{print $4}'` 1>/dev/null 2>/dev/null 命令的结果可以通过%>的形式来定义输出 /dev/null 代表空设备文件 > 代表重定向到哪里,例如:echo "123" > /home/123.txt    1 表示stdout标准输出,系统默…
===============1.有些人经常问我这个问题问题=========== 经常在脚本里面看到这个    2>&1     表示什么意思啊? ==============2.理论========================== 在linux中,每个进程都会有三个文件,并且这三个文件会进行重定向处理: /dev/stdin          ----->/proc/self/fd/0             //表示标准输入,即键盘输入 /dev/stdout       …
Linux中的输入文件.输出文件.错误输出 文件名称 文件描述符 标准输入 0 (默认是键盘) 标准输出 1 (默认是屏幕) 标准错误 2 (默认是屏幕) 输出重定向 Linux中&表示后台运行,>表示输出重定向 命令 描述 command > file 标准输出重定向到文件中,文件不存在时会自动创建再写入,文件存在时会先删除文件中的内容再写入 command >> file 标准输出重定向到文件中,文件不存在时会自动创建再写入命令产生的标准输出,文件存在时不改变原文件内容…
标准输入转换为标准输出 代码(C) 本文地址:http://blog.csdn.net/caroline_wendy Linux能够使用getc()和putc(),读取和写入每个输入字符. 代码: /*By C.L.Wang * Eclipse CDT * Ubuntu 12.04 * 2014.10.5*/ #include "apue.h" #include "error.h" int main (void) { int c; while ((c = getc(…