分享幾個在shell中常用的命令

2021-12-30 00:56:40 字數 3315 閱讀 4021

比較檔案差異

[root@localhost mnt]# cat file112

345[root@localhost mnt]# cat file212

3456

[root@localhost mnt]# diff file1 file2

5a6> 6

[root@localhost mnt]# diff -u file1 file2 > file.path 補丁匯入補丁檔案

cut命令用於字元擷取

cut -d 指定分隔符

cut -f 1,7|1-7 指定擷取的列

cut -c 1,4|1-4 指定擷取的字元位置

示例:[root@localhost mnt]# ifconfig eth0 | head -2 | tail -1 | cut -d " " -f 10 以空格為分割符的第10列

172.25.254.177

用於多字元排序

sort -n 純數字排序

sort -r 倒序

sort -u 去掉重複數字

sort -o 輸出到指定檔案

sort -t 指定分隔符

sort -k 指定要排序的列

示例:[root@localhost mnt]# ll | sort -t " " -k 5 -rn

-rw-r--r--. 1 root root 305 may 17 08:24 ip.sh

-rw-r--r--. 1 root root 301 may 17 08:28 user_show.sh

-rw-r--r--. 1 root root 276 may 17 08:31 clear_log.sh

-rw-r--r--. 1 root root 259 may 15 13:00 file.sh

-rw-r--r--. 1 root root 219 may 15 12:11 create_user.sh

-rw-r--r--. 1 root root 120 may 17 11:06 file.path

-rw-r--r--. 1 root root 31 may 17 11:04 westos

-rwxr-xr-x. 1 root root 26 may 15 12:32 westos.sh

-rw-r--r--. 1 root root 18 may 15 12:02 user

-rw-r--r--. 1 root root 13 may 15 12:03 passwd

-rw-r--r--. 1 root root 12 may 17 11:07 file1.orig

-rw-r--r--. 1 root root 12 may 17 10:35 file2

-rw-r--r--. 1 root root 10 may 17 11:11 file1

total 52

uniq命令需要與sort命令配合使用

uniq -u 顯示唯一的行

uniq -d 顯示重複的行

uniq -c 每行顯示一次,並統計重複次數

1&&表示執行條件成立後執行的命令

||表示執行條件不成路後執行的命令

比如:[root@localhost mnt]# ping -c1 -w1 172.25.254.178 &> /dev/null && echo yes || echo no ping178主機,如果ping通輸出yes ping不通輸出no

no[root@localhost mnt]# ping -c1 -w1 172.25.254.77 &> /dev/null && echo yes || echo no

yestest和[ ] 相似

test "$a" = "$b" && echo yes || echo no

[ "$a" = "$b" ] && echo yes || echo no

[ "$a" != "$b" ] && echo yes || echo no ##乙個條件

[ ! "a" = "b" ] && echo yes || echo no ##兩個條件,"a" = "b"且該式不成立

[ "$a" -eq "$b" ] && echo yes || echo no ##等於

[ "$a" -ne "$b" ] && echo yes || echo no ##不等於

[ "$a" -le "$b" ] && echo yes || echo no ##小於等於

[ "$a" -ge "$b" ] && echo yes || echo no ##大於等於

[ "$a" -lt "$b" ] && echo yes || echo no ##小於

[ "$a" -gt "$b" ] && echo yes || echo no ##大於

[ "$a" -lt "$b" -o "$a" -eq "$b" ] && echo yes || echo no ##-o 或者

[ "$a" -lt "$b" -a "$a" -eq "$b" ] && echo yes || echo no ##-a 和

windows bat批處理中常用的幾個命令

1 怎樣建立和執行批處理檔案 bat echo hi pause 最後雙擊執行該bat檔案,列印結果 或者可以在命令列裡執行該bat檔案,如 2 怎樣宣告和使用變數 使用set命令宣告變數 3 怎樣給bat檔案傳引數 直接在命令提示符下鍵入你的bat檔名,用空格分隔引數,然後在bat中用 1就是第乙...

shell中常用的語句

for num in 1 2 3 for num in for num inseq 1 3或者 for num inseq 1 2 10 do done for語句示例 for name in westos linux 666 do echo name done while 條件 do done w...

sqlmap中常用的幾個命令

1.u 表示需要探測的目標站點url,例如 sqlmap.py u注 如果url後引數個數大於等於2個,則需要加上雙引號 sqlmap.py u username zhangsan 2.r 表示判斷乙個文字中的請求是否存在注入,一般在存在cookie注入時使用,路徑可以是相對路徑也可以是絕對路徑 s...