首页 > 编程学习 > Jeston nano使用问题记录

Jeston nano使用问题记录

发布时间:2022/5/14 15:36:46

文章目录

  • 学习记录
    • pip的使用
    • 终端隐藏输出
    • \>/dev/null 2>&1 VS >/dev/null 2>/dev/null
    • nohup
    • 文件描述符
    • 输出重定向
    • 输入重定向
    • cat结合重定向
    • ls可以连续使用
    • 参考

学习记录

pip的使用

python -m pip install XXX

终端隐藏输出

> /dev/null
表示把标准输出重定向到/dev/null,也就是不在屏幕上输出标准输出
>& /dev/null
表示把标准输出和错误输出重定向到/dev/null,程序不在屏幕上输出
2>/dev/nul
2表示标准错误,将标准错误重定向到空设备里,即不输出错误信息
>/dev/null 2>&1
默认情况是1,也就是等同于1>/dev/null 2>&1。意思就是把标准输出重定向到“黑洞”,还把错误输出2重定向到标准输出1,也就是标准输出和错误输出都进了“黑洞”
2>&1 >/dev/null
意思就是把错误输出2重定向到标准出书1,也就是屏幕,标准输出进了“黑洞”,也就是标准输出进了黑洞,错误输出打印到屏幕
cat /dev/null > /home/omc/h.txt
清空文件/home/omc/h.txt
/dev/zero
当使用或者读取的时候,提供无限连续不断的空的数据流

  1. 覆盖其他的文件信息
  2. 产生指定大小的空文件,如交换文件,模拟虚拟文件系统

>/dev/null 2>&1 VS >/dev/null 2>/dev/null

不用>/dev/null 2>/dev/null重复,用重定向绑定原因,
将标准输出和错误输出都定向到out文件中
在这里插入图片描述

出现了乱码。这是因为采用这种写法,标准输出和错误输出会抢占往out文件的管道,所以可能会导致输出内容的时候出现缺失、覆盖等情况。有时候不出现乱码,可能出现只有error信息或者只有正常信息的情况。最后的情况是无法预估的。
而且,由于out文件被打开了两次,两个文件描述符会抢占性的往文件中输出内容,所以整体IO效率不如>/dev/null 2>&1来得高。

nohup

使用nohup command &命令形式来启动一些后台程序,比如一些java服务:
在这里插入图片描述
为了不让一些执行信息输出到前台(控制台),加上刚才提到的>/dev/null 2>&1命令来丢弃所有的输出:
在这里插入图片描述

文件描述符

类型文件描述符默认情况对应文件句柄位置
标准输入(standard input)0从键盘获得输入/proc/slef/fd/0
标准输出(standard output)1输出到屏幕(即控制台)/proc/slef/fd/1
错误输出(error output)2输出到屏幕(即控制台)/proc/slef/fd/2

输出重定向

命令介绍
command >filename把标准输出重定向到新文件中
command 1>filename同上
command >>filename把标准输出追加到文件中
command 1>>filename同上
command 2>filename把标准错误重定向到新文件中
command 2>>filename把标准错误追加到新文件中

输入重定向

命令介绍
command <filename以filename文件作为标准输入
command 0<filename同上
command <<delimiter从标准输入中读入,直到遇到delimiter分隔符

cat结合重定向

如果cat后面没有跟文件名的话,那它的作用就是将标准输入(比如键盘)回显到标准输出(比如屏幕)上
在这里插入图片描述

可以将利用输入重定向,将我们在键盘上敲入的字符写入到文件中。使用ctrl+c来结束输入
在这里插入图片描述
让cat读取一个文件
在这里插入图片描述
使用分隔符,输入完cat >out <<end,然后敲下回车之后,命令并没有结束,此时cat命令像一开始一样,等待输入数据。然后当我们敲入end之后,cat命令就结束了。end之前输入的字符都已经被写入到了out文件中。这就是输入分割符的作用。
在这里插入图片描述

ls可以连续使用

例如
ls dirname1 dirname2

参考

linux中>/dev/null 2>&1和2>&1 > /dev/null

Copyright © 2010-2022 ngui.cc 版权所有 |关于我们| 联系方式| 豫B2-20100000