Linux删除替换变量值方法

  在Linux系统中,对变量进行赋值后需要发现有些问题,需要对变量值进行删除或替换,本文将针对Linux变量值的替换和删除做个详细介绍,希望对你有所帮助。一起去看看吧!



  1、变量内容的删除

  [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:} #两个“#”表示删除能匹配到最长的那个,所以“/usr/local/bin:/sbin:/bin:/usr/sbin:/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} #两个“%”与两个“#”类似的道理

  /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

  变量内容删除与替换小结:

  变量书写方式功能描述

  ${变量名称#匹配字符}若变量内容有被匹配到,刚从变量内容的左边开删除,但删除匹配最短的

  ${变量名称##匹配字符}若变量内容有被匹配到,刚从变量内容的左边开删除,但删除匹配最长的,可理解成此时工作在贪婪模式

  ${变量名称%匹配字符}若变量内容有被匹配到,刚从变量内容的右边开删除,但删除匹配最短的

  ${变量名称%%匹配字符}若变量内容有被匹配到,刚从变量内容的右边开删除,但删除匹配最长的,可理解成此时工作在贪婪模式

  ${变量称/旧字符串/新字符串}从变量内容的左边开始匹配,用新字符串替换旧字符串,仅替换第一个匹配到的字符串

  ${变量称//旧字符串/新字符串}从变量内容的左边开始匹配,用新字符串替换旧字符串,全部替换匹配到的字符串

(0)

相关推荐

  • Linux如何删除替换变量值?Linux删除替换变量值的方法

    在Linux系统中,对变量进行赋值后需要发现有些问题,需要对变量值进行删除或替换,本文将针对Linux变量值的替换和删除做个详细介绍,希望对你有所帮助.一起去看看吧! 1.变量内容的删除 [root@ ...

  • linux 删除换行符的方法小结

    今天需要删除文件里面的换行符,比如有一个文件a.txt: 1,2,3 4,5,6 1,2,3 4,5,6 1,2,3 4,5,6 1,2,3 4,5,6 1,2,3 4,5,6 1.使用vim删除换行 ...

  • xp系统输入法删除替换方法

    小编今天遇到一件奇怪的事情,明明自己电脑里只安装了常用的搜狗输入法,为什么今天在整理软件时,却发现电脑里至少装了百度输入法.五笔输入法等各种输入法,这让小编摸不着头脑,为什么这些软件平白无故会出现在电 ...

  • 教你win7如何释放C盘安全删除休眠文件的方法

    随着Win 7系统的问世,大部分用户已经把系统换成了Win 7,但很多朋友在使用时都发现了一个问题。电脑刚被买回来时,我们往往都把C盘(系统盘)预留50G左右的空间,而且什么东西都从不装到C盘,过了一 ...

  • 删除360浏览器的方法推荐(图文教程)

    前面小编给大家如何更换浏览器的相关内容介绍,相信大家都对这方面有所了解,可是就是有用户在将360浏览器替换为ie浏览器的话,出现360;浏览器删除不了的现象,今天小编就针对于360浏览器删除不了的情况 ...

  • 轻松自定义XP系统的内置变量值

    在WINDOWS目录下面有个文件夹TEMP,这个文件夹就是主要的系统变量产生文件。我们把这个文件夹内的文件转移到别的盘里,只要定期删除就可以了。 在桌面上先右击我的电脑,点击属性,它会出来一个界面,在 ...

  • Linux删除重复行的代码

    Linux删除重复行的代码 文本处理时,经常要删除重复行,下面是三种方法 第一,用sort+uniq,注意,单纯uniq是不行的. ? 1 sort -n test.txt | uniq 第二,用so ...

  • Word中批量删除节信息的方法

    Word中批量删除节信息的方法 这时要想编辑页码,只有两个思路,要么一节一节的编辑(因为页码的编辑只在当前节内生效);要么就批量删除掉所有的节,再重新编辑.如果这篇文档只有十几页,我可能就会新建一个空 ...

  • Win8系统怎么删除管理员密码?Win8删除管理员密码的方法

    Win8系统怎么删除管理员密码?第一次装机Win8系统时用户对系统进行过密码设置,常年累月的开机登录让用户对密码登陆烦不胜烦,有些用户需要删除Win8系统的管理员密码,这样就不用每次开机都需要输入密码 ...