命令注入 命令連線符

2022-09-02 18:51:07 字數 1321 閱讀 9511

;(分號)

命令按照順序(從左到右)被執行,並且可以用分號進行分隔。當有一條命令執行失敗時,不會中斷其它命令的執行。

eg:ping -c 4 127.0.0.1;sleep 6  //兩條都是有效命令

test;sleep 6 //test無效命令,即執行失敗,sleep一樣執行

|(管道符)

通過管道符可以將乙個命令的標準輸出管道為另外乙個命令的標準輸入。當第一條命令失敗時,它仍然會執行第二條命令

eg:ping -c 4 127.0.0.1|sleep 6 

test|sleep 6

&(後台任務符號)

命令按照順序(從左到右)被執行,跟分號作用一樣;此符號作用是後台任務符號使shell在後台執行該任務,這樣使用者就可以立即得到乙個提示符並繼續其他工作

root@ubuntu: d & e & f

[1] 14271

[2] 14272

後台執行任務d和e,而在前台執行任務f. shell將作業數目顯示在方括號[ ]中,同時還顯示了在後台執行的每個程序的pid(process identification,程序標識)編號。在f結束後就  會立即得到乙個shell提示符

&&(邏輯與)

前後的命令的執行存在邏輯與關係,只有【&&】前面的命令執行成功後,它後面的命令才被執行

eg:ping -c 4 127.0.0.1&&sleep 6  //sleep不執行

test&&sleep 6  //test無效命令,則sleep執行

||(邏輯或)

前後命令的執行存在邏輯或關係,只有【||】前面的命令執行失敗後,它後面的命令才被執行;

eg:ping -c 4 127.0.0.1||sleep 6  //都執行

test||sleep 6  //test無效命令,則sleep不執行

`(反引號

當乙個命令被解析時,它首先會執行反引號之間的操作。例如執行echo `ls -a` 將會首先執行ls並捕獲其輸出資訊。然後再將它傳遞給echo,並將ls的輸出結果列印在螢幕上,這被稱為命令替換

eg:ping -c 4 127.0.0.1`sleep 6`

$(command)

這是命令替換的不同符號。當反引號被過濾或編碼時,可能會更有效

eg:ping -c 4 127.0.0.1 $(sleep 6)  

命令解析過程:

| & || && 跟linux一樣

linux 命令間的連線符

表示任務在後台執行,如要在後台執行redis server,則有 redis server 表示前一條命令執行成功時,才執行後一條命令 如 echo 1 echo 2 表示上一條命令執行失敗後,才執行下一條命令,如 cat nofile echo fail 注 分號表示命令依次執行。管道符 命令格式...

shell命令 連線符 重定向

二 萬用字元 三 連線符 四 輸出重定向 概念 shell是計算機軟體和硬體之間的翻譯官 echo echo hello world echo hello world echo hello world 注意 在shell中沒有字元和字串的區分,echo後面可以原樣輸出 把shell命令寫入指令碼的執...

bat中的連線符

command1 command2 用來分隔乙個命令列中的多個命令。cmd.exe 執行第乙個命令,然後執行第二個命令。command1 command2 只有在符號 前面的命令成功時,才用於執行該符號後面的命令。cmd.exe 執行第乙個命令,然後只有在第乙個命令執行成功時才執行第二個命令。com...