
shell技巧
claytonzly
这个作者很懒,什么都没留下…
展开
-
bash中使两条指令同时运行
在bash shell使两个任务同时运行 (hadoop jar /home/xcp/hadoop-1.0.0/hadoop-examples-1.0.0.jar sort input output)& pid1=$! #获取进程号 (sleep 15; hadoop job -list | grep job_ | awk '{print $1} | gre原创 2013-08-22 01:07:43 · 1757 阅读 · 0 评论 -
Bash技巧,持续更新
脚本中以root身份运行任务sudo su - -c ${COMMAND}原创 2014-02-17 13:06:50 · 893 阅读 · 0 评论 -
三个凡斜杆\\\
DIR=`file ~/project | tr -d "'"| cut -d "`" -f 2 | cut -d '/' -f -5`不可以运行改成 DIR=`file ~/project | tr -d "'"| cut -d \\\` -f 2 | cut -d '/' -f -5`原因待解释原创 2013-12-24 14:33:39 · 958 阅读 · 0 评论 -
bash脚本中切换目录
在目录中使用cd运行时使用source或者 . 运行脚本原创 2013-12-24 11:44:31 · 2633 阅读 · 0 评论 -
获取符号链接的绝对路径
Bash中获取符号链接文件的绝对路径readlink -f ~/project原创 2013-12-24 11:29:18 · 6263 阅读 · 0 评论 -
vim常用技巧总结
1.文件浏览:Ex : 开启目录浏览器,注意首字母E是大写的:Sex : 在一个分割的窗口中开启目录浏览器:ls : 显示当前buffer的情况:cd .. :原创 2013-08-22 23:25:35 · 1457 阅读 · 0 评论 -
bash 括号(小括号,双小括号,中括号,双中括号,大括号)
小括号()和大括号{}主要包括一下几种${var} $(cmd) ()和{} $((exp)) ${var:-string},${var:+string},${var:=string},${var:?string} $(var%pattern),$(var%%pattern),$(var#pattern),$(var##pattern)1.shell变量应用原型 ${var转载 2013-08-24 16:26:38 · 19762 阅读 · 0 评论 -
expect基本用法
1. [#!/usr/bin/expect] 这一行告诉操作系统脚本里的代码使用那一个shell来执行。这里的expect其实和linux下的bash、windows下的cmd是一类东西。 注意:这一行需要在脚本的第一行。 2. [set timeout 30] 基本上认识英文的都知道这是设置超时时间的,现在你只要记住他的计时单位是:秒 。timeout -1 为永转载 2013-08-24 21:35:52 · 2234 阅读 · 0 评论 -
ssh无密码登录
1. ssh-keygen 生成公钥,放到目标机器的.ssh/authorized_keys中(注意,使用>>添加而非>)2.使用expect,可用于需要用户交互的自动化问题(需要安装expect)编写 autoLogin.sh脚本,内容如下:#!/usr/bin/expect -f#auto ssh loginset timeout 30set sshhost [l原创 2013-08-22 12:06:01 · 862 阅读 · 0 评论 -
在脚本中取得脚本路径
一种是看 $0, 考虑到$0可能是相对路径, 我们可以先cd进$0所在的目录再pwd一次, 代码如下:get_workdir_1(){ local d=$( cd `dirname "$0"` && pwd ) echo "$d"} 另一种是看proc信息,/proc/$$/fd/255这个特殊的fd,是个链接,在脚本执行转载 2014-02-17 09:48:11 · 1233 阅读 · 0 评论