2015-11-17 litaotao
1. 基本概念 1.1 什么是 shell 业界所说的shell通常都是指shell脚本,但要知道,shell和shell script是两个不同的概念: Shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁, 这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。 Shell 也是一种命令语言和一种程序设计语言,Shell 脚本(shell script),是一种用shell编写的脚本程序。 继续阅读 »
2016-09-12 blademainer
这里收藏工作中用到的脚本,也为了防止做重复的搜索工作,同时分享给大家。 more 数组 初始化数组 shell name = (value1 value2 ... valuen) $ A=(a b c d) $ echo ${A[@]} # 输出所有元素 数组去重 shell $ array=($(awk -vRS=' ' '!a[$1]++' <<< ${array[@]})) 取得数组元素的个数 shell $ echo ${#A[@]} 取下标 shell $ echo ${A[1]} # 从1开始 清除元素 shell $ unset A $ echo ${A[@]} 循环取元素 shell $ fo 继续阅读 »
2014-01-09 Robin Wen
文/温国兵 Shell脚本存在的价值,就是让工作更高效。 反观整个人类社会的发展,不管是奴隶社会,还是工业时代,都会出现各种各样的工具。比如为了更快的砍伐一颗树,有了锯子和斧头;为了更快的出行,有了各式各样的代步工具。直到现在我们正处的科技时代,不管是IT技术,还是新式交互,都是避免重复性的工作。编程语言为什么会出现,归根结底就是满足人类的惰性。正因为有了编程语言,有了计算机,人类的发展才得以如此得迅猛,很难想象这个世界缺少计算机会成什么样。为了代替重复性的工作,脚本语言才得以长远发展,比如Shell脚本等等。 脚本语言最大的特点就是边解释边执行,无需编译和链接。这样带来的好处就是很灵活,但不好的地方就是每次运行脚本都会带来较 继续阅读 »
2014-09-16 summer
因为特定需求,需要在linux系统下面进行安装JDK,需要在linux中写成shell脚本,安装JDK并且设置环境变量。linux中JDK的安装比较简单,直接解压缩即可。但是接下来设置环境变量可是困难了本人不久,毕竟shell脚本没有接触过。 继续阅读 »
2014-01-04 blademainer
备份的原理 使用Linux的Cron程序定时执行该脚本从而达到备份和删除备份历史的目的。 主要参数 脚本主要需要设置参数有三个: - ORIGIN_FOLDER:要备份的目录,必须以\结尾 - DES_FOLDER:备份文件存储路径(可以是网络路径,前提是必须要有权限管理该路径下的文件夹) - DAYS_AGO:该参数表示要删除多少天之前的备份(比如今天是2012年12月31日,那么20121221的文件不会被删除,20121220或比之小的文件夹将会被删除) more 脚本 BackUpTask.shell ```bash !/bin/sh -------------------------------------- 继续阅读 »
2014-10-16 Lingxian Kong
变量引用 用set命令可以查看所有的变量 unset var命令可以清除变量var,var相当于没有定义过 readonly var可以把var变为只读变量,定义之后不能对var进行任何更改。 对shell变量的引用方式很多,用这些方式可以方便的获取shell变量的值,变量值的长度,变量的一个字串,变量被部分替换后的值等等。shell变量常见引用方式如下: 继续阅读 »
2015-01-08 Robin Wen
文/温国兵 最近遇到个问题,需要获取表的字符集。 下面做一个演示。 环境: Linux:RHEL 6.1 MySQL:5.1 首先创建测试库,测试表: ``` bash CREATE DATABASE TEST DEFAULT CHARACTER SET UTF8; USE test; CREATE TABLE t(id INT, name VARCHAR(20)) CHARSET UTF8; ``` 接着实现功能: 第一种方法: bash mysql -uroot -proot -Ne 'show create table test.t' | grep CHARSET | awk -F' ' '{print $ 继续阅读 »
2016-07-18 ruki
xmake在xmake.lua中提供了 $(varname) 的语法,来支持内置变量的获取,例如: lua add_cxflags("-I$(buildir)") 它将会在在实际编译的时候,将内置的 buildir 变量转换为实际的构建输出目录:-I./build 并且这些变量在自定义脚本中,也是可以支持的,例如: lua target("test") after_build(target) print("build ok for $(plat)!") end 这将会在编译完后,输出: lua build ok for macosx! 这些内置变量,大部分都是通过配置的时候,缓存的 继续阅读 »
2015-04-02 summer
HDFS中shell命令语法格式 HDFS 是Hadoop分布式文件系统,那么对HDFS的操作,就是文件系统的基本操作,比如文件的创建、修改、删除、修改权限等,文件夹的创建、删除、重命名等。对HDFS 的操作命令类似于lLinux 的shell 对文件的操作,如ls、mkdir、rm 等。 我们可以再已经安装HDFS文件系统的操作系统上使用‘hadoop fs’ 看到基本命令,如下图: 继续阅读 »
2016-07-05 LEo
由于工作原因,每天都会使用shell,难免会有很多重复性的命令操作,于是积累了一些shell别名和函数 ,特此分享,希望你能有所收获! 自动source环境变量 某些软件运行之前需要source环境变量,但是每次打开新终端都要去source环境变量太麻烦,所以我一般是将该软件所需的环境变量添加到~/.bashrc或者/etc/profile文件中,例如: 继续阅读 »