日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

shell 中常用到的基础命令

發布時間:2024/9/3 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 shell 中常用到的基础命令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、diff

用法:
diff [options] files|directorys

輸出信息:
[num1,num2][a|c|d][num3,num4]

num1,num2第一個文件中的行
a添加
c更改
d刪除
<第一個文件的內容
>第二個文件的內容
num3,num4第二個文件的行
常用參數:
-b忽略空格
-B忽略空行
-i忽略大小寫
-c顯示文件所有內容并標示不同
-r對比目錄
-u合并輸出

二、patch

patch? 原文件 補丁文件
-b?? ?##備份原文件

diff -u westos westos.new > westos.path dnf install patch -y patch -b westos westos.path ls

?三、cut

-d指定:為分隔符
-f指定顯示的列 5第五列| 3,5 3和5列|3-5 3到5列|5- 第五列以后|-5 到第五列
-c指定截取的字符(數字用法同-f)

?

?四、sort

-n純數字排序
-r倒敘
-u去掉重復
-o輸出到指定文件
-t指定分隔符
-k指定排序的列

五、uniq

-c???合并重復并統計重復個數
-d顯示重復的行
-u顯示唯一的行
學員命令測試: 1.ifconfig 網卡 可以顯示此網卡的信息顯示信息中包含此網卡使用的ip地址請用命令過濾此ip并在輸出時只顯示ip其他信息不顯示2.找出能登陸系統用戶中UID最大的用戶,并顯示其名稱3.當前主機為web服務器,請抓取訪問web服務器次數排在前5的ip地址 1. [root@server mnt]# ifconfig enp1s0 | head -n 2 | tail -n 1 | cut -d " " -f 10 172.25.254.101 [root@server mnt]# ifconfig enp1s0 | grep netmask | cut -d " " -f 10 172.25.254.101 [root@server mnt]# ifconfig enp1s0 | awk '/inet\>/{print $2}' 172.25.254.101

?

2. [root@server mnt]# sort -t : -nrk 3 /etc/passwd | cut -d : -f 1 | head -n 1 nobody

?

3. cut -d " " -f 1 /etc/httpd/logs/access_log | sort -n | uniq -c | sed 's/^\ *//g' | sort -nrt " " -k 1 | cut -d " " -f 2 172.25.254.101 1.1.1.201 172.25.254.1

六、tr

tr 'a-z' 'A-Z' ##小寫轉大寫 tr 'A-Z' 'a-z' ##大寫轉小寫

七、test

test = [] ##[] 就相當于test命令 "test $a = $b" = [ "$a" = "$b" ] test數字對比
=?
!=?
-eq等于
-ne不等于
-le小于等于
-lt小于
-ge大于等于
-gt大于
test的條件關系
-a并且
-o或者
test對空的判定
-nnozero 判定內容不為空
-zzero?? ?判定內容為空
執行下列腳本來判斷用戶類型 user_check.sh 用戶用戶類型為 super user system user common user #!/bin/bash [ -z "$1" ] && {echo -e "\033[31mError:Please input username follwing script !!\033[0m"exit }id $1 &> /dev/null || {echo user $1 is not exist !!exit }[ "$(id -u $1)" = "0" ] && {echo $1 is supper user!!exit }[ "$(id -u $1)" -lt "1000" ] && {echo $1 is system user exit }[ "$(id -u $1)" -ge "1000" ] && {echo $1 is common userexit }

測試 :

test對于文件的判定
-ef文件節點號是否一致(硬鏈)
-nt文件1是不是比文件2新
-ot文件1是不是比文件2老
-d目錄
-S???套結字
-L軟連接
-e存在
-f普通文件
-b塊設備
-c字符設備
學員檢測 編寫腳本完成以下條件 file_check.sh 在執行時 如果腳本后未指定檢測文件報錯“未指定檢測文件,請指定” 如果腳本后指定文件不存在報錯“此文件不存在” 當文件存在時請檢測文件類型并顯示到輸出中 #!/bin/bash [ -z $1 ] && {echo -e "\033[31mError:Please input file's name !!\033[0m"exit }[ -e $1 ] && {[ -d $1 ] && {echo $1 is dir !}[ -S $1 ] && {echo $1 is taojiezi !}[ -L $1 ] && {echo $1 is ruanlianjie !}[ -f $1 ] && {echo $1 is common file !}[ -b $1 ] && {echo $1 is kuaishebei !}[ -c $1 ] && {echo $1 is zifushebei !}exit }||{echo $1 is not exist ! }

?測試:

八、&& ||

&&符合條件作動作
||不符合條件作動作

總結

以上是生活随笔為你收集整理的shell 中常用到的基础命令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。