ShellStepbyStep(4)Cron&Echo

本文发布时间: 2019-Mar-22
6.脚本定时任务# Example of job definition:# .------------------------- minute (0 - 59)# | .--------------------- hour (0 - 23)# | | .----------------- day of month (1 - 31)# | | | .------------- month (1 - 12) # | | | | .--------- day of week (0 - 6) # | | | | |# * * * * * user-name command to be executed7.查看当前用户的UIDroot@kallen:/usr/data/kallendb_backup# ps -ef | grep UID UID PID PPID C STIME TTY TIME CMD root 2872 2384 0 09:43 pts/2 00:00:00 grep --color=auto UID8.用Shell模拟一个进度条 #! /bin/bash # # Progress Bar # Print # to view the process bar # create variable b='' # for loop for ((i=0;$i<=100;i+=2)) do printf "Progress:[%-50s]%d%%\r" $b $i sleep 0.1 b=#$b done echo 在Shell脚本的编写应用中,有时候会需要用到图形界面的案例,比如默认cp拷贝文件为静默模式,无法看到拷贝的进度与百分比。而dialog正是为Shell提供图形界面的工具,该工具可以为Shell脚本提供各式各样的图形界面,今天为大家介绍的是dialog提供的进度条图形功能。 dialog指令可以单独执行,格式为 dialog --title "Copy" --gauge "files" 6 70 10 备注: title表示图形进度条的标题, gauge为正文内容,进度条高度为6,宽度70,显示进度为10%for i in {1..100} ; do sleep 1; echo $i | dialog --title 'Copy' --gauge 'I am busy!' 10 70 0; done下面案例中通过统计源文件个数,再据此计算出拷贝文件的百分比,在Shell中提供进度的显示。该脚本有两个参数,第一个参数为源文件路径,第二个参数为目标路径。如果您的应用案例不同可以据此稍作修改即可使用。#!/bin/bash # Description: A shell script to copy parameter1 to # parameter2 and Display a progress bar # Author:Jacob # Version:0.1 beta # Read the parameter for copy,$1 is source dir # and $2 is destination dir. dir=$1/* des=$2 # Test the destination dirctory whether exists [ -d $des ] && echo "Dir Exist" && exit 1 # Create the destination dirctory mkdir $des # Set counter, it will auto increase to the number of # source file. i=0 # Count the number of source file n=`echo $1/* |wc -w` for file in `echo $dir` do # Calculate progress percent=$((100*(++i)/n)) cat <<EOF XXX $percent Copying file $file ... XXX EOF /bin/cp -r $file $des &>/dev/nulldone | dialog --title "Copy" --gauge "files" 6 70 clear效果如图: 9.Echo输出功能说明: 显示文字 语 法: echo [ -ne ] [ 字符串 ] 或 echo [ --help ] [--version ] 参数:-n 不要在最后自动换行-e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出; \b 删除前一个字符; \f 换行但光标仍旧停留在原来的位置; \r 光标移至行首,但不换行; \t 插入tab; \v 与\f相同; \nnn 插入nnn(八进制)所代表的ASCII字符;--help 显示帮助--version 显示版本信息


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:09pm
栏目列表