这个脚本的作用就是将输入的日期进行格式化输出即可。
1.匹配汉字的话,简单可以使用下面的方法:
例如有一个文件sun,里面内容如下,
樊fan
map
8+89*(*(_))我是
importang8729
现在我要找出所有含有汉字的行,处理如下:
[goodryb@152 scripts]$ grep [^\u4E00-\u9FA5] sun
樊fan
8+89*(*(_))我是
[goodryb@152 scripts]$
其中,\un表示匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。例如,\u00A9匹配版权符号(©),具体可以参考:http://zh.wikipedia.org/wiki/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F
2.$$变量表示当前进程的ID
3.关于函数变量的作用域。
在shell函数中定义的变量默认的是global滴,它的作用域是从函数调用时被定义开始,到shell结束为止,或者显示删除为止。但是shell function的参数变量是local的。
具体的可以参考:http://blog.csdn.net/ltx19860420/article/details/5570902
或者参考:http://leeon.me/a/linux-shell-variable-scope
4.有关tr命令的学习。
tr命令主要用于删除文件中的控制字符,或者进行字符转换。
语法:tr [–c/d/s/t] [SET1] [SET2]
SET1: 字符集1
SET2:字符集2
-c:complement,用SET2替换SET1中没有包含的字符
-d:delete,删除SET1中所有的字符,不转换
-s: squeeze-repeats,压缩SET1中重复的字符
-t: truncate-set1,将SET1用SET2转换,一般缺省为-t
具体可以参考:http://www.2cto.com/os/201109/104590.html
5.如果我们要在在命令行输入"\"字符时,需要这么来输入"\\",这是一个小细节。
6.使用set命令来设置位置参数。
set arguments
在脚本中使用的时候,是这样的set -- arguments,其中的"--"可能是说参数为空吧。
阅读(732) | 评论(0) | 转发(0) |
<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
- #!/bin/bash
- monthnoToName()
- {
- case $1 in
- 1 ) month="Jan" ;;
- 2 ) month="Feb" ;;
- 3 ) month="Mar" ;;
- 4 ) month="Apr" ;;
- 5 ) month="May" ;;
- 6 ) month="Jun" ;;
- 7 ) month="Jul" ;;
- 8 ) month="Aug" ;;
- 9 ) month="Sep" ;;
- 10 ) month="Oct" ;;
- 11 ) month="Nov" ;;
- 12 ) month="Dec" ;;
- * ) echo "$0:Unknown numberic month value $1" >&2; exit 1
- esac
- return 0
- }
- if [ $# -eq 1 ] ; then
- set -- $(echo $1 | sed 's/[\\\/\-]/ /g')
- fi
-
- if [ $# -ne 3 ] ; then
- echo "Usage: $0 month day year" >&2
- echo "Typical input formats are August 3 1962 and 8 3 2002" >&2
- exit 1
- fi
-
- if [ $3 -lt 1000 ] ; then
- echo "$0: expected four-digit year value" >&2
- exit 1
- fi
-
- if [ -z $(echo $1 | sed 's/[[:digit:]]//g') ] ; then
- monthnoToName $1
- else
- a=${1%${1#?}}
- month="$(echo $a | tr '[:lower:]' '[:upper:]')"
- # another way to realize this
- # month="$(echo $1 | cut -c1 | tr '[:lower:]' '[:upper:]')"
- month="$month$(echo $1 | cut -c2-3 | tr '[:upper:]' '[:lower:]')"
- fi
-
- echo $month $2 $3
- exit 0
1.匹配汉字的话,简单可以使用下面的方法:
例如有一个文件sun,里面内容如下,
樊fan
map
8+89*(*(_))我是
importang8729
现在我要找出所有含有汉字的行,处理如下:
[goodryb@152 scripts]$ grep [^\u4E00-\u9FA5] sun
樊fan
8+89*(*(_))我是
[goodryb@152 scripts]$
其中,\un表示匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。例如,\u00A9匹配版权符号(©),具体可以参考:http://zh.wikipedia.org/wiki/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F
2.$$变量表示当前进程的ID
3.关于函数变量的作用域。
在shell函数中定义的变量默认的是global滴,它的作用域是从函数调用时被定义开始,到shell结束为止,或者显示删除为止。但是shell function的参数变量是local的。
具体的可以参考:http://blog.csdn.net/ltx19860420/article/details/5570902
或者参考:http://leeon.me/a/linux-shell-variable-scope
4.有关tr命令的学习。
tr命令主要用于删除文件中的控制字符,或者进行字符转换。
语法:tr [–c/d/s/t] [SET1] [SET2]
SET1: 字符集1
SET2:字符集2
-c:complement,用SET2替换SET1中没有包含的字符
-d:delete,删除SET1中所有的字符,不转换
-s: squeeze-repeats,压缩SET1中重复的字符
-t: truncate-set1,将SET1用SET2转换,一般缺省为-t
具体可以参考:http://www.2cto.com/os/201109/104590.html
5.如果我们要在在命令行输入"\"字符时,需要这么来输入"\\",这是一个小细节。
6.使用set命令来设置位置参数。
set arguments
在脚本中使用的时候,是这样的set -- arguments,其中的"--"可能是说参数为空吧。
相关热门文章
给主人留下些什么吧!~~
评论热议