shell 根据文件日期移动

时间: 2023-08-13 14:00:44 浏览: 141
Shell 是一种脚本语言,可以用来编写一系列命令以实现特定目标。在编写 Shell 脚本时,我们可以利用文件日期来实现文件的移动操作。 在 Shell 中,可以使用 `ls` 命令来列出文件信息,包括文件名和日期。使用 `cut` 命令可以根据指定的分隔符提取出日期信息。然后,可以使用条件语句(如 `if` 语句)来判断文件日期是否符合条件。如果符合条件,可以通过 `mv` 命令将文件移动到目标位置。 以下是一个示例 Shell 脚本,用于根据文件日期移动文件: ```shell #!/bin/bash # 源文件夹路径 source_dir="/path/to/source/directory" # 目标文件夹路径 target_dir="/path/to/target/directory" # 遍历源文件夹中的文件 for file in $(ls $source_dir); do # 提取文件的日期信息 file_date=$(ls -l --time-style=+"%Y%m%d" $source_dir/$file | cut -d ' ' -f 6) # 判断文件日期是否满足条件(示例条件:大于某个日期) if [ $file_date -gt "20211231" ]; then # 移动文件到目标文件夹 mv $source_dir/$file $target_dir fi done ``` 在上面的示例脚本中,我们首先设置源文件夹路径和目标文件夹路径,然后使用一个循环来遍历源文件夹中的文件。对于每个文件,我们使用 `ls` 命令和 `cut` 命令来提取出文件的日期信息。然后,我们使用条件语句来判断文件日期是否符合条件。如果符合条件,我们使用 `mv` 命令将文件移动到目标文件夹。 请注意,上述示例脚本中的条件和路径只是示例,您可以根据实际需求进行修改。另外,为了确保脚本的安全性和可靠性,建议在使用之前进行测试和校验。

相关推荐

C#程序 实现如下功能: 1. 读取注册表SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\下shell的值保存为字符串strShell,strShell的字符串格式举例为"C:\2.4.7460\autostart.exe doctorold.exe"; 2. 将strShell识别字符串中路径(例如C:\2.4.7460\)并保存为strPath; 3. 读取当前目录下的DoctorOld.exe文件版本只保留前三段版本号(例:2.4.7460.12546保留2.4.7460)保存为字符串strNewVer; 4. 读取strPath目录下的DoctorOld.exe文件版本只保留前三段版本号(例:2.4.7460.12546保留2.4.7460)保存为字符串strOldVer; 5. 新建"C:\"+strNewVer文件夹,其中包括判断是否存在,进行提示“版本相同是否进行强制更新”,如果强制更新则将旧文件夹进行重命名,重命名规则为在文件夹后加当前时间,将新文件夹路径给strPath赋值; 6. 复制当前目录内所有文件和文件夹至"C:\"+strNewVer; 7. 复制strPath目录下的1.txt、2.txt、3.txt文件至"C:\"+strNewVer直接覆盖; 8. 查找strShell中是否含有“Doctorold.exe”、"Nurse.exe"、"USVoltDlg.exe"、"Water.exe",分别存布尔型变量; 9. 如果含有“Doctorold.exe”则修改注册表HKEY_LOCAL_MACHINE\System\Setup\下shell的值为"C:\"+strNewVer+"autostart.exe doctorold.exe"; 10. 如果含有“Nurse.exe”则修改注册表HKEY_LOCAL_MACHINE\System\Setup\下shell的值为"C:\"+strNewVer+"autostart.exe Nurse.exe"; 11. 如果含有“Water.exe”则修改注册表HKEY_LOCAL_MACHINE\System\Setup\下shell的值为"C:\"+strNewVer+"autostart.exe Water.exe"; 12. 如果含有“USVoltDlg.exe”则修改注册表HKEY_LOCAL_MACHINE\System\Setup\下shell的值为"C:\"+strNewVer+"autostart.exe USVoltDlg.exe"; 13. 打开“C:\”路径下名为“UpdaterLog.txt”文本文档,在文件最后行添加:当前日期+时间+“:”+strOldVer+"-->"+strNewVer; 14. 将上述执行每一步骤及结果保存至名为strNewVer.log的文件中。

最新推荐

recommend-type

Android开发资料合集-World版!

9.86.5、再述模拟键盘鼠标事件(adb shell 实现) 334 9.87、反编译APK 344 9.88、更换APK图标(签名打包) 348 9.89、利用ANDROID MARKET赚钱 363 9.90、ANDROID-MARKET 使用 365 9.91、传感器 369 9.91.1、获取手机...
recommend-type

linux_c API函数大全

fseek(移动文件流的读写位置) 95 10.15 96 ftell(取得文件流的读取位置) 96 10.16 96 fwrite(将数据写至文件流) 96 10.17 97 getc(由文件中读取一个字符) 97 10.18 97 getchar(由标准输入设备内读进一字符...
recommend-type

《Google Android SDK开发范例大全(第3版)》.pdf

5.28 shell script运行command 283 5.29 模拟文件下载notification进度变化与关闭 285 5.30 取得已安装应用程序列表与安装日期信息 291 5.31 造假的toast画面 294 5.32 剪贴簿管理器 298 第6章 手机...
recommend-type

计算机应用技术(实用手册)

进入后,你可以用方向键移动光标选择CMOS设置界面上的选项,然后按Enter进入副选单,用ESC键来返回上一级菜单,用PAGE UP和PAGE DOWN键来选择具体选项,F10键保留并退出BIOS设置。 1.STANDARD CMOS SETUP(标准...
recommend-type

数据库灾难性恢复(数据库技术;灾难性;恢复;数据备份)

该列表还必须包括数据库分离后所有被移动的文件。 返回代码值 0(成功)或 1(失败) 结果集 无 注释 只应对以前使用显式 sp_detach_db 操作从数据库服务器分离的数据库执行 sp_attach_db。如果必须指定多于...
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MySQL数据库性能提升秘籍:揭秘性能下降幕后真凶及解决策略

![MySQL数据库性能提升秘籍:揭秘性能下降幕后真凶及解决策略](http://xiaoyuge.work/explain-sql/index/2.png) # 1. MySQL数据库性能优化概述** MySQL数据库性能优化是一项至关重要的任务,可以显著提高应用程序的响应时间和整体用户体验。优化涉及识别和解决影响数据库性能的因素,包括硬件资源瓶颈、软件配置不当和数据库设计缺陷。通过采取适当的优化策略,可以显著提升数据库性能,满足业务需求并提高用户满意度。 # 2. MySQL数据库性能下降的幕后真凶 ### 2.1 硬件资源瓶颈 #### 2.1.1 CPU利用率过高 **症状:
recommend-type

如何在unity创建按钮

在 Unity 中创建按钮的步骤如下: 1. 在 Unity 中创建一个 UI Canvas,选择 GameObject -> UI -> Canvas。 2. 在 Canvas 中创建一个按钮,选择 GameObject -> UI -> Button。 3. 在场景视图中调整按钮的位置和大小。 4. 在 Inspector 中设置按钮的文本、颜色、字体等属性。 5. 添加按钮的响应事件,选择按钮,在 Inspector 的 On Click () 中添加相应的方法。 这样就可以创建一个按钮了,你可以在游戏中使用它来触发相应的操作。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。