shell 常用命令,重定向和檔案包含

2022-07-26 16:30:14 字數 3226 閱讀 3605

shell的知識點並不多,這裡簡單介紹一下常用的一些東西

echo

echo

"test"

echo

"\"test\""

echo

"$key"

echo -e "ok! \n"

# -e 開啟轉義

echo -e "ok! \c"

# -e 開啟轉義 \c 不換行

echo

"test"

> myfile

echo

'$name\"'

echo

`date

`

printf

命令的語法

printf format-string [arguments...]
test

test命令用於檢查某個條件是否成立,它可以進行數值、字元和檔案三個方面的測試

引數說明

-eq

等於則為真

-ne

不等於則為真

-gt

大於則為真

-ge

大於等於則為真

-lt

小於則為真

-le

小於等於則為真

e.g.

num1=100

num2=100

iftest $[num1] -eq $[num2]

then

echo

'兩個數相等!'

else

echo

'兩個數不相等!'

fi

引數

說明=

等於則為真

!=

不相等則為真

-z 字串

字串的長度為零則為真

-n 字串

字串的長度不為零則為真

e.g.

num1=

"ru1noob"

num2=

"runoob"

iftest

$num1

=$num2

then

echo

'兩個字串相等!'

else

echo

'兩個字串不相等!'

fi

引數

說明-e 檔名

如果檔案存在則為真

-r 檔名

如果檔案存在且可讀則為真

-w 檔名

如果檔案存在且可寫則為真

-x 檔名

如果檔案存在且可執行則為真

-s 檔名

如果檔案存在且至少有乙個字元則為真

-d 檔名

如果檔案存在且為目錄則為真

-f 檔名

如果檔案存在且為普通檔案則為真

-c 檔名

如果檔案存在且為字元型特殊檔案則為真

-b 檔名

如果檔案存在且為塊特殊檔案則為真

e.g.

cd /bin

iftest -e ./bash

then

echo

'檔案已存在!'

else

echo

'檔案不存在!'

fi

cd /bin

if[ -e ./bash ]

then

echo

'檔案已存在!'

else

echo

'檔案不存在!'

fi

函式的定義格式

[

function

] funname [()

]

注:function是可選引數,函式的返回值:如果沒有return,那麼將以最後一條命令的執行結果作為返回值

如果前括號寫在函式名後,一定要留有空格,如果函式名後帶有(),此時可以不用空格

e.g.

functest(

)echo

"func start"

demofun 2

echo

"func stop"

函式返回值在呼叫該函式後通過$?來獲得

命令說明

command > file

將輸出重定向到 file

command < file

將輸入重定向到 file

command >> file

將輸出以追加的方式重定向到 file

n > file

將檔案描述符為 n 的檔案重定向到 file

n >> file

將檔案描述符為 n 的檔案以追加的方式重定向到 file

n >& m

將輸出檔案 m 和 n 合併

n <& m

將輸入檔案 m 和 n 合併

<< tag

將開始標記 tag 和結束標記 tag 之間的內容作為輸入

將指令碼內所有輸出重定向到檔案

exec 1>file1 #標準輸出

exec 2>file2 #標準錯誤

語法格式如下

. filename   # 注意點號(.)和檔名中間有一空格

source filename

shell 常用命令,重定向和檔案包含

shell的知識點並不多,這裡簡單介紹一下常用的一些東西 echoecho test echo test echo key echo e ok n e 開啟轉義echo e ok c e 開啟轉義 c 不換行echo test myfileecho name echo date printf 命令的...

重定向和檔案查詢

檔案描述符 核心 kernel 利用檔案描述符 file descriptor 來訪問檔案。檔案描述符是非負整數。開啟現存盤案或新建檔案時,核心會返回乙個檔案描述符。讀寫檔案也需要使用檔案描述符來指定待讀寫的檔案。linux下一切皆檔案。stdin 標準輸入 如 鍵盤檔案 檔案描述符為 0 stdo...

Linux常用檔案重定向命令

最近在學linux shell,碰到了檔案重定向符,覺得有用就整理了一下 在 shell 程式中,最常使用的 fd 大概有三個,分別為 0 standard input stdin 1 standard output stdout 2 standard error output stderr 在標準...