文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>鸟哥的私房菜Shell cript中的一个小问题

鸟哥的私房菜Shell cript中的一个小问题

时间:2011-06-08  来源:excellentbright

在鸟哥的第三部分学习shell script中有这样一个小例子sh03.sh

#!/bin/bash
#
2011/06/08 Yannis First Release

echo
"I will use 'touch' command to create files" #显示信息
read -p "Please input your filename : " fileuser #提示用户输入

#为了避免用户随意按下Ecter键,利用变量功能分析文件名是否有效
filename=${fileuser:-"filename"} #开始判断是否有配置文件

#开始利用date命令来取得所需要的文件名
date1=$(date --date '2 days ago' +%Y%m%d) #前两天的日期
date2=$(date --date '1 days ago' +%Y%m%d) #前一天的日期
date3=$(date +%Y%m%d) #今天的日期
file1=${filename}${date1}
file2
=${filename}${date2}
file3
=${filename}${date3}

#创建文件名
touch "$file1"
touch
"$file2"
touch
"$file3"

本人在unbuntu下运行,无法成功,显示请尝试date --help来获取更多信息

在查看date命令之后发现date命令的参数设置应该改为 date -d ‘2 days ago’ +%Y%m%d 要注意参数之间的空格,+号和后面的显示格式并没有空格,有空个就会报错的

所以最后代码改为即可运行

#!/bin/bash
#
2011/06/08 Yannis First Release

echo
"I will use 'touch' command to create files" #显示信息
read -p "Please input your filename : " fileuser #提示用户输入

#为了避免用户随意按下Ecter键,利用变量功能分析文件名是否有效
filename=${fileuser:-"filename"} #开始判断是否有配置文件

#开始利用date命令来取得所需要的文件名
date1=$(date -d '2 days ago' +%Y%m%d) #前两天的日期
date2=$(date -d '1 days ago' +%Y%m%d) #前一天的日期
date3=$(date +%Y%m%d) #今天的日期
file1=${filename}${date1}
file2
=${filename}${date2}
file3
=${filename}${date3}

#创建文件名
touch "$file1"
touch
"$file2"
touch
"$file3"
相关阅读 更多 +
排行榜 更多 +
耶小兔子2

耶小兔子2

休闲益智 下载
nba2k20豪华版

nba2k20豪华版

体育竞技 下载
画线征服火柴人安卓版

画线征服火柴人安卓版

动作格斗 下载