技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 查看专题: shell
    如题,一般我们写Shell脚本的时候,都倾向使用绝对路径,这样无论脚本在什么目录执行,都应该起到相同的效果,但是有些时候,我们设计一个软件包中的工具脚本,可能使用相对路径更加灵活一点,因为你不知道用户会在哪个目录执行你的程序,就有了本文的题目。
    相对于高级语句如C/C++/Java,Shell其实应该是一门最容易上手,也能够给工作带来最大便利的工具性语言,无论是写写程序做下并发的压力测试,还是实现比较复杂的控制逻辑,Shell语句的开发效率一般都比那些高级语言要高,不需要编译,一写完马上可以测试。在这个追求效率的年代,不熟悉Shell都不好意思说会性能调优啊。
    和操作系统一样,shell也经历了一个漫长的演变史。如今大部分资料讲述最古老的shell都是从1977年的Bourne Shell说起的,它最初移植到Unix V7上,被追认整个shell家族成员的鼻祖,后来的种群都是从其身上分支出来的。
    最近公司服务器不太稳定,总是在凌晨某个时段突发高负载情况,因为客观环境比较复杂,所以很难猜测出到底是哪个进程出现了问题,加之故障发生时,通常我在睡觉,无形中增加了解决问题的难度,于是我便写了一个Shell来替我搞定这个问题。 实际上解决问题的思路非常简单:通过CRON每分钟运行一个Shell,查询系统负载,一旦发现异常,就通过「ps」命令保存进程快照,也可以进一步保存负载,内存等相关的数据,但通常没有必要,因为通过「sar」命令很容易拿到。
    分享一些可能你不知道的shell用法和脚本,简单&强大!在阅读以下部分前,强烈建议读者打开一个shell实验,这些都不是shell教科书里的大路货哦:)
    还记得以前那个用算素数的正则表达式吗?编程这个世界太有趣了,总是能看到一些即别出心裁的东西。你有没有想过在写Shell脚本的时候可以把你的变量和函数放到一个类中?不要以为这不可能,这不,我在网上又看到了一个把Shell脚本整成面向对象的东西。Shell本来是不支持的,需要自己做点东西,能搞出这个事事的人真的是hacker啊。 当然,这里并不是真正的面向对象,因为其只是封装罢了,还没有支持继承和多态。最变态的是他居然还支...
    本周我遭遇了一个惨痛事件,远程开发机有两块硬盘同时损坏,整个分区数据完全丢失。这直接导致我在开发机上 home 目录中所有文件人间蒸发了,真是一觉回到解放前! 值得庆幸的是这件事发生在端午假期中间,放假前我把大部分源代码都提交到了库里,辛苦劳动的损失倒不大。但是之前种种努力搭建的开发环境全丢失了,这一点让人很郁闷。为了不再遭受这样的损失,我痛下决心学习了一下 rsync,用来同步和备份数据。 不得不说 rsync 也...
    服务器冗余和分拆是互联网服务中经常用来缓解访问压力的手段,那么检查或者管理多台同构服务器也是互联网行业工程师们绕不开的操作。经常面临的问题是:如何高效地在多台服务器上执行相同的命令,进行批量系统操作或查看。 Windows 下的 ssh 客户端 XShell 和 SecureCRT …
    代码重构(Code refactoring)有时是很枯燥的,字符串替换之类的操作不仅乏味,而且还容易出错,好在有一些工具可用,以PHP为例,如:Rephactor,Scisr等等,不过现成的工具往往意味着不够灵活,所以今天我要说说Shell在代码重构中的应用。
    最近在给模块编写编译脚本, 大概规则是解决 在css文件里 匹配@import url("/path/html5.css"). 将/path里的html5.css文件内容替换当前行. 即css合并 将js文件里的document.write("/path/dom.js"). 将/path/dom.js文件替换当前行. 即js合并 将模块打包成线上路径. 可以直接cp上线上目录. 提高上线效率,降低上线出错机率. 将sprite的图片文件加上版本号 将标签里的css路径加上版本号
    今天小弟在重构代码中的一个脚本模块,其中涉及到日志功能。上午花了点儿时间想出了个在 shell 打日志的技巧,觉得值得写一下。 希望要实现的效果是:实现一个 write_log 命令,给一条出错消息作为输入,write_log 记录日志时自动加上 时间戳、脚本文件名和行号。形如: 2010-12-17 19:13:44 [work.sh:24] FATAL: mkdir -p /x. 时间戳、脚本文件名都好获得,但是行号就没那么容易实现了。shell 中的 $LINENO 变量只能展开成当前行...
    加密你的shell,shc是一个加密shell脚本的工具。它的作用是把shell脚本转换为一个可执行的二进制文件。用shell脚本对系统进行自动化维护,简单,便捷而且可移植性好.但shell脚本是可读写的,很有可能会泄露敏感信息,如用户名,密码,路径,IP等。同样,在shell脚本运行时会也泄露敏感信息。shc是一个加密shell脚本的工具。它的作用是把shell脚本转换为一个可执行的二进制文件。
    工作以来都在接触Linux和Unix系统,所以对这两类系统用的多,也比较熟悉。渐渐的,Shell中的快捷键也运用自如,一次朋友看到我快捷的操作shell命令,很好奇的建议,什么时候教教他这些快捷方式。特撰写此文,来提高大家的工作效率和保护你们的键盘。下述所有命令在Linux/unix的shell下有效,这里以bash为主。如有出入,以你自己的操作系统为准。开始描述之前,先问几个常见的问题。例如你在终端中输入了下面的这个find命令:这时你...
    Q3:求100!乘积是多少。A3:正常情况下,大部分人使用循环语句。实际上可以 是:seq -s ‘*’ 100 | bc这个命令很好的利用了seq和bc这两个命令。bc处理运算。Q4:怎么用touch同时创建100个文件?A4:起先我想到了,seq 1 100 | touch来处理。发现touch不能这样接收参数。但是加xargs就可以处理,也可以使用 touch `seq 1 100`来处理。
    Bash Shell 快捷键
    shell文件存在相关判断参数
    shell常用的判断条件
[ 共17篇文章 ][ 第1页/共1页 ][ 1 ]
赞助商广告
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1