Linux學習之九(I O重定向)

2021-07-31 20:08:20 字數 2240 閱讀 2467

一、管理及io重定向:

1、系統設定:

預設輸出裝置:標準輸出,stdout,1

預設輸入裝置:標準輸入,stdin,0

標準錯誤輸出:stderr,2

2、i/o重定向:

>:覆蓋輸出

>>:追加輸出

set:

set -c:禁止對已經存在的檔案使用覆蓋重定向;

強制覆蓋輸出,則使用 >|

set +c:關閉上述功能

2>:重定向錯誤輸出

2>>:追加方式錯誤輸出

&>:重定向標準輸出或錯誤輸出至同乙個檔案

<:輸入重定向

例:[root@ourlab ~]# tr 'a-z' 'a-z' < /etc/fstab

label=/                 /                       ext3    defaults        1 1

label=/home             /home                   ext3    defaults        1 2

label=/boot             /boot                   ext3    defaults        1 2

<<:在此處生成文件

例:[root@ourlab ~]# cat << end

> the first line.

> the second line.

> end

the first line.

the second line.

例:在指令碼中生成檔案:

[root@ourlab ~]# cat >> /tmp/myfile.txt << eof

> the first line.

> the second line.

> eof

[root@ourlab ~]# cat /tmp/myfile.txt

the first line.

the second line.

the first line.

the second line.

管道:"|"命令:前乙個命令的輸出作為後乙個命令輸入

命令1|命令2|命令3....    

例:[root@ourlab ~]# echo "hello,world." | tr 'a-z' 'a-z'

hello,world.

tee:從標準輸入讀取並寫入標準輸出和檔案

例:[root@ourlab ~]# echo "hello,world." | tee /tmp/hello.out

hello,world.

[root@ourlab ~]# cat /tmp/hello.out

hello,world.

二、課後練習:

1、統計/usr/bin目錄下的檔案個數;

[root@ourlab ~]# ls /usr/bin | wc -l

1747

2、取出當前系統上所有使用者的shell,要求每種shell只顯示一次,並且按順序進行顯示;

[root@ourlab ~]# cut -d: -f7 /etc/passwd | sort -u

/bin/bash

/bin/sync

/bin/tcsh

/sbin/halt

/sbin/nologin

/sbin/shutdown

3、如何顯示/var/log目錄下每個檔案的內容型別;

[root@ourlab ~]# file /var/log/*

4、取出/etc/inittab檔案的第6行;

[root@ourlab ~]# head -6 /etc/inittab | tail -1

5、取出/etc/passwd檔案中倒數第9個使用者的使用者名稱和shell,顯示到螢幕上並將其儲存至/tmp/users檔案中;

[root@ourlab ~]# tail -9 /etc/passwd | head -1 | cut -d: -f1,7 | tee /tmp/users

6、顯示/etc目錄下所有以pa開頭的檔案,並統計其個數;

[root@ourlab ~]# ls -d /etc/pa* | wc -l

67、不使用文字編輯器,將alias cls=clear 一行內容新增至當前使用者的.bashrc檔案中;

[root@ourlab ~]# echo "alias cls=clear" >> ~/.bashrc

linux入門之I O重定向

我們知道,執行乙個shell命令行時通常會執行乙個shell命令行時通常會自動開啟三個標準檔案,即標準輸入檔案 stdin 通常對應終端的鍵盤 標準輸出檔案 stdout 和標準錯誤輸出檔案 stderr 這兩個檔案都對應終端的螢幕。程序將從標準輸入檔案中得到輸入資料,將正常輸出資料輸出到標準輸出檔...

010 Linux之I O重定向

十年運維系列之基礎篇 linux 聯絡 1494445739 qq.com www.jplatformx.com 一 引言 這裡我們來討論linux中命令列乙個很酷的功能,那就是i o重定向。i o是輸入 輸出的縮寫。這個功能可以把命令列的輸入重定向為從檔案中獲取內容,也可以把命令列的輸出結果重定向...

Linux Shell之IO重定向

一 io裝置 io是指資料的 端與資料的目的端,分別稱為標準輸入 標準輸出 及標準錯誤輸出。程式不必關心裝置的問題,無論是檔案 終端 磁帶機等。在linux預設情況下,會讀取標準輸入 寫入標準輸出,並將錯誤傳遞到標準錯誤輸出。預設情況下標準輸入 輸出 錯誤都是終端。通過下面可知 cat input ...