Shell脚本例子集合
# vi xx.sh
退出并保存
# chmod +x xx.sh
# ./xx.sh
-2.
调试脚本的方法
# bash -x xx.sh
就可以调试了
.
-1.
配置
secureCRT
的设置
(
我用的是
6.2.3 build313
版本
,
汉化版
)
选项
->
会话选项
(S)...->
终端
->
仿真
->
终端
(T)->
把
VT100
改成
Xterm->
点中
ANSI
颜色
(A)
和使用颜色方案
(U)
复选框
.
这样就有颜色显示了
.
选项
->
会话选项
(S)...->
终端
->
外观
->
字符编码
(H)->
从
Default
变到
UTF-8.
这样就有中文显示了
.
1.
写一个脚本
,
执行后
,
打印一行提示
"Please input a
number:",
要求用户输入数值
,
然后打印出该数值
,
然后再次要求用户输入数值
.
直到用户输入
"end"
停止
.
# vi show_var.sh
脚本内容
:
#!/bin/bash
unset var
while [ "$var" != "end" ]
do
echo -n "please input a number: "
read var
if [ "$var" = "end" ]
then
break
fi
echo "var is $var"
done
命令保存后退出
,
并执行
:
# chmod +x show_var.sh
# ./show_var.sh
please input a number: 1
var is 1
please input a number: s
var is s
please input a number: end
#
2.
写一个脚本
,
测试位置参数
# vi param.sh
脚本内容
:
#!/bin/bash
#test shell
echo $0
echo $1
echo $2
echo $?
echo $*
echo $#
命令保存后退出
,
并执行
:
# chmod +x param.sh
# ./param.sh yema Bhanv edu network
./param.sh //
程序名称
Yema //
第一个参数
Bhanv //
第二个参数
0 //
程序执行结果
yema Bhanv edu network //
传递参数所组成的字符串
4 //
参数个数
3.
写一个脚本
,
可以根据参数文件名
,
以正确的参数调用
tar
来解压缩
tar.gz
或
tar.bz2
文件
.
# vi tar_gz_bz2.sh
脚本内容
:
#!/bin/sh
case ${1##*.tar.} in
bz2)
tar jxvf $1
;;
gz)
tar zxvf $1
;;
*)
echo "wrong file type"
esac
命令保存后退出
,
并执行
:
# chmod +x tar_gz_bz2.sh
# ./tar_gz_bz2.sh
# touch "helloA" > a.txt //
写一个测试用的文件
# tar czvf a.tar.gz a.txt //
把
a.txt
压缩成
tar.gz
文件
# rm -rf a.txt //
删除
a.txt
来测试脚本
# ls a.*
a.tar.gz
# ./tar_gz_bz2.sh a.tar.gz
# ls a.*
a.tar.gz a.txt //
验证了正确性
# touch "helloB" > b.txt //
写一个测试用的文件
# tar cjvf b.tar.bz2 b.txt //
把
b.txt
压缩成
tar.bz2
文件
# rm -rf b.txt //
删除
b.txt
来测试脚本
# ls b.*
b.tar.bz2
# ./tar_gz_bz2.sh b.tar.bz2
# ls b.*
b.tar.bz2 b.txt //
验证了正确性
# rm -rf a.txt a.tar.gz //
删除测试用的文件
# rm -rf b.txt b.tar.bz2 //
删除测试用的文件
4.
小棍子显示
# vi showstick.sh
#!/bin/bash
i=0
while [ $i -lt 10 ]
do
for j in '-' '\\' '|' '/'
do
echo -ne "\033[1D$j"
usleep 50000
done
((i++))
done
保存
# chmod +x showstick.sh
# ./showstick.sh
看效果
.
5.
显示类似
wget
的进度
# vi showwget.sh
Shell脚本例子集合的更多相关文章
- Linux Shell 高级编程技巧4----几个常用的shell脚本例子
4.几个常用的shell脚本例子 4.0.在写脚本(同样适用在编程的时候),最好写好完善的注释 4.1.kill_processes.sh(一个杀死进程的脚本) #!/bin/bash c ...
- Centos命令和Shell脚本问题集合
1.cat 错误写法 cat >> somefile.txt << EOF something EOF 原因:EOF 之后一定要是 ENTER(回车) 不能是空格或者其他.EO ...
- shell脚本例子集锦(习题总结)
练习一:写一个脚本 .设定变量FILE的值为/etc/passwd .依次向/etc/passwd中的每个用户问好,并且说出对方的ID是什么 形如:(提示:LINE=`wc -l /etc/passw ...
- shell脚本例子
#!/bin/sh str="####" echo $1 | grep $str 1>/dev/null if [ `echo $?` -eq 0 ] then ec ...
- Linux Shell编程第1章——Shell脚本编程概述
目录 Linux和Shell简介 Linux是一套可免费使用和自由传播的类UNIX操作系统.Shell是一种具备特殊功能的程序,它提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令,并把它送 ...
- Shell脚本之:for
与其他编程语言类似,Shell支持for循环. for循环一般格式为: for 变量 in 列表 do command1 command2 ... commandN done 列表是一组值(数字.字符 ...
- shell脚本中执行sql的例子
这个例子演示了如何在shell脚本中执行多个sql来操作数据库表. #! /bin/sh USER_HOME=/home/`whoami` . /etc/profile if [ -f ${USER_ ...
- shell脚本集合
慢慢学习,慢慢记吧 第一个shell脚本,创建用户,默认密码用户名,使得用户第一次登陆强制修改密码的脚本 #/bin/bash #创建用户,指定初始密码用户名,第一次登陆后强制修改用户名 userad ...
- java调用shell脚本,并获得结果集的例子
/** * 运行shell脚本 * @param shell 需要运行的shell脚本 */ public static void execShell(String shell){ try { Run ...
随机推荐
- Android Studio: /dev/kvm device permission denied
https://stackoverflow.com/questions/37300811/android-studio-dev-kvm-device-permission-denied To chec ...
- java设计模式 --------单利模式
解法一:只适合单线程环境(不好) package test; /** * @author xiaoping * */ public class Singleton { private static S ...
- 13 Timer和TimerTask
下面内容转载自:http://blog.csdn.net/xieyuooo/article/details/8607220 其实就Timer来讲就是一个调度器,而TimerTask呢只是一个实现了ru ...
- [转]Composite Keys With WebApi OData
本文转自:http://chris.eldredge.io/blog/2014/04/24/Composite-Keys/ In our basic configuration we told the ...
- JavaScript ES6 Symbol.hasInstance的理解。
Symbol.hasInstance 本案例是结合阮一峰老师的ECMAScript 6 入门丛书进一步的详细介绍,和对Symbol.hasInstance的理解.本着互联网的精神,分享给大家. 对象的 ...
- sql server数据库导出表里所有数据
主要步骤: 连接数据库>选择需要导出数据的数据库>任务>生成脚本 点击下一步,选择特定数据库对象>选择需要导出的数据表,下一步 选择高级>要编写脚本的数据的类型:仅限数据 ...
- jquery里prop和attr的区别
本文通过具体的实例来讲述jquery里prop和attr的区别及使用方法. 在jquery里,我们要获取一个标签元素的属性,可以用attr或者prop,那么两者有什么区别呢? 其实很简单: attr可 ...
- ASP.NET中让图片以二进制的形式存储在数据库中
今早有个网友问到我这问题,以前我都是直接在数据库中存文件名的,还没有试过存储整张图片到数据库中,上网搜索了一下,自己又测试了一番,代码如下:建立保存图片的表的SQL语句: USE [niunantes ...
- 以太坊-windows-私有链-搭建(非源码)
初 接触以太坊,只安装,不讲道理: 1.win10系统,64位 2.以太坊钱包 3.以太坊geth客户端 geth 和 钱包可以到ethfans.org的资料库里下载,那里提供国内镜像和官网地址. 钱 ...
- 基于easyUI实现经典系统主界面
此文章是基于 EasyUI+Knockout实现经典表单的查看.编辑 一. 相关文件介绍 1. home.jsp:系统主界面 <!DOCTYPE html PUBLIC "-//W3C ...