莱芜关于网站建设的公司,怎么自己做APP网站,个人备案的网站可以做什么,公司网站需要备案最近在做项目的时候遇到的几个知识点#xff0c;我觉得非常有意思#xff0c;以前学Linux的时候也有接触到管道方面的#xff0c;但是在应用中却基本没有遇到过。还有Linux下的几个特殊的文件描述符#xff0c;用这几个文件描述符可以做很多事情#xff0c;能做什么事情决… 最近在做项目的时候遇到的几个知识点我觉得非常有意思以前学Linux的时候也有接触到管道方面的但是在应用中却基本没有遇到过。还有Linux下的几个特殊的文件描述符用这几个文件描述符可以做很多事情能做什么事情决定你自己的本事了。#Linux下的 0 1 2文件描述符1 是标准输出stdout2 是标准错误输出stderr0 是标准输入stdin第一个但是我们使用的时候我们会把这样使用 1 两个符号连着一起而且呢1和符号之间不能有空格有空格和没有空格就是两回事了。如下把标准输出结果重定向到 list.txt文件里面。linuxubuntu:~$ ls 1list.txt
linuxubuntu:~$ cat list.txt
Desktop
Documents
Downloads
examples.desktop
Music
Pictures
Public
Templates
Videos
linuxubuntu:~$第二个把标准错误输出重定向到list文件里面但是我们就简单执行ls所以没有错误当我们执行cat的时候自然就是没有任何输出了。linuxubuntu:~$ ls 2list.txt
Documents examples.desktop linux-device-driver Pictures Videos
Desktop Downloads Music Public Templates vmwaretools
linuxubuntu:~$ cat list.txt
linuxubuntu:~$第三个是不是很像取地址符号我们往标准输入 echo 一个字符串然后屏幕就打印了这个字符串出来。就是这么简单就是这么讲道理。linuxubuntu:~$ echo 1212 0
1212
linuxubuntu:~$
#简单的应用我们在Linux下经常用到find 这个指令如果find的时候如果find某些文件夹没有权限的话就会提示一些错误。让你看到输出很恶心。比如linuxubuntu:~$ find /etc -iname *.service
find: /etc/ssl/private: Permission denied
find: /etc/vmware-tools/GuestProxyData/trusted: Permission denied
/etc/systemd/system/multi-user.target.wants/rsyslog.service
find: /etc/cups/ssl: Permission denied
/etc/avahi/services/udisks.service
linuxubuntu:~$我们要是只想看到正确的输出把错误的输出都扔进垃圾桶应该怎么做呢linuxubuntu:~$ find /etc -iname *.service 2/dev/null
/etc/systemd/system/multi-user.target.wants/rsyslog.service
/etc/avahi/services/udisks.service
linuxubuntu:~$这样看起来是不是很舒服了免费再赠送一个例子我们在Android设备里面经常需要find一些东西。RK3399:/ # find / -iname *.rc
find: /proc/2/task/2/exe: No such file or directory
find: /proc/2/exe: No such file or directory
find: /proc/3/task/3/exe: No such file or directory
find: /proc/3/exe: No such file or directory
我们换个写法就会发现不一样的世界RK3399:/ # find / -iname *.rc 2 /dev/null
/init.recovery.mt8167.rc
/init.usb.rc
/init.environ.rc
/vendor/etc/init/muxreport.rc
/vendor/etc/init/android.hardware.audio4.0-service-mediatek.rc
这样的输出是不是让你觉得非常爽是的这样的输出让我也觉得非常爽。#/dev/null我们在上面已经用了 /dev/null 现在来剖析一下。这个东东有意思如果我们有一些输出不想看到就重定向到这里这个就好像一个能吸纳所有东西的无底洞一样。非常有意思。如果我们当前没有一个文件linuxubuntu:~$ ls 1212.txt
ls: cannot access 1212.txt: No such file or directory
linuxubuntu:~$
这时候就会提示没有这个文件如果我们不想看到这个恶心的输出可以这样做linuxubuntu:~$ ls 1212.txt 2/dev/null
linuxubuntu:~$
作用就是把 stderr 输出到 /dev/null 这个垃圾桶里面。#21对于21的理解2就是标准错误1是标准输出那么这条命令不就是相当于把标准错误重定向到标准输出么是的。为什么是1而不是1这里 符号是什么 符号可以理解为引用reference。1 就是对标准输出的引用。「我觉得可以理解为我们C语言里面的取地址符号拿到标准输出的地址往地址里面灌什么标准输出就会给你输出什么」#后台运行指令##nohupnohup 指的是把命令放后台运行并且不挂断的运行他会把输出默认定向到文件nohup.out中。##这个指令指的是在后台运行。## 实例我们两个指令一起使用试试weiqifabsp-ubuntu1804:~/sdk$ nohup make -j128
[1] 22928
weiqifabsp-ubuntu1804:~/sdk$ nohup: ignoring input and appending output to nohup.out
weiqifabsp-ubuntu1804:~/sdk$然后过了一下看看weiqifabsp-ubuntu1804:~/em_mt8167s-9.0-sdk$ cat nohup.out
wildcard(out/target/product/em_t6230_p4mme/*-verified.*) was changed, regenerating...
[1/953] including out/soong/Android-full_em_t6230_p4mme.mk ...
[2/953] including art/Android.mk ...
[3/953] including bionic/Android.mk ...
[4/953] including bootable/recovery/Android.mk ...
[5/953] including build/make/Android.mk ...
[6/953] including ccu_tool/Android.mk ...
[7/953] including cts/Android.mk ...
weiqifabsp-ubuntu1804:~/em_mt8167s-9.0-sdk$看看后台进程weiqifabsp-ubuntu1804:~/sdk$ ps -ef |grep make
weiqifa 22928 22616 0 04:50 pts/6 00:00:00 make -j128
weiqifa 22930 22928 0 04:50 pts/6 00:00:00 prebuilts/build-tools/linux-x86/bin/makeparallel --ninja build/soong/soong_ui.bash --make-mode
weiqifa 22931 22930 6 04:50 pts/6 00:00:05 /home/weiqifa/em_mt8167s-9.0-sdk/out/soong_ui -j128 --make-mode
weiqifa 29017 22616 0 04:52 pts/6 00:00:00 grep --colorauto make
weiqifabsp-ubuntu1804:~/sdk$
##tail -fweiqifabsp-ubuntu1804:~/em_mt8167s-9.0-sdk$ tail -f nohup.out
out/target/product/em_t6230_p4mme/obj/PACKAGING/systemimage_intermediates/system.img
[100% 39/39] Install system fs image: out/target/product/em_t6230_p4mme/system.img
^C
weiqifabsp-ubuntu1804:~/em_mt8167s-9.0-sdk$