换行符 \n

echo -n 禁止换行

环境变量声明export

export PATH="$PATH:/home/user/bin"

获取字符串的长度

length=${#var}

shell数学运算

let [] (()) expr

注:使用let时,变量名之前不需要$

标准输入stdin--0

标准输出stdout--1

标准错误stderr--2

读取命令返回值$? #错误并退回为非0,成功完成为0

重定向

cmd 2>stderr.txt 1>stdout.txt     #分别重定向到不同文件
cmd 2>&1 alloutput.txt #1、2输出到同一文件
cmd &> output.txt #1、2输出到同一文件

/dev/null 黑洞,丢弃接收到的任何数据

cat<<EOF>log.txt
添加的内容 #新增至文件log.txt顶部
EOF

别名alias(默认临时,关闭终端则失效)

alias rm="cp $@ ~/backup && rm $@"    #创建别名
echo ''alias cmd="command seq"' >> ~/.bashrc #创建永久的
unalias / alias cmd= #取消别名

time CommandOrScriptName #计算命令花费时间

sleep 30 #延迟脚本执行30s

bash -x script.sh #使用x,启用脚本跟踪调试功能

_DEBUG=on ./script.sh #调用bash内置函数,启用调试功能

$@以列表的方式一次性打印所有参数,"$1" "$2" "$3"

$*所有参数视为单个实体, "$1$2$3"

read -p "input the num:" num        #两种方式一致
echo -n "input the num:"
read num
read -t 10 -p "input the num:" num #计时10s输入
read -s -p "input the num:" num #默读,输出不显示

shell脚本攻略1的更多相关文章

  1. Linux Shell脚本攻略 读书笔记

    Linux Shell脚本攻略 读书笔记 这是一本小书,总共253页,但内容却很丰富,书中的示例小巧而实用,对我这样总是在shell门前徘徊的人来说真是如获至宝:最有价值的当属文本处理,对这块我单独整 ...

  2. Linux shell 脚本攻略之统计文件的行数、单词数和字符数

    摘自:<Linux shell 脚本攻略>

  3. Linux shell 脚本攻略之创建不可修改文件

    摘自:<Linux shell 脚本攻略>

  4. Linux shell 脚本攻略之生成任意大小的文件

    摘自:<Linux shell 脚本攻略>

  5. Linux shell 脚本攻略之批量重命名

    摘自:<Linux shell 脚本攻略>

  6. Linux shell 脚本攻略之文件查找与文件列表

    摘自:<Linux shell 脚本攻略>

  7. Linux shell 脚本攻略之比较与测试

    摘自:<Linux shell 脚本攻略>Page30-33

  8. Linux shell 脚本攻略之根据扩展名切分文件名

    摘自:<Linux shell 脚本攻略>Page61-62  

  9. Linux shell 脚本攻略之正则表达式入门

    摘自:<Linux shell 脚本攻略> 下面是类似的解释:

  10. Linux Shell脚本攻略

    -Linux Shell脚本攻略 总结的来说,这本书很实践性和实用性强,都是给的具体的例子,直接可以在终端操作实践,比单纯只看不动手务实多了,另外就是,这本书涵盖的内容也比较广,从文本操作到服务器管理 ...

随机推荐

  1. spring boot 启动遇到报错:Failed to configure a DataSource

    spring  boot 启动遇到报错,具体如下 Description: Failed to configure a DataSource: 'url' attribute is not speci ...

  2. CentOS设置时区

    1.使用date命令查看当前时间 2.已软连接的方式设置时区 ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

  3. spark中的多目录输出及压缩

    最近接到一个需求,需要对spark的结果分目录输出,百度之后找到了解决方案,大多都是spark 按照key分目录输出, 但是在文件当中,会把key也输出出来,在这里以key作为目录是想建hive表时把 ...

  4. jquery的Layer弹出框操作

    在layer中,我们要先获取窗口的索引,然后再进行操作. var index = parent.layer.getFrameIndex(window.name); //获取窗口索引 $("# ...

  5. [记录]UserControl 的一个值得注意的问题 [属性" * "的代码生成失败.错误是:"程序集"*.Version=1.0.0.0,Culture=neutral,..........无标记为序列化"

    开发时在做UserControl,需要注意的List<>集合问题~~~! 其他类型的集合可能也存在这样的问题,但是我没去测试,在写集合的时候一般List<>用的多点,所以经常碰 ...

  6. 转载:Linux命令行快捷键

    常用 Ctrl + 左右键:在单词之间跳转 Ctrl + A:跳到本行的行首 Ctrl + E:跳到页尾 Ctrl + U:删除当前光标前面的所有文字(还有剪切功能) Ctrl + K:删除当前光标后 ...

  7. Effective.Java第34-44条(枚举)

    34.  使用枚举类型替代整型常量 常量的语义表达不清晰,只能靠前面的名称来区分.枚举具有可读性.更安全.更强大等优势.而且枚举类型对象之间的值比较可以使用==来比较值是否相等的,不是必须使用equa ...

  8. asp.net core 日志记录到elk

    关于ELK的安装大家可以参考ubuntu18 docker中部署ELK 和 caas/docker-elk , 首先需要在ELK中创建一个index patterns ​ 首先我们创建一个aspnet ...

  9. 深入理解 Linux Cgroup 系列(一):基本概念

    原文链接:深入理解 Linux Cgroup 系列(一):基本概念 Cgroup 是 Linux kernel 的一项功能:它是在一个系统中运行的层级制进程组,你可对其进行资源分配(如 CPU 时间. ...

  10. - Java中boolean类型占用多少个字节 MD

    目录 目录 Java中boolean类型占用多少个字节 1个bit(1位) 1个Byte(1字节,8位) 4个Byte(4字节,32位) 分析 官方文档中的描述 Markdown版本笔记 我的GitH ...