shell杂记
(本文将持续更新)从2015年9月25日开始正式学习linux类的东西。
书籍入门:UNIX.Shell编程24学时教程(中文版)、Linux与UNIX Shell编程指南、shell十三问、LINUX SHELL脚本攻略、Shell脚本专家指南。
对于变量替换来说,就有点让人总是搞混掉。当符合下面标准则进行替换,否则结果如同${parameter}主要有8个:
| 变量名称 | 语法 | 解释 | 例子 |
|---|---|---|---|
| :? | ${parameter:?var} | parameter为空或者未定义,则输出var到stderr,parameter值不更新 | |
| ? | ${parameter?var} | parameter未定义,则输出var到stderr,parameter值不更新 | |
| :- | ${parameter:-var} | parameter为空或者未定义,则整个语句取值var,parameter值不更新 | |
| - | ${parameter-var} | parameter未定义,则整个语句取值var,parameter值不更新 | |
| := | ${parameter:=var} | parameter为空或者未定义,则整个语句取值var,parameter值更新为var | |
| = | ${parameter=var} | parameter未定义,则整个语句取值var,parameter值更新为var | |
| :+ | ${parameter:+var} | parameter定义了且不为空,则整个语句取值var,parameter值不更新 | |
| + | ${parameter+var} | parameter定义了,则整个语句取值var,parameter值不更新 |
20160907:’nohup main &’ is not equal ‘nohup main&’;the second will not create the ‘nohup.out’ file in the current directory.
shell杂记的更多相关文章
- linux杂记(十一)Bash Shell的使用环境
Bash Shell使用环境 Bash Shell使用环境 1.登录讯息显示数据:/etc/issue,/etc/motd 我们在终端机接口(tty1~tty6)登入的时候,会有几行提示的字符串,那个 ...
- [Erlang 0118] Erlang 杂记 V
我在知乎回答问题不多,这个问题: "对你职业生涯帮助最大的习惯是什么?它是如何帮助你的?",我还是主动回答了一下. 做笔记 一开始笔记软件做的不好的时候就发邮件给自己, ...
- Android之开发杂记(一)
1.cygwin环境变量设置 可在Cygwin.bat 中设置 set NDK_ROOT=P:/android/android-ndk-r8e 或者在home\Administrator\.bash_ ...
- shell脚本小案例
1.获取远程ftp数据到本地目录 #!/bin/bash ftp -n<<! open 135.0.24.19 user exchange exchange binary cd /idep ...
- Shell替换
如果表达式中包含特殊字符,Shell 将会进行替换.例如,在双引号中使用变量就是一种替换,转义字符也是一种替换. #!/bin/bash a= echo -e "Value of a is ...
- Shell特殊变量
$ 表示当前Shell进程的ID,即pid $echo $$ 运行结果 特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数.n 是一个数字,表示第几个参数.例如,第一个参数 ...
- shell变量
定义变量 定义变量时,变量名不加美元符号($),如: variableName="value" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样.同时,变量名 ...
- 第一个shell脚本
打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好. #!/bin/bash echo "Hello World !" &quo ...
- shell简介
Shell作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支. shell使用的熟练程度反映了用户对U ...
随机推荐
- python-享元模式
源码地址:https://github.com/weilanhanf/PythonDesignPatterns 说明: 如果一个软件系统在运行时所创建的相同或相似对象数量太多,将导致运行代价过高,带来 ...
- python-外观模式
源码地址:https://github.com/weilanhanf/PythonDesignPatterns 说明: 外观模式又叫做门面模式.在面向对象程序设计中,解耦是一种推崇的理念.但事实上由于 ...
- LeetCode题解之Find All Duplicates in an Array
1.题目描述 2.问题分析 将数组中的元素 A[i] 放到 A[ A[i] - 1] 的位置.然后遍历一边数组,如果不满足 A[i] == i+1,则将A[i]添加到 结果中. 3.代码 vector ...
- 如何把高版本的sqlserver 还原到低版本的 sqlserver(转载)
本例为sql2012 还原到sql2008. 要实现的功能是把sql2012的数据库备份到sql2008,数据库名字为Test,并且这两个数据库在不同的电脑中. 微软的软件设计方案基本上都是新版本兼容 ...
- Lorem 占位符
Web开发者通常用lorem ipsum text来做占位符,占位符就是占着位置的一些文字,没有实际意义. 为什么叫lorem ipsum text呢? 是因为lorem ipsum是古罗马西塞罗谚语 ...
- Python Socket传输文件
发送端可以不停的发送新文件,接收端可以不停的接收新文件. 例如:发送端输入:e:\visio.rar,接收端会默认保存为 e:\new_visio.rar,支持多并发,具体实现如下: 接收端: 方法一 ...
- [翻译] 提升树算法的介绍(Introduction to Boosted Trees)
[翻译] 提升树算法的介绍(Introduction to Boosted Trees) 1. 有监督学习的要素 XGBoost 适用于有监督学习问题.在此类问题中,我们使用多特征的训练数据集 \(x ...
- C++第六次作业
前言 拿到作业的时候,整个人都不好了,虽然之前和同学说以后一起写游戏,画界面,然而现在的自己对界面的知识一窍不通,虽然同学分享了一些资料,但是通过这次作业,发现自己火候还是不够-- 问题描述及仓库地址 ...
- 【Alpha 冲刺】 4/12
今日任务总结 人员 今日原定任务 完成情况 遇到问题 贡献值 胡武成 完成API文档编写 已完成 会遗漏一些部分的api,但是通过群里询问以及对页面的review解决 孙浩楷 根据UI设计, 实现左侧 ...
- mac层和llczi层
1.何为数据链路层的(DATA LINK LAYER)的MAC子层和LLC子层? MAC子层的主要功能包括数据帧的封装/卸装,帧的寻址和识别,帧的接收与发送,链路的管理,帧的差 错控制等.MAC子层的 ...