免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
打印 上一主题 下一主题

[文件目录] ======[已解决]请问"%"在这里是什么意思呢?====== [复制链接]

论坛徽章:
7
操作系统版块每日发帖之星
日期:2015-06-16 22:20:00IT运维版块每日发帖之星
日期:2015-06-17 22:20:00IT运维版块每周发帖之星
日期:2016-01-07 23:04:26操作系统版块每日发帖之星
日期:2016-05-17 06:20:00操作系统版块每日发帖之星
日期:2016-05-21 06:20:00操作系统版块每日发帖之星
日期:2016-07-05 06:20:0015-16赛季CBA联赛之广东
日期:2017-07-13 16:08:03
11 [报告]
发表于 2016-03-12 09:17 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
13
CU大牛徽章
日期:2013-04-17 11:20:3615-16赛季CBA联赛之吉林
日期:2017-05-25 16:45:4715-16赛季CBA联赛之福建
日期:2017-03-13 11:33:442017金鸡报晓
日期:2017-02-08 10:39:422017金鸡报晓
日期:2017-01-10 15:13:29IT运维版块每日发帖之星
日期:2016-03-15 06:20:01IT运维版块每日发帖之星
日期:2015-10-02 06:20:00CU十二周年纪念徽章
日期:2013-10-24 15:41:34CU大牛徽章
日期:2013-09-18 15:15:45CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-04-17 11:46:39CU大牛徽章
日期:2013-04-17 11:46:28
12 [报告]
发表于 2016-03-12 21:55 |只看该作者
本帖最后由 xdsnet 于 2016-03-12 21:55 编辑

这个应该是替换最后一个点后面的字符串形成新文件名,即替换扩展名

  1. f_DAT_FILE=${FILE_LST%.${g_EX_LST}}.${g_EX_DAT}
复制代码
FILE_LST 、 g_EX_LST 、 g_EX_DAT
等都是变量,则翻译出来为
把${FILE_LST} 中 最后的 .${g_EX_LST} 换成 .${g_EX_DAT} ,值赋给 f_DAT_FILE 变量

论坛徽章:
7
操作系统版块每日发帖之星
日期:2015-06-16 22:20:00IT运维版块每日发帖之星
日期:2015-06-17 22:20:00IT运维版块每周发帖之星
日期:2016-01-07 23:04:26操作系统版块每日发帖之星
日期:2016-05-17 06:20:00操作系统版块每日发帖之星
日期:2016-05-21 06:20:00操作系统版块每日发帖之星
日期:2016-07-05 06:20:0015-16赛季CBA联赛之广东
日期:2017-07-13 16:08:03
13 [报告]
发表于 2016-03-14 20:56 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
13
CU大牛徽章
日期:2013-04-17 11:20:3615-16赛季CBA联赛之吉林
日期:2017-05-25 16:45:4715-16赛季CBA联赛之福建
日期:2017-03-13 11:33:442017金鸡报晓
日期:2017-02-08 10:39:422017金鸡报晓
日期:2017-01-10 15:13:29IT运维版块每日发帖之星
日期:2016-03-15 06:20:01IT运维版块每日发帖之星
日期:2015-10-02 06:20:00CU十二周年纪念徽章
日期:2013-10-24 15:41:34CU大牛徽章
日期:2013-09-18 15:15:45CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-04-17 11:46:39CU大牛徽章
日期:2013-04-17 11:46:28
14 [报告]
发表于 2016-03-14 21:54 |只看该作者
这个代码因为有%并不是句中替换,而仅仅能替换最后的部分,因为你
  1. ====================================================

  2. FILE_LST="aabbccdd"
  3. g_EX_LST="cc"
  4. g_EX_DAT="qq"
  5. f_DAT_FILE=${FILE_LST%${g_EX_LST}}${g_EX_DAT}
  6. echo ${f_DAT_FILE}



  7. $ ksh -x test.sh
  8. + FILE_LST=aabbccdd
  9. + g_EX_LST=cc
  10. + g_EX_DAT=qq
  11. + f_DAT_FILE=aabbccddqq
  12. + echo aabbccddqq
  13. aabbccddqq
复制代码
中 g_EX_LST指代的'cc'并没有出现在最后,所以不会被去除,即${FILE_LST%${g_EX_LST}} 只能去除最后完全匹配${g_EX_LST}的部分,而不是由${g_EX_LST}开始的部分。

论坛徽章:
7
操作系统版块每日发帖之星
日期:2015-06-16 22:20:00IT运维版块每日发帖之星
日期:2015-06-17 22:20:00IT运维版块每周发帖之星
日期:2016-01-07 23:04:26操作系统版块每日发帖之星
日期:2016-05-17 06:20:00操作系统版块每日发帖之星
日期:2016-05-21 06:20:00操作系统版块每日发帖之星
日期:2016-07-05 06:20:0015-16赛季CBA联赛之广东
日期:2017-07-13 16:08:03
15 [报告]
发表于 2016-03-14 22:19 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP