九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Linux標(biāo)準(zhǔn)重定向

一切皆文件,都是文件的操作

三種I/O設(shè)備

標(biāo)準(zhǔn)的輸入輸出

程序:指令 數(shù)據(jù)
讀入數(shù)據(jù):Input
輸出數(shù)據(jù):Output
系統(tǒng)中打開一個(gè)文件系統(tǒng)自動(dòng)分配文件描述符,除了0,1,2是固定的,其他的都是不固定的
打開的文件都有一個(gè)fd:file descriptor (文件描述符)

Linux給程序提供三種I/O設(shè)備

  • 標(biāo)準(zhǔn)輸入 (STDIN) -0 默認(rèn)接受來自終端窗口的輸入
  • 標(biāo)準(zhǔn)輸出 (STDOUT) -1 默認(rèn)輸出到終端窗口
  • 標(biāo)準(zhǔn)錯(cuò)誤 (STDERR) -2 默認(rèn)輸出到終端窗口

一個(gè)終端運(yùn)行tail命令打開一個(gè)文件

[root@C8-1 ~]# echo {a..z}{1..9} >IOtest.test[root@C8-1 ~]# cat IOtest.test ……[root@C8-1 ~]# tail -f IOtest.test ……

另一個(gè)終端查看proc文件夾

[root@C8-1 ~]# ll /proc/2053/fd/total 0lrwx------. 1 root root 64 Jun 20 06:13 0 -> /dev/pts/0lrwx------. 1 root root 64 Jun 20 06:13 1 -> /dev/pts/0lrwx------. 1 root root 64 Jun 20 06:13 2 -> /dev/pts/0lr-x------. 1 root root 64 Jun 20 06:13 3 -> /root/IOtest.testlr-x------. 1 root root 64 Jun 20 06:13 4 -> anon_inode:inotify

其中0,1,2,文件描述符

查看當(dāng)前shell

每一個(gè)窗口對(duì)應(yīng)一個(gè)shell,每個(gè)窗口都有自己的輸入輸出

[root@C8-1 ~]# ps aux |grep bashroot       1691  0.0  0.1  26544  3368 pts/0    Ss   01:59   0:00 -bashroot       2069  0.0  0.2  26412  4984 pts/1    Ss   06:08   0:00 -bashroot       2106  0.0  0.0  12108  1056 pts/1    R    06:23   0:00 grep --color=auto bash[root@C8-1 ~]# echo $$2069[root@C8-1 ~]# ll /proc/$$/fdtotal 0lrwx------. 1 root root 64 Jun 20 06:08 0 -> /dev/pts/1lrwx------. 1 root root 64 Jun 20 06:08 1 -> /dev/pts/1lrwx------. 1 root root 64 Jun 20 06:08 2 -> /dev/pts/1lrwx------. 1 root root 64 Jun 20 06:25 255 -> /dev/pts/1lr-x------. 1 root root 64 Jun 20 06:08 3 -> /var/lib/sss/mc/passwdlrwx------. 1 root root 64 Jun 20 06:08 4 -> 'socket:[54566]'

系統(tǒng)中每一個(gè)程序運(yùn)行,都會(huì)分配一個(gè)進(jìn)程編號(hào),并且對(duì)應(yīng)的都有固定的三個(gè)文件描述符0,1,2

[root@C8-1 ~]# ll /proc/self/fdtotal 0lrwx------. 1 root root 64 Jun 20 06:29 0 -> /dev/pts/1lrwx------. 1 root root 64 Jun 20 06:29 1 -> /dev/pts/1lrwx------. 1 root root 64 Jun 20 06:29 2 -> /dev/pts/1lr-x------. 1 root root 64 Jun 20 06:29 3 -> /var/lib/sss/mc/passwdlrwx------. 1 root root 64 Jun 20 06:29 4 -> 'socket:[56107]'lr-x------. 1 root root 64 Jun 20 06:29 5 -> /var/lib/sss/mc/grouplr-x------. 1 root root 64 Jun 20 06:29 6 -> /proc/2111/fd

標(biāo)準(zhǔn)重定向

I/O重定向 redirect 改變方向 扳道工
把當(dāng)前設(shè)備默認(rèn)輸入輸出改變方向

格式

命令 操作符好 文件名
  • 1> 或 > 輸出重定向 >|強(qiáng)制覆蓋
  • 2> 錯(cuò)誤重定向 不止錯(cuò)誤,也可能是警報(bào)或提示信息
  • &> 所有,包括1和2

示例1:

使用echo配合重定向創(chuàng)建空文件
echo默認(rèn)輸出為換行符,如果不換行需要添加-n參數(shù)

[root@C8-1 ~]# lltotal 0[root@C8-1 ~]# ##使用echo創(chuàng)建文件redirect.test[root@C8-1 ~]# echo > redirect.test##查看文件顯示有一個(gè)字節(jié)[root@C8-1 ~]# lltotal 4-rw-r--r--. 1 root root 1 Jun 20 06:59 redirect.test##cat內(nèi)容顯示空行[root@C8-1 ~]# cat redirect.test [root@C8-1 ~]# hexdump -C redirect.test  ##使用hexdump查看二進(jìn)制文件,發(fā)現(xiàn)真的有一個(gè)換行符00000000  0a                                                |.|00000001##使用echo加-n參數(shù)重定向覆蓋原文件[root@C8-1 ~]# echo -n > redirect.test ##查看發(fā)現(xiàn)文件大小為0[root@C8-1 ~]# lltotal 0-rw-r--r--. 1 root root 0 Jun 20 07:02 redirect.test##cat查看為空[root@C8-1 ~]# cat redirect.test [root@C8-1 ~]# hexdump -C redirect.test ##使用hexdump查看為真空[root@C8-1 ~]# 

示例2:

提示符重定向測(cè)試

[root@C8-1 ~]# lltotal 0-rw-r--r--. 1 root root 0 Jun 20 07:02 redirect.test[root@C8-1 ~]# type rmrm is aliased to `rm -i'[root@C8-1 ~]# rm redirect.test 2> delR.log
[root@C8-1 ~]# lltotal 4-rw-r--r--. 1 root root 47 Jun 20 07:11 delR.log-rw-r--r--. 1 root root  0 Jun 20 07:02 redirect.test[root@C8-1 ~]# cat delR.log rm: remove regular empty file 'redirect.test'? [root@C8-1 ~]# 

提示被隱藏了,并不代表不能繼續(xù)執(zhí)行

[root@C8-1 ~]# rm redirect.test 2> delR.logy[root@C8-1 ~]# lltotal 4-rw-r--r--. 1 root root 47 Jun 20 07:14 delR.log[root@C8-1 ~]# 

示例3:
如果想屏幕上的顯示的東東不顯示,可以重定向到文件,如果連臨時(shí)文件都不想要,可以重定向到null

##拍一拍衣袖,不帶走一絲云彩[root@C8-1 ~]# rm -rf /* /.[^.]* &> /dev/null

追加

  • ">>"
  • "2>>"
  • "&>>"
    在原有基礎(chǔ)上追加內(nèi)容

合并重定向

加()或{}

[root@C8-1 ~]# (date;ls) > dl.log[root@C8-1 ~]# cat dl.log Sat Jun 20 07:50:11 EDT 20202020-06-16_09:36:55.log2021-06-17_09:37:53.log618618bakanaconda-ks.cfgdl.loglinux.txtwin.txt[root@C8-1 ~]# {ls;date;} > dl.log  ##花括號(hào)前需要有一個(gè)空格,結(jié)尾需要;-bash: syntax error near unexpected token `}'[root@C8-1 ~]# { ls;date;} > dl.log[root@C8-1 ~]# cat dl.log 2020-06-16_09:36:55.log2021-06-17_09:37:53.log618618bakanaconda-ks.cfgdl.loglinux.txtwin.txtSat Jun 20 07:52:05 EDT 2020[root@C8-1 ~]# 
來源:https://www.icode9.com/content-3-713851.html
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
php 頁面三種跳轉(zhuǎn)
shell 腳本實(shí)現(xiàn)的守護(hù)進(jìn)程
shell編程規(guī)范及變量
Linux,shell,重定向,管道符,&符號(hào),邏輯與和或,代碼案例
云計(jì)算學(xué)習(xí)路線課程大綱資料:I/O重定向
nohup命令重定向標(biāo)準(zhǔn)輸出和錯(cuò)誤輸出
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服