学习 shell —— 编写基本脚本
set:查看环境变量;
0. 简单说明
一般而言,shell 会通过 PATH 变量来查找命令,如果要执行用户编写的脚本(未添加进 PATH 路径),还需两步操作:
- 需要
$ ./xx - 为需执行该脚本的用户增加执行权限:
chmod u+x xx(chmod o+x xx)
1. 基本用法
- echo 使用
-n参数:将通过echo输出的文本字符串和后续的命令执行输出不换行: - 环境变量,在环境变量前加
$来使用这些环境变量(echo $USER/$UID/$HOME) - 用户变量,shell 脚本会自动决定变量值的数据类型,在脚本的整个生命周期内,shell 脚本中定义的变量会一直保持着它的值,但在 shell 脚本结束时会被删除掉,与环境变量相似,用户变量也是通过美元符引用
2. 交互式脚本(read:读取键盘输入)
使用 read 命令读取来自键盘输入的变量。该变量常用于 shell script 的编写当中,用于和用户交互。
$ read [-pt] variable
-p(prompt):后面可以跟提示符;
-t:后面可以接等待的秒数,而不会无休止地等待用户输入
范例1:读取用户输入到指定变量名
$ read variablename
hello_world!
$ echo $variablename
hello_world!
范例2:提示用户 15 秒内输入名字,并存入名为 name 的变量中
$ read -p "input your name: " -t 30 name
Zhang
$ echo $name
Zhang
3. 批量修改文件名:统一添加后缀
#!/bin/bash
tail=$1
for filename in `ls`
do
mv $filename ${filename}.$tail
done
4. 命令执行时间统计
#!/bin/bash
start=$(date +%s)
commands;
statements;
end=$(date +%s)
duration=$(( end-start ))
echo Time taken to exec is $duration seconds.
学习 shell —— 编写基本脚本的更多相关文章
- [原创]Scala学习:编写Scala脚本
scala支持脚本 1)在/opt/scala-script下创建一个文件hello.scala 编辑内容如下: $ hello ,this is the first scala script 2)运 ...
- shell编写启动脚本
[root@confluence bin]# vim /etc/init.d/confluence #!/bin/bash # Confluence Linux service controller ...
- 30分钟快速学习Shell脚本编程
什么是Shell脚本 示例 看个例子吧: #!/bin/sh cd ~ mkdir shell_tut cd shell_tut for ((i=0; i<10; i++)); do touch ...
- 一起来学习Shell脚本
Shell脚本 Shell脚本(shell script),是一种为shell编写的脚本程序. 大家所说的shell通常都是指的shell脚本,但其实shell与shell脚本是两个不同的概念.由于习 ...
- 菜鸟教程之学习Shell script笔记(上)
菜鸟教程之学习Shell script笔记 以下内容是,学习菜鸟shell教程整理的笔记 菜鸟教程之shell教程:http://www.runoob.com/linux/linux-shell.ht ...
- 鸟哥的Linux私房菜-第10/11/12/13章(vim程序编辑器、学习bash、正则表达式与文件格式化处理、学习Shell Scripts)
第10章 vim程序编辑器 可以将vim看做vi的进阶版本,vim可以用颜色或底线等方式来显示出一些特殊的信息. 为何要学习vim?因为: a. 所有的 Unix Like 系统都会内建 vi 文书编 ...
- 从入门到掌握 - 系统学习shell语言
简介 什么是 shell Shell是一种程序或命令行解释程序,用于解释用户直接输入的用户命令或从文件中读取的用户命令,然后将 它们传递给操作系统以进行操作或处理.要注意,这个过程是解释而不编译脚本, ...
- -Shell 教程 Bash 脚本 基础语法 MD
目录 目录 Shell 简介 Shell 脚本 Shell 环境 第一个shell脚本 Shell 变量 定义变量 使用变量 只读变量 删除变量 Shell 字符串 单引号 双引号 字符串基本操作 S ...
- 学习Shell脚本编程(第2期)_编写修改权限及执行Shell程序的步骤
编写Shell程序 执行Shell程序 Shell程序有很多类似C语言和其他程序设计语言的特征,但是又没有程序语言那样复杂.Shell程序是指放在一个文件中的一系列Linux命令和实用程序.在执行的时 ...
随机推荐
- Linux下重启mysql数据库的方法
原文地址:Linux下重启mysql数据库的方法作者:于士博的视频教程 方法一: 命令: [root@localhost /]# /etc/init.d/mysql start|stop|rest ...
- window安装特定补丁(勒索病毒)
最近出现震惊的蠕虫病毒(勒索病毒),微软也做出相应的安全补丁来修复 MS17-010.这时有些同学不想打开电脑 的自动更新,这样会下载大量补丁,要更新完这些补丁要好几个小时,为了不影响正常工作,我们就 ...
- 大O时间复杂度
大O表示法指出了在最糟情况下的运行时间.比较操作数,指出了算法运行时间的增速 常见的大O运行时间 O(logn):也叫对数时间,包括二分查找 O(n):也叫线性时间,包括简单查找 O(nlogn):包 ...
- 紫书 习题8-9 UVa 1613 (dfs染色+图的性质)
这道题一开始我没想什么直接开始染, 但是是for循环一个节点一个节点染, 然后就WA 后了看了https://www.cnblogs.com/jerryRey/p/4702323.html 发现原来还 ...
- C语言修改文件某部分内容
两种方法 1.全部读入内存 修改后重新存入文件 2.边读边写到另一新建文件 要修改的部分修改后存入新建文件 其他部分原封不动写入 写完删掉原先文件 将这个新的改为删掉那个的名字 方法一 读入内存修改 ...
- mayan 游戏 search
纯搜索,,,模拟,,还不算太难,,就是细节略繁琐 首先因为题目要求保证字典序,所以显然把右边的块换到左边不如把左边的块换到右边优, 所以可以进行不小规模的剪枝,之后显然交换两块相同的色块没有意义,至此 ...
- JAVA学习第四十六课 — 其它对象API(二)Date类 & Calendar类(重点掌握)
Date类(重点) 开发时,会时常遇见时间显示的情况,所以必须熟练Date的应用 <span style="font-family:KaiTi_GB2312;font-size:18p ...
- Session、Cookie总结
什么是sessnion,session存在哪,能存多久.怎么设置他的存储时间 一.什么是session 1.session 被翻译为会话.当client(一般都是浏览器作为client)訪问serve ...
- phpcms v9会员推荐位
模版显示推荐会员代码 <div class="zhanxun2"> <div class="title"> ...
- C# - Thread.Join()
Blocks the calling thread until a thread terminates, while continuing to perform standard COM and Se ...