Linuxはどのように置換変数値を削除しますか?Linux置換変数値を削除する方法
Linuxシステムでは、変数に値を付けた後、いくつかの問題を発見する必要があります。変数値を削除または置換する必要があります。本稿では、Linux変数値の置換と削除について詳しく説明します。一緒に見に行きましょう。
[root@bogon~〕#echo${PATH}#PATH変数の値を呼び出す
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin
[root@bogon~〕#echo${PATH#/*bin:}#その「#」記号が見え、変数「PATH」値の左側から右側に向かって「*bin:」に一致する位置を削除できることを示し、最も短いそれに一致するものだけを削除できるので、出力内容は以下の通り「/usr/local/sbin:」が削除された
/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin
[root@bogon ~]# echo ${PATH#*local/bin:}
/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin
[root@bogon~]#echo${PATH#/*bin:}#2つの「#」は削除が最も長いものに一致することを示すので、「/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/bin:/usr/local/mysql/bin:」はすべて削除されます
/root/bin
[root@bogon~〕#echo${PATH%:/*bin}#上の「#」を「%」に変換してみると、変数「PATH」の値の右から左に向かって「*bin」に一致する位置を削除し、「:/root/bin」が削除される
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin
[root@bogon~〕#echo${PATH%:/*bin}#2つの「%」と2つの「#」が似ている道理
/usr/local/sbin
2、変数内容の置換[root@bogon~〕#echo${PATH/sbin/SBIN/}#は「sbin」を「SBIN」で置き換えますが、最初に一致したもののみを置き換えます。
/usr/local/SBIN/:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin
[root@bogon~〕#echo${PATH//sbin/SBIN/}#sbinをSBINで置き換え、グローバルに置き換える
/usr/local/SBIN/:/usr/local/bin:/SBIN/:/bin:/usr/SBIN/:/usr/bin:/usr/local/mysql/bin:/root/bin
変数の内容削除と置換の小結:変数書式機能の説明
${変数名#一致文字}変数の内容が一致した場合、変数の内容の左側から削除したばかりですが、一致が最も短いものを削除します。
${変数名##マッチング文字}変数の内容がマッチングされた場合、変数の内容の左側から削除されたばかりですが、最もマッチングが長いものを削除すると、貪欲なモードで動作すると理解できます。
${変数名%一致文字}変数の内容が一致した場合、変数の内容の右側から削除したばかりですが、一致が最も短いものを削除します。
${変数名%%マッチング文字}変数の内容がマッチングされた場合、変数の内容の右側から削除されたばかりですが、最もマッチングが長いものを削除すると、貪欲なモードで動作すると理解できます。
${変数名/古い文字列/新しい文字列}変数の内容の左側から一致し、古い文字列を新しい文字列で置き換え、最初に一致した文字列のみを置き換えます。
${変数名//古い文字列/新しい文字列}変数の内容の左側から一致し、新しい文字列で古い文字列を置き換え、一致した文字列をすべて置き換えます。
以上、Linuxの変数値の削除と置換の方法について説明します。本稿では、削除と置換の2つの方法、変数の修正、置換などについて説明します。ここでは、一つ一つ紹介しません。皆さんのお役に立てばと思います!