免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 蜀国的呆子

如何从Linux菜鸟进化成老鸟《Linux命令、编辑器与shell编程》(获奖名单已公布-7-6) [复制链接]

论坛徽章:
2
午马
日期:2015-01-27 11:22:392015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2012-05-22 11:11 |显示全部楼层
回复 51# cjdao


   cd命令可以改变    $CWD 的值,但这个值仅仅是对当前session相关的。 执行新的脚本命令相当于新开一个子session(或者更确切地说,进程)

   想要让脚本改变当前的环境变量,可以使用'. '命令

  1. cd.sh
  2. ========================
  3. #! /bin/sh
  4. pwd
  5. cd /tmp
  6. pwd
  7. #exit 0 // this line is not needed.
  8. ========================
复制代码
然后运行的时候用 `. ` 来运行
  1. [root@localhost home]# . cd.sh
复制代码
这样会对当前环境产生影响。

论坛徽章:
19
CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-09-18 15:15:15CU大牛徽章
日期:2013-05-20 10:46:44CU大牛徽章
日期:2013-05-20 10:46:38CU大牛徽章
日期:2013-05-20 10:46:31CU大牛徽章
日期:2013-05-20 10:46:25CU大牛徽章
日期:2013-05-20 10:46:18CU大牛徽章
日期:2013-04-17 11:19:51CU大牛徽章
日期:2013-04-17 11:19:42CU大牛徽章
日期:2013-04-17 11:19:37CU大牛徽章
日期:2013-04-17 11:19:32CU大牛徽章
日期:2013-04-17 11:19:28
发表于 2012-05-22 11:38 |显示全部楼层
回复 51# cjdao


    还真是这样,不过在Windows 控制台下不是这样的,退出后会保留原路径

论坛徽章:
0
发表于 2012-05-22 12:31 |显示全部楼层
路过 支持下

论坛徽章:
2
午马
日期:2015-01-27 11:22:392015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2012-05-22 12:42 |显示全部楼层
回复 35# chenyx


    是调用的 /etc/rc.d/init.d/functions
  1. echo_success() {
  2.   [ "$BOOTUP" = "color" ] && $MOVE_TO_COL
  3.   echo -n "["
  4.   [ "$BOOTUP" = "color" ] && $SETCOLOR_SUCCESS
  5.   echo -n $"  OK  "
  6.   [ "$BOOTUP" = "color" ] && $SETCOLOR_NORMAL
  7.   echo -n "]"
  8.   echo -ne "\r"
  9.   return 0
  10. }
复制代码

论坛徽章:
2
午马
日期:2015-01-27 11:22:392015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2012-05-22 12:45 |显示全部楼层
回复 14# cjdao

测试没问题。

  1. [root@NODE000 tmp]# cat > my.txt <<EOF
  2. > this
  3. > is
  4. > hello
  5. > world
  6. > and
  7. > helloworld
  8. > testing.
  9. > EOF
  10. [root@NODE000 tmp]# cat my.txt
  11. this
  12. is
  13. hello
  14. world
  15. and
  16. helloworld
  17. testing.
  18. [root@NODE000 tmp]# cat my.txt| grep hello > hello.txt
  19. [root@NODE000 tmp]# cat hello.txt
  20. hello
  21. helloworld
复制代码

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
发表于 2012-05-22 13:11 |显示全部楼层
回复 55# to407
  1. start() {
  2.         echo -n $"Starting $prog: "
  3.         check13 || exit 1
  4.         LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd $OPTIONS
  5.         RETVAL=$?
  6.         echo
  7.         [ $RETVAL = 0 ] && touch ${lockfile}
  8.         return $RETVAL
  9. }
复制代码
没看到调用哪个函数的地方啊

论坛徽章:
2
午马
日期:2015-01-27 11:22:392015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2012-05-22 13:27 |显示全部楼层
回复 57# chenyx


    这边的调用顺序是
start()-->daemon()-->success()-->echo_success()

论坛徽章:
27
CU大牛徽章
日期:2013-03-13 15:15:08CU大牛徽章
日期:2013-05-20 10:46:38CU大牛徽章
日期:2013-05-20 10:46:44CU大牛徽章
日期:2013-09-18 15:24:09CU大牛徽章
日期:2013-09-18 15:24:20CU大牛徽章
日期:2013-09-18 15:24:25CU大牛徽章
日期:2013-09-18 15:24:31CU大牛徽章
日期:2013-09-18 15:24:36CU大牛徽章
日期:2013-09-18 15:24:41CU大牛徽章
日期:2013-09-18 15:24:48CU大牛徽章
日期:2013-09-18 15:24:52处女座
日期:2013-09-27 17:45:43
发表于 2012-05-22 13:30 |显示全部楼层
在搬迁机房市,服务器的Ip变化了,需要替换代码里所有的ip
谁能写个shell脚本实现替换某个目录下所有文件(包括子目录)文件里的字符串,传入三个参数:目录名称,旧字符串,新字符串

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
发表于 2012-05-22 13:46 |显示全部楼层
回复 51# cjdao
  1. . ./cd.sh
复制代码

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
发表于 2012-05-22 13:49 |显示全部楼层
回复 53# 方兆国


    CMD.exe在执行bat的时候不会启动一个sub shell
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP