随笔分类 -  Shell

摘要:在shell中,source与.是等同的,而./是有些细微的不同的,尽管都是在执行命令或者脚本。source或.执行后面的脚本,直到有return出现退出。下面是在网上搜集的关于此的讨论(暂时没有看懂)BASH脚本可以以 . 或 source内置命令来执行, 也可以直接执行脚本文件(需要首行有#!/path/to/bash并且文件是可执行的), 这两种情况是有一些微妙区别的.1. 以.或source这两个等价的builtin来执行脚本时是在当前的SHELL解释器中直接读取命令来执行, 所以可以通过这个脚本改变当前SHELL的环境变量, 脚本中的exit所退出的也自然是当前这个SHELL, 这一 阅读全文
posted @ 2014-03-26 16:34 TobyDev 阅读(212) 评论(0) 推荐(0)
摘要:Themailx or mailcommand in Linux is still providing service for guys like me, especially when we need to send email automatically by script. gmail is great. Now, how to use gmail’s smtp in mailx/mail? gmail is a little special since gmail’s smtp server requires tls authorization. The good news is th 阅读全文
posted @ 2014-03-25 11:29 TobyDev 阅读(1229) 评论(0) 推荐(0)
摘要:快速设置setenv CLICOLOR 1 // 这个貌似没什么用设成1、0都显示彩色setenv LSCOLORS Gxfxaxdxcxegedabagacad关于LSCOLORS的一些说明LSCOLORS 的值描述了当CLICOLOR被启用时将会显示的颜色。它的值为多个fb对组合,其中f代表前景色(文字颜色)b代表背景颜色。各种颜色带号如下:a blackb redc greend browne bluef magentag cyanh light greyA bold black, usually shows up as dark greyB bold redC bold greenD 阅读全文
posted @ 2013-06-03 10:33 TobyDev 阅读(1285) 评论(0) 推荐(1)
摘要:trap命令用于指定在接收到信号后将要采取的动作。常见的用途是在脚本程序被中断时完成清理工作。不过,这次我遇到它,是因为客户有个需求:从终端访问服务器的用户,其登陆服务器后会自动运行某个命令,例如打开应用(命令写在.bashrc等文件中),最后退出,并断开连接;期间是不能允许其使用Ctrl+C等中断退出应用,而回到Shell环境,否则可能会带来安全问题。 当然,解决的方式有很多,如在应用中屏蔽中断信号、使用chroot方式访问等。但这些方法都有一些限制,如需要修改应用,让telnet等支持chroot方式(ssh可支持chroot)等。而使用trap也是一种比较好的解决方法。一、关于信号... 阅读全文
posted @ 2013-03-20 15:46 TobyDev 阅读(650) 评论(0) 推荐(0)
摘要:先上个例子:set prompt="%{\e[32;1m%}%n%{\e[37m%}@%{\e[33m%}%m%{\e[37m%}:%{\e[36m%}%~%{\e[37m%}"\$"%{\e[0m%} "set prompt="%{\e[31;1m%}root%{\e[37m%}@%{\e[33m%}%m%{\e[37m%}:%{\e[36m%}%/%{\e[37m%}#%{\e[0m%} "%{ ... %}代表颜色等设置的开始结束,中间不能有空格\e[ ... m定义颜色或者字体粗细, \e转义 [ ,这个是必须的(感觉和 \0 阅读全文
posted @ 2013-03-20 15:07 TobyDev 阅读(2295) 评论(0) 推荐(0)
摘要:也许你在学习Linux操作系统,会遇到很多问题,这里为你讲解Linux系统Load average负载的知识,你可能对于 Linux 的负载均值(load averages)已有了充分的了解。负载均值在 uptime 或者 top 命令中可以看到,它们可能会显示成这个样子: load average: 0.09, 0.05, 0.01 很多人会这样理解负载均值:三个数分别代表不同时间段的系统平均负载(一分钟、五 分钟、以及十五分钟),它们的数字当然是越小越好。数字越高,说明服务器的负载越 大,这也可能是服务器出现某种问题的信号。 而事实不完全如此,是什么因素构成了负载均值的大小,以及... 阅读全文
posted @ 2013-02-02 13:51 TobyDev 阅读(237) 评论(0) 推荐(0)
摘要:要在vim中启用鼠标,可在打开文件后:set mouse=a或者在.vimrc中添加set mouse=a 阅读全文
posted @ 2012-11-28 16:58 TobyDev 阅读(1433) 评论(0) 推荐(0)
摘要:vi/vim 中可以使用 :s 命令来替换字符串。:s/vivian/sky/ 替换当前行第一个 vivian 为 sky:s/vivian/sky/g 替换当前行所有 vivian 为 sky:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky:2,$s/vivian/sky/g 替换第 2 行开始到最后一行中每一行所有 vivian 为 skyn 为数字,若 n 为 .,表示从当前行开始到最后一行:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky:%s/vivian 阅读全文
posted @ 2012-11-28 16:56 TobyDev 阅读(2045) 评论(1) 推荐(0)
摘要:具体命令如下:grep -r $'\xEF\xBB\xBF' /var/www用vim去除utf-8 BOM1.’去掉utf-8 BOM:set nobomb2.’保留utf-8 BOM:set bomb 阅读全文
posted @ 2012-09-06 17:22 TobyDev 阅读(432) 评论(0) 推荐(0)
摘要:I did a minimal installation of FreeBSD a long time ago. At the time, I did not install manual pages. To later install these man pages, I should be able to do the following:Run sysinstall# sysinstallSelect ConfigureConfigure Do post-install configuration of FreeBSDSelect DistributionsDistributi... 阅读全文
posted @ 2012-08-12 13:34 TobyDev 阅读(1134) 评论(1) 推荐(1)