Shell脚本中command not found报错处理
生活随笔
收集整理的這篇文章主要介紹了
Shell脚本中command not found报错处理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
字符串的定義與賦值
# 定義STR1變量,值為abcSTR1 = "abc"(錯誤寫法)STR1="abc"(正確寫法)在編寫java代碼時會考慮到格式化,往往變量定義時會有一些空格或者換行符等,因此在寫shell腳本時也就順手這么寫了,在運行時就會報錯:"command not found",將空格刪除才正常運行。源碼如下:
#!/bin/bash STR1="abc" echo $STR1 STR2 = "abc" echo $STR2 STR
對STR1定義是正確的,STR2則為錯誤方式,刪除空格即可。
if條件語句中的空格
# 比較兩個字符串是否相等中if語句的寫法STR1="abc" STR2="abcd"if[$STR1=$STR2](錯誤寫法)if [ $STR1 = $STR2 ](正確寫法)if語句中如果不添加空格的話,"if["會被識別為一個未知的命令,在運行時就會報錯:"command not found",添加正確的空格才能運行。源碼如下:
#!/bin/bash STR1="abc" STR2="abcd"#if[$STR1=$STR2](錯誤寫法) if [ $STR1 = $STR2 ] ;thenecho "相等" elseecho "不相等" fishell中判斷字符串包含關系的方法
利用grep關鍵字查找
#!/bin/bash STR1="abc" STR2="abbcd abc ccc"result=$(echo $STR2 | grep "${STR1}") echo $result if [[ "$result" != "" ]] ;thenecho "包含" elseecho "不包含" fi利用字符串運算符(更簡潔、推薦使用)
#!/bin/bash STR1="abc" STR2="abbcd abc ccc"if [[ $STR2 =~ $STR1 ]] ;thenecho "包含" elseecho "不包含" fi轉載于:https://www.cnblogs.com/jing99/p/9841710.html
總結
以上是生活随笔為你收集整理的Shell脚本中command not found报错处理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: bzoj 1863 二分+dp chec
- 下一篇: 清北刷题10.23night