1、sh -x 跟踪shell脚本中的每个命令

[root@master shellexer]# cat bash.sh
#!/bin/bash
var=$
echo $var
[root@master shellexer]# sh -x bash.sh hello
+ var=hello
+ echo hello
hello #脚本输出结果
#带+的表示被跟踪的代码

https://blog.csdn.net/qq_15547319/article/details/70538091

2、basename 从完整/不完整的路径名中获取文件名

https://blog.csdn.net/flyfrommath/article/details/61933861

3、hadoop——streaming job failed错误,streaming命令出错,看一下streaming命令中定义的那些文件夹是否都存在,可能是缺某个文件夹

4、shell中[-eq] [-ne] [-gt] [-lt] [ge] [le]命令

-eq           //等于

-ne           //不等于

-gt            //大于 (greater )

-lt            //小于  (less)

-ge            //大于等于

-le            //小于等于

命令的逻辑关系:

在linux 中 命令执行状态:0 为真,其他为假

逻辑与: &&
第一个条件为假时,第二条件不用再判断,最终结果已经有;
第一个条件为真时,第二条件必须得判断;
逻辑或: ||
逻辑非: !

https://www.cnblogs.com/jxhd1/p/6274854.html

5、$XXXX的意思

$0 这个程式的执行名字
$n 这个程式的第n个参数值,n=1..9
$* 这个程式的所有参数,此选项参数可超过9个。
$# 这个程式的参数个数
$$ 这个程式的PID(脚本运行的当前进程ID号)
$! 执行上一个背景指令的PID(后台运行的最后一个进程的进程ID号)
$? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)
$- 显示shell使用的当前选项,与set命令功能相同
$@ 跟$*类似,但是可以当作数组用

https://zhidao.baidu.com/question/262951766.html

6、-d命令

判断表达式:[ -d temp ]

判断temp是否为文件夹

https://zhidao.baidu.com/question/321750604.html

7、判断表达式

if [ 3 -eq 3 ] ; then echo hello ; fi

https://zhidao.baidu.com/question/322131711.html

https://blog.csdn.net/zgf19930504/article/details/51911732

8、if  then  elif  else  fi条件语句

https://www.cnblogs.com/linux-super-meng/p/3763255.html

https://blog.csdn.net/ljchlx/article/details/18263397

9、hadoop shell命令

-copyfromlocal 上传文件

-rmr 删除文件

stream 指定参数

http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_shell.html

http://dongxicheng.org/mapreduce/hadoop-streaming-programming/

9、awk命令

http://www.runoob.com/linux/linux-comm-awk.html

10、sed命令

http://www.runoob.com/linux/linux-comm-sed.html

11、sed+shell正则

http://wiki.jikexueyuan.com/project/unix/regular-expressions.html

12、解决swap file already exists问题

ls -a查看一下,将同一目录下隐藏的 *.swp 文件删除即可

shell脚本杂的更多相关文章

  1. 《shell脚本学习指南》学习笔记之入门

    为什么要使用shell脚本? shell脚本能够轻易处理文件与目录之类的对象,而且是各UNIX系统之间经过POSIX标准化的通用的功能,因此Shell脚本只要“用心写”一次,即可应用到很多系统上,因此 ...

  2. 编写Shell脚本的最佳实践

    编写Shell脚本的最佳实践 http://kb.cnblogs.com/page/574767/ 需要记住的 代码有注释 #!/bin/bash # Written by steven # Name ...

  3. Shell脚本开发规范

    一.前言 由于工作需要,最近重新开始拾掇shell脚本.虽然绝大部分命令自己平时也经常使用,但是在写成脚本的时候总觉得写的很难看.而且当我在看其他人写的脚本的时候,总觉得难以阅读.毕竟shell脚本这 ...

  4. 编写Shell脚本的最佳实践,规范二

    需要养成的习惯如下: 代码有注释 #!/bin/bash # Written by steven # Name: mysqldump.sh # Version: v1.0 # Parameters : ...

  5. 编写 Shell 脚本的最佳实践

    转自:http://kb.cnblogs.com/page/574767/ 前言 由于工作需要,最近重新开始拾掇shell脚本.虽然绝大部分命令自己平时也经常使用,但是在写成脚本的时候总觉得写的很难看 ...

  6. Shell脚本书写规范

    在日常的运维工作中,Shell脚本肯定是必不可少的工作内容.为方便问题排查.脚本执行历史问题追踪.方便大家共同维护,从网上搜罗结合以往的经验教训拟定以下Bash脚本书写规范.欢迎各位同学指正或补充. ...

  7. Shell 脚本编程最佳实践

    前言 由于工作需要,最近重新开始拾掇shell脚本.虽然绝大部分命令自己平时也经常使用,但是在写成脚本的时候总觉得写的很难看.而且当我在看其他人写的脚本的时候,总觉得难以阅读.毕竟shell脚本这个东 ...

  8. Shell 脚本实践指南

    代码风格规范 开头有"蛇棒" 所谓shebang其实就是在很多脚本的第一行出现的以#!开头的注释,他指明了当我们没有指定解释器的时候默认的解释器,一般可能是下面这样: #!/bin ...

  9. 第一个shell脚本

    打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好. #!/bin/bash echo "Hello World !" &quo ...

随机推荐

  1. 140726暑期培训.txt

    1.   输入多组数据的时候       while(scanf("%s",s)!=EOF)       while(gets(s)!=NULL)     用gets和scanf不 ...

  2. JSON 常用数据转换

    #endregion #region Json字符串转换为DataTable 实例方法 public DataTable JsonToDataTable(json) { DataTable dt= T ...

  3. linux重命名session和window

    重命名 window title 最近想要给screen session中的每一个 窗口命名一个标识名字,而不是默认的 $ bash 相关命令: ctrl+z(我的screen配置的+z,默认是+a) ...

  4. hihoCoder #1320 : 压缩字符串 区间dp

    /** 题目:hihoCoder #1320 : 压缩字符串 链接:https://hihocoder.com/problemset/problem/1320 描述 小Hi希望压缩一个只包含大写字母' ...

  5. vhost in nodejs

    关于vhost 个人理解为vhost是一种可以在一个ip下同时部署多个不同域名站点的的概念. 其好处就是对一些小型的网站不必每个网站都占用一个ip,或者说一个服务,举个例子,vhost的概念就相当于打 ...

  6. 修改linux系统的时间EDT为CST

    今早看到一台机器时间对不上,本以为系统时间与网络北京时间不同步,就在终端命令执行网络时间同步 [root@localhost ~]# ntpdate time.windows.com 执行完之后,在执 ...

  7. 【转】【CTO俱乐部走进支付宝】探索支付宝背后的那些技术 部分

    怎么避免研发环节当中引入漏洞?“我们有一套比较成熟的安全研发开发框架.首先我们用统一的框架,框架本身是经过我们安全工程师去做过非常好的认证的,同时在研发过程当中我们对这些问题也有些规范.一旦发现风险我 ...

  8. C++ STL标准模板库(vector)

    //vector的使用 #define _CRT_SECURE_NO_WARNINGS #include<iostream> #include<vector> using na ...

  9. 卡友友刷MPOS注册开通流程!

    1.下载友刷APP:打开微信扫描机器背面二维码—点击右上角游览器打开 2. 注册-身份证认证-结算卡绑定:用本人手机号注册完成后,顺着进行身份认证.以及储蓄结算卡绑定.具体看下图: 3.绑定机器:选择 ...

  10. kvm和qemu的关系

    KVM (Kernel Virtual Machine) is a Linux kernel module that allows a user space program to utilize th ...