Linux shell脚本:创建一个包含当前日期名称的文件夹

Linux shell脚本:创建一个包含当前日期名称的文件夹,第1张

概述我正在尝试制作一个简单的备份脚本,我在创建一个名称为curent date的文件夹时遇到问题我的脚本是那个,基本上问题出在最后一行drivers=$(ls /media/) declare -i c=0 for word in $drivers do echo '($c)$word' c=c+1 done read -n 1 drive

我正在尝试制作一个简单的备份脚本,我在创建一个名称为curent date的文件夹时遇到问题

我的脚本是那个,基本上问题出在最后一行

drivers=$(ls /media/)declare -i c=0for word in $driversdo    echo "($c)$word"    c=c+1doneread -n 1 driveechoc=0for word in $driversdo    if [ $c -eq $drive ]    then        backuppath="/media/$word/backup"    fi    c=c+1doneecho "doing back up to $backuppath"cp -r /home/stefanos/Programming $backuppath/$(date +%Y-%m-%d-%T)

输出继电器:

(0)0362-BA96(1)Data(2)windows0doing back up to /media/0362-BA96/backupcp: cannot create directory `/media/0362-BA96/backup/2012-12-05-21:58:37': InvalID argument

路径是三重检查,直到/ media / 0362-BA96 /

解决了:
    是什么janisz说最终的剧本看起来像

drivers=$(ls /media/)declare -i c=0for word in $driversdo    echo "($c)$word"    c=c+1doneread -n 1 driveechoc=0for word in $driversdo    if [ $c -eq $drive ]    then        backuppath="/media/$word/backup"    fi    c=c+1doneecho "doing back up to $backuppath"backup(){  time_stamp=$(date +%Y_%m_%d_%H_%M_%s)  mkdir -p "${backuppath}/${time_stamp}"  cp -r "" "${backuppath}/${time_stamp}"  echo "backup complete in "}#####################The paths to backup####################backup "/home/stefanos/Programming"backup "/home/stefanos/AndroID/Projects"backup "/home/stefanos/DropBox"
最佳答案:在FAT上无效(用于指定磁盘).一些M $无效字符适用于GNU / linux系统,但避免它们更安全(只需替换为.).使用以下日期格式

date +%Y_%m_%d_%H_%M_%s

它应该适用于大多数文件系统,但对于MS DOS FAT来说可能太长了.更多信息你会发现here. 总结

以上是内存溢出为你收集整理的Linux shell脚本:创建一个包含当前日期名称的文件夹全部内容,希望文章能够帮你解决Linux shell脚本:创建一个包含当前日期名称的文件夹所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1048323.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存