課程
/運維&測試
/Linux
/shell編程之條件判斷與流程控制
test=$(env | grep "USER" | cut -d "=" -f 2)
2015-07-15
源自:shell編程之條件判斷與流程控制 2-2
正在回答
你自己分別執行這幾個命令,看看結果就能明白了。
env是輸出環境變量的命令,每個環境變量占一行,其中叫USER的環境變量中保存的就是用戶名,輸出的形式是 USER=用戶名
grep命令用來將這一行提取出來。
cut命令能夠按指定的分隔符來分割一行字符,-d 指定分隔符(你哪里覺得它是判斷文件的??又不是test語句?。?f 指定要輸出哪一段字符。很顯然環境變量格式就是由=分割的兩段字符串,所以 cut -d "=" -f 2 輸出的就是=后面的部分,也就是實際用戶名。
以上這三個命令用管道相連,共同完成任務。
EpisodeOne 提問者
此-f非彼-f。一個是在test命令中,一個是在grep命令中,意義完全不同。
#!/bin/bash
if [ $1=="redhat" ]
than
echo fedora
elif [ $1 =="fedora" ]
echo "redhat"
else
echo "please input again!"
cut是切割命令,參數-d表示按什么劃分,參數-f表示截取哪些字段。?
eg :env | grep "USER" ? ? 執行結果為:root=root
cut -d "=" -f 2 ? 表示將其=號作為分隔符,選取其第2個字段,所有就是root
舉報
Linux shell實用案例學習,一定會使你Linux運維能力再次提高
2 回答cut是什么時候講的?
1 回答請問test=$( env | grep "uSER" | cut -d "=" -f 2)
2 回答我用軟鏈接測試 -ef命令 返回的也是yes。請問是什么原因
2 回答[ -e /root/install(是一個不存在的文件) ] | echo $? 為什么輸出0
1 回答為什么的我的目錄下沒有glllll,可是使用test -e和查看指令,結果是yes???
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-07-15
你自己分別執行這幾個命令,看看結果就能明白了。
env是輸出環境變量的命令,每個環境變量占一行,其中叫USER的環境變量中保存的就是用戶名,輸出的形式是 USER=用戶名
grep命令用來將這一行提取出來。
cut命令能夠按指定的分隔符來分割一行字符,-d 指定分隔符(你哪里覺得它是判斷文件的??又不是test語句?。?f 指定要輸出哪一段字符。很顯然環境變量格式就是由=分割的兩段字符串,所以 cut -d "=" -f 2 輸出的就是=后面的部分,也就是實際用戶名。
以上這三個命令用管道相連,共同完成任務。
2017-07-12
此-f非彼-f。一個是在test命令中,一個是在grep命令中,意義完全不同。
2017-06-25
#!/bin/bash
if [ $1=="redhat" ]
than
echo fedora
elif [ $1 =="fedora" ]
echo "redhat"
else
echo "please input again!"
2016-04-27
cut是切割命令,參數-d表示按什么劃分,參數-f表示截取哪些字段。?
eg :env | grep "USER" ? ? 執行結果為:root=root
cut -d "=" -f 2 ? 表示將其=號作為分隔符,選取其第2個字段,所有就是root