❶ linux中怎么实现重定向2
在您实现输出的那行命令后面加上>、>>、<、<<、2>、2>>来实现重定向。
>是每一次重定向时将原先的内容先删除然后写入新的数据。
>>是每一次重定向时将新的内容加入到就内容的后面。
<是将指定文件内容重定向到相关命令或者文件中,同时每次执行时先删除旧的再加入新的。
<<作用同上,只是将新的信息加到旧的信息后面。
2>是将命令执行报错时,将错误信息重定向至指定文件,并且每次执行都会先删除旧的再加入新的。
2>>和上面一条命里作用一样,只是将新的错误信息加到原来信息的后面
举例:
1.ls /etc/passwd > user
2.ls /etc/passwd >> user
3.ls idjsoigjs > test
4.ls idjsoigjs >> test
5. mail 用户名 -s "邮件题目" < file (file是你建的一个文件,里面内容随意自己定)
然后输入 mail 可以看到自己有封邮件题目为(您自定义的名字),输入相应的数字,您可以按到信件内容为file内容,这就是利用重定向直接将已写好的信件内容发送出去。
至于1-4的结果,楼主可在输入完后自行查看user和test的变化来进行对比。
对照刘遄老师的《Linux就该这么学》
❷ 简述linux系统中有哪些重定向的方式
重定向能够实现Linux命令的输入输出与文件之间重定向,以及实现将多个命令组合起来实现更加强大的命令。这部分涉及到的比较多的命令主要有:
cat:连接文件 sort:排序文本行 uniq:忽略或者报告重复行
wc:统计文件的行数、词数、字节数
grep:打印匹配制定模式的行
head:输出文件的头部 tail:输出文件的尾部
tee:从标准输入读,并往标准输出或者文件写
重定向标准输出
使用>可以将本来出现在屏幕的标准输出信息重定向到一个文件中。
使用>>可以在实现重定向时不覆盖原有内容,而是在文件末尾追加内容。
重定向标准错误信息到文件
使用文件描述符,在shell中,默认用数字0,1,2分别代表标准输入、标准输出、标准错误。
屏蔽不想看到的信息
Linux中有一个特殊的文件/dev/null,这个文件叫做bit bucket,可以接受输入信息但是什么都不做。例如:ls/usr/> /dev/null
重定向标准输入
cat命令可以接受一组文件为参数,将这些文件复制到标准输出。我们前面的例子中已经多次使用到cat命令来将文本文件的内容读取到屏幕上。cat还有一个很重要的功能:接受一组文件,然后通过重定向将他们重新组合到一个文件中。
cat ls1 ls2 > ls这个命令将ls1和ls2文件中的内容合并到ls文件中了。cat命令的这种功能不仅仅适用于文本文件,同样对二进制文件有效。这个场景主要在将多个压缩包文件合并到一个压缩包中用到。
cat也可以不传递参数,这种情况下,cat会重定向标准输入到标准输出。
管道
Linux提供|操作符,该操作符可以将一个命令的输出作为另一个命令的输入,这样通过多个命令的协作来完成一些比较复杂的内容。比如,我们可以通过uniq命令来排除重复的行。但是uniq命令往往需要和sort命令配合使用。因为uniq接收一组排好序的文本,而刚好sort可以将文本行排序。
❸ 请解释linux中的“重定向”的概念,由浅入深!
重定向是个操作系统的概念
它的主要含义是将原本从一个输入输出设备的输入输出操作,转向到从另外一个输入输出设备进行。
例如:linux系统中sh启动进程时会默认打开三个输入输出文件:标准输入文件、标准输出文件和标准错误文件(一般情况下是控制台),他们的文件句柄分别是0,1,2,
有时候你需要将进程的输出输出到一个文件的时候,你会这样处理:a>file.txt(假定a是程序名称)
那么sh就会将默认的两个输出文件1和2改为:file.txt
这就叫重定向。
例如下面的sh命令:a
<fa.txt
1>fo.txt
2>fe.txt
sh就将0的输入文件该向为:fa.txt,也就是将输入改为从文件fa.txt
将1输出文件重定向为:fo.txt
将2输出文件重定向为:fe.txt
一般这些都是操作系统记得内容,基本上与开发没有关系,你说gfortran要用重定向,我不太明白。