shell
文章平均质量分 85
wzb56
never say die! never ever give up!
人活着,你也让别人活!
前半生不犹豫,后半生不后悔!
改变一生的无外乎两种东西:一是你读过的书,一是你遇到的人。
改变命运的无外乎两种东西:一是你读过的书,一是你遇到的人。
展开
-
shell字符串变量的特异功能:字符串的替换(${str/源模式/目标模式},${str//源模式/目标模式})、截断
shell字符串变量的特异功能${}:字符串的替换、截断 假如有shell字符串变量: file= "...."一、shell变量字符串的替换功能: 1. 首次出现替换: ${file/源模式/目标模式} #在file变量指代的字符串中,首次出现的匹配源模式的字符序列用目标模式替换。 2. 全部替换原创 2011-11-09 20:16:15 · 6785 阅读 · 0 评论 -
shell十三问之6:exec跟source差在哪?
shell十三问之6:exec跟source差在哪?这次让我们从CU shell版的一个实例帖子来谈起吧:(论坛改版后,原链接已经失效)例中的提问原文如下:帖子提问:cd /etc/aa/bb/cc可以执行但是把这条命令放入shell脚本后,shell脚本不执行!这是什么原因?意思是:运行shell脚本,并没有移动到/etc/aa/bb/cc原创 2015-03-02 20:16:16 · 918 阅读 · 0 评论 -
shell十三问之3:别人echo、你也echo,是问echo知多少?
shell十三问之3:别人echo、你也echo,是问echo知多少?承接上一章介绍的command line, 这里我们用echo这个命令加以进一步说明。温习 标准的command line三个组成部分:command_name option argumentecho是一个非常简单、直接的Linux命令:$echo argumentecho将原创 2015-03-02 19:46:05 · 1099 阅读 · 0 评论 -
shell十三问之9:$@与$*差在哪?
shell十三问之9:$@与$*差在哪?要说$@与$*之前,需得先从shell script的positional parameter谈起...我们都已经知道变量(variable)是如何定义和替换的,这个不再多讲了。1. shell script的positional parameter但是,我们还需要知道有些变量是shell内定的,且其名称是原创 2015-03-03 14:19:40 · 777 阅读 · 0 评论 -
shell十三问之8: $(())与$()还有${}差在哪?
shell十三问之8: $(())与$()还有${}差在哪?我们上一章介绍了()与{}的不同,这次让我们扩展一下,看看更多的变化:$()与${}又是啥玩意儿呢?在bash shell中, $()与``(反引号)都是用来做命令替换(command substitution)的。所谓的命令替换与我们第五章学过的变量替换差不多,都是用来重组命令行:完成 `原创 2015-03-03 13:53:35 · 865 阅读 · 0 评论 -
shell十三问之10:&& 与 || 差在哪?
shell十三问之10:&& 与 || 差在哪?好不容易,进入了两位数的章节了...一路走来,很辛苦吧?也很快乐吧? ^_^在解答本章题目之前,先让我们了解一个概念:return value。我们在shell下跑的每一个command或function,在结束的时候都会传回父进程一个值,称为 return value。在shell command l原创 2015-03-03 14:29:36 · 735 阅读 · 0 评论 -
shell十三问之16:学习总结与原帖目录
本人(markdown译者)是解决工作中shell脚本的一个问题,偶尔的一次机会遇到了CU论坛中这样一个神贴:**shell十三问**.shell十三问是CU的shell版的台湾的**网中人**是2003年用繁体发布的。第一次读到shell十三问,由于是繁体,第一感觉有点抵触,但是还是耐着性子读完了一贴,没想到竟然读懂了,而且还被**网中人**的幽默的写作风格,独到的思维方原创 2015-03-21 20:05:11 · 761 阅读 · 0 评论 -
shell十三问之11:>与< 差在哪?
shell十三问之11:>与这次的题目,之前我在CU的shell版说明过了:(原帖的连接在论坛改版后,已经失效)这次我就不重写了,将帖子的内容“抄”下来就是了...1. 文件描述符(fd, File Descriptor)谈到I/O redirection,不妨先让我们认识一下File Descriptor(fd,文件描述符)。进程的运算,在大部原创 2015-03-14 02:09:37 · 855 阅读 · 0 评论 -
shell十三问之12:你要if还是case呢?
shell十三问之12:你要if还是case呢?还记得我们在第10章所介绍的return value吗?是的,接下来的介绍的内容与之有关,若你的记忆也被假期所抵消的话,那建议您还是回去温习温习再回来...若你记得return value,我想你也应该记得了&& 与 || 什么意思吧?用这两个符号再搭配 command group的话,我们可让shel原创 2015-03-14 02:13:27 · 925 阅读 · 0 评论 -
shell十三问之13: for what? while与until差在哪?
shell十三问之13: for what? while与until差在哪?终于,来到了shell十三问的最后一问了... 长长吐一口气~~~~最后要介绍的是shell script设计中常见的循环(loop).所谓的loop就是script中的一段在一定条件下反复执行的代码。bash shell中常用的loop有如下三种:forwhileuntil原创 2015-03-14 02:15:36 · 731 阅读 · 0 评论 -
shell十三问之14: [^ ] 跟[! ]差在哪? (wildcard)
这个题目说穿了,就是要探讨Wildcard与Regular Expression的差别的。这也是很多初学shell的朋友很容易混淆的地方。首先,让我们回到十三问之第2问,再一次将我们提到的command line format 温习一次:command_name options arguments同时,也再来理解一下,我在第5章所提到的变量替换的特性:先替换,原创 2015-03-14 02:16:15 · 658 阅读 · 0 评论 -
shell十三问之15: [^ ] 跟[! ]差在哪? (RE: Regular Expression)
Part-II Regular Expression (正则表达式)接下来的Regular Expression(RE) 可是个大题目,要讲的很多。我这里当然不可能讲得很全。只希望能带给大家一个基本的入门概念,就很足够了...先来考一下英文好了:What is expression?简单来说,就是"表达",也就是人们在沟通的时候所要陈述的内容。然而,生活中,原创 2015-03-14 02:18:34 · 776 阅读 · 0 评论 -
mysql数据表按天轮转shell脚本实现
最近有个业务往mysql数据库中一个表中写数据,每天的数据量不是很大,而且业务总是依赖最近1天的数据;但是随着时间的积累,数据库的中数据条目变多,查询变慢;如果能够按天分表,事情就解决了;但是,使用该表的业务逻辑都要做相应的调整;为了实现两者的折衷,采取将数据库表按天轮转的方法:实现机制 create like + rename.但是需要借助mysql-client原创 2015-04-07 21:10:26 · 1746 阅读 · 0 评论 -
shell十三问之4:""(双引号)与''(单引号)差在哪?
shell十三问之4:""(双引号)与''(单引号)差在哪?还是回到我们的command line来吧...经过前面两章的学习,应该很清楚当你在shell prompt后面敲打键盘,直到按下Enter键的时候,你输入的文字就是command line了,然后shell才会以进程的方式执行你所交给它的命令。但是,你又可知道:你在command line中输入的每一原创 2015-03-02 19:59:08 · 910 阅读 · 0 评论 -
shell十三问之5:问var=value 在export前后的差在哪?
shell十三问之5:问var=value 在export前后的差在哪?这次让我们暂时丢开command line, 先了解一下bash变量(variable)吧...所谓的变量,就是利用一个固定的"名称"(name),来存取一段可以变化的"值"(value)。1. 变量设定(set)在bash中, 你可以用"="来设定或者重新定义变量的内容:nam原创 2015-03-02 20:06:05 · 636 阅读 · 0 评论 -
shell十三问之1: 何为shell?
shell十三问之1: 何为shell?shell是什么东西之前,不妨让我们重新审视使用者和计算机系统的关系: (此处为使用者和计算机系统的关系图)我们知道计算机的运作不能离开硬件,但使用者却无法直接操作硬件, 硬件的驱动只能通过一种称为“操作系统(OS,Opertating System)”的软件来管控。 事实上,我们每天所谈的“linux”,严格来说只是一个操作系统(OS), 我们称之为原创 2015-03-02 19:25:20 · 882 阅读 · 0 评论 -
shell脚本regex正则表达式
shell脚本regex正则表达式去论坛讨论 来源: 作者: 发布时间:2010-03-22.任意字符^行首匹配$行尾匹配^$表示空行,不含字符的行^ $匹配只有单个空格的行[0-9][a-zA-Z]^[A- Z]搜索以大写字母开头的行[^A-Z]匹配大写字母意外的任意字符*表示匹配0个或若干个字符,如:a*,表示匹配0个或若干个a; aa*转载 2012-09-26 17:06:03 · 1900 阅读 · 0 评论 -
linux shell 数组的使用
linux shell在编程方面比windows 批处理强大太多,无论是在循环、运算。已经数据类型方面都是不能比较的。 下面是个人在使用时候,对它在数组方面一些操作进行的总结。 1.数组定义 [chengmo@centos5 ~]$ a=(1 2 3 4 5)[chengmo@centos5 ~]$ echo $a1 一对括号表示是数组,数组转载 2014-02-25 21:28:43 · 792 阅读 · 0 评论 -
linux shell 无密码登陆
假如你Linux Client是客户端, Server为服务器,用户名为user。现在要配置从Client到Server的无密码SSH登录。1:在Client上产生一对密钥,执行ssh-keygen命令,需要输入的地方直接回车,接受缺省值即可,输出如下:[user@Client .ssh]$ ssh-keygen -dGenerating public/private dsa转载 2014-02-25 22:03:24 · 1421 阅读 · 1 评论 -
SSH原理与运用(一):远程登录
SSH原理与运用(一):远程登录作者: 阮一峰日期: 2011年12月21日SSH是每一台Linux电脑的标准配置。随着Linux设备从电脑逐渐扩展到手机、外设和家用电器,SSH的使用范围也越来越广。不仅程序员离不开它,很多普通用户也每天使用。SSH具备多种功能,可以用于很多场合。有些事情,没有它就是办不成。本文是我的转载 2014-02-27 21:56:34 · 829 阅读 · 0 评论 -
linux history 15种用法
如果你经常使用 Linux 命令行,那么使用 history(历史)命令可以有效地提升你的效率。本文将通过实例的方式向你介绍 history 命令的 15 个用法。使用 HISTTIMEFORMAT 显示时间戳当你从命令行执行 history 命令后,通常只会显示已执行命令的序号和命令本身。如果你想要查看命令历史的时间戳,那么可以执行:# export HISTTIMEFOR转载 2014-02-27 22:22:34 · 956 阅读 · 0 评论 -
解决cron 脚本的不能运行的方法:脚本中统统使用全路径
cron 脚本的不能运行的原因:脚本中统统使用全路径; 尤其是脚本,嵌套脚本的形式,很容易造成脚本不能运行;1. 保证cron脚本,中命令使用全路径; 2. 命令脚本中路径使用全路径;3. 在命令脚本,开始处输出信息到log文件用于测试; 如果log文件中有要输出的信息;说明cron脚本是正确的, 问题出在命令脚本,调试命令脚本; 否则, cron脚本有问原创 2014-02-28 22:27:47 · 5299 阅读 · 0 评论 -
sudo: no tty present and no askpass program specified
通过ssh host cmd ,在本机可以直接在远端服务器上执行命令并返回;但是如果 cmd 中有使用sudo的相关命令和脚本时,报错:sudo: no tty present and no askpass program specified 可以通过 ssh -t host cmd解决;原创 2014-02-25 22:01:29 · 7104 阅读 · 0 评论 -
shell 常用字符串操作
在做shell批处理程序时候,经常会涉及到字符串相关操作。有很多命令语句,如:awk,sed都可以做字符串各种操作。 其实shell内置一系列操作符号,可以达到类似效果,大家知道,使用内部操作符会省略启动外部程序等时间,因此速度会非常的快。 一、判断读取字符串值表达式含义${var}变量var的值, 与$var相同转载 2014-04-02 21:51:57 · 788 阅读 · 0 评论 -
shell 获取系统时间
获得当天的日期date +%Y-%m-%d输出: 2011-07-28 给我的变量赋值myDate=$(date +%Y%m%d) 将当前日期赋值给DATE变量DATE=$(date +%Y%m%d)有时候我们需要使用今天之前或者往后的日期,这时可以使用date的 -d参数 获取明天的日期date -d转载 2014-04-02 21:58:32 · 1523 阅读 · 0 评论 -
Shell中的正则表达式及字符串处理汇总:
Shell中的正则表达式及字符串处理汇总: shell里一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。 / 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 后向引用、或一个八进制转义符。例如,'n' 匹配字符 "n"转载 2014-04-02 21:29:01 · 2643 阅读 · 0 评论 -
shell十三问之2:shell prompt(PS1)与Carriage Return(CR)关系
shell十三问之2:shell prompt(PS1)与Carriage Return(CR)关系当你成功登陆一个shell终端的文字界面之后,大部分的情形下,你会在屏幕上看到一个不断闪烁的方块或者底线(视不同的版本而别),我们称之为游标(cursor).cursor作用就是告诉你接下来你从键盘输入的按键所插入的位置,且每输入一个键,cursor便向右移动一个格子,原创 2015-03-02 19:32:27 · 992 阅读 · 0 评论 -
shell十三问之7:()与{}差在哪?
shell十三问之7:()与{}差在哪?嗯,这次轻松一下,不讲太多... ^_^先说一下,为何要用()或者{}好了。许多时候,我们在shell操作上,需要在一定的条件下执行多个命令,也就是说,要么不执行,要么就全执行,而不是每次依序的判断是否要执行下一个命令。或者,要从一些命令执行的先后次序中得到结果,如算术运算的2*(3+4)那样...原创 2015-03-02 20:20:49 · 738 阅读 · 0 评论 -
:w !sudo tee %
http://www.haw-haw.org/node/1501在使用Ubuntu时,有时编辑文件,可能没有权限,但是忘记sudo了,所以就想到是不是vi应该有编辑中提升权限的呀。搜索了一下,果然有:在vim中保存正在编辑的文件而不需要必要的权限。(Save a file you edited in vim without the needed permissi转载 2016-02-23 11:47:43 · 2855 阅读 · 0 评论