首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

根据目录名中的日期循环遍历目录中的文件(Mac os - zsh)

根据目录名中的日期循环遍历目录中的文件(Mac OS - Zsh)

在Mac OS系统中,可以使用Zsh作为默认的命令行解释器。要根据目录名中的日期循环遍历目录中的文件,可以使用以下脚本:

代码语言:txt
复制
#!/bin/zsh

# 设置目标目录路径
target_dir="/path/to/target/directory"

# 遍历目标目录中的文件
for file in $target_dir/*; do
    # 获取文件名
    filename=$(basename "$file")
    
    # 提取目录名中的日期部分
    date=$(echo "$filename" | grep -oE '[0-9]{4}-[0-9]{2}-[0-9]{2}')
    
    # 判断日期是否有效
    if [[ ! -z $date ]]; then
        # 执行你想要的操作,例如打印文件名和日期
        echo "文件名:$filename,日期:$date"
    fi
done

上述脚本中,你需要将/path/to/target/directory替换为你要遍历的目录路径。脚本会遍历目标目录中的所有文件,提取文件名中的日期部分,并执行你想要的操作。在示例中,脚本会打印文件名和日期。

这个脚本的优势是可以灵活适应不同的目录结构和文件命名规则。你可以根据实际情况进行修改和扩展。

对于这个问题,腾讯云没有特定的产品与之相关。但腾讯云提供了丰富的云计算产品和服务,可以满足各种应用场景的需求。你可以访问腾讯云官方网站(https://cloud.tencent.com/)了解更多关于腾讯云的产品和服务信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • C#如何遍历某个文件所有子文件和子文件夹(循环递归遍历多层),得到所有的文件名,存储在数组列表

    D:\\test"; List nameList = new List(); Director(path,nameList); 响应(调用)代码如上面,比如写在某个事件。...首先是有一个已知路径,现在要遍历该路径下所有文件文件夹,因此定义了一个列表,用于存放遍历文件名。...d.GetDirectories();//文件夹 foreach (FileInfo f in files) { list.Add(f.Name);//添加文件名到列表...} //获取子文件夹内文件列表,递归遍历 foreach (DirectoryInfo dd in directs) {...Director(dd.FullName, list); } } 这样就得到了一个列表,其中存储了所有的文件名,如果要对某一个文件进行操作,可以循环查找: foreach (string

    14K40

    终极 Shell-MacTalk-池建强随想录Customize to your needs…

    目前常用 Linux 系统和 OS X 系统默认 Shell 都是 bash,但是真正强大 Shell 是深藏不露 zsh, 这货绝对是马车跑车,跑车飞行车,史称『终极 Shell』,但是由于配置过于复杂...打开alias -s rb=mate # 在命令行直接输入 ruby 文件,会在 TextMate 打开alias -s py=vi # 在命令行直接输入 python 文件,会用 vim 打开...插件 oh my zsh 项目提供了完善插件体系,相关文件在~/.oh-my-zsh/plugins目录下,默认提供了100多种,大家可以根据自己实际学习和工作环境采用,想了解每个插件功能,只要打开相关目录...ssh + 空格 + 两个tab键,zsh会列出所有访问过主机和用户名进行补全 5、智能跳转,安装了autojump之后,zsh 会自动记录你访问过目录,通过 j + 目录名 可以直接进行目录跳转...,而且目录名支持模糊匹配和自动补全,例如你访问过hadoop-1.0.0目录,输入j hado 即可正确跳转。

    1.8K80

    如何快速学会Python处理数据?(5000字走心总结)

    02 问题说明 现在工作面临一个批量化文件处理问题:就是要把每个二级文件下csv文件合并到一个数据表里,同时要在最终数据表里增加两列,一列是一级文件目录名称,另一列是二级文件目录名称。...编程之前,我是如何思考: 1、首先,要读取文件名称,需要引入OS模块下listdir函数 2、其次,遍历所有一级、二级、三级文件名称,需要用到for循环循环嵌套 3、然后,读取文件下csv表,需要用到...需要读取一级文件目录名称、二级文件目录名称、三级csv文件目录名称,并逐个遍历它,于是选择了for循环。...for i in name: #第一层循环,读取一级文件目录名称 for j in name1: #第二层循环,读取二级子文件目录名称 for t in name3: #第三层循环...,读取csv文件目录名称 05模块函数调用 函数是组织好,可重复使用,用来实现单一、或者相关功能代码段。

    1.9K20

    Mac全栈开发-Shell以及终端软件

    全栈开发在Mac下面会经常使用终端,在OS X El Capitan‎之前,恐怕系统默认Terminal+bash+screen是无法跟iTerms+zsh+tmux进行匹敌。...Mac是基于UNIX一套系统,而Shell可以说是UNIX一个外壳,在Mac里面我们可以在Terminal执行下面命令看看系统有几种shell: cat /etc/shells 不出意外的话显示如下...: /bin/bash /bin/csh /bin/ksh /bin/sh /bin/tcsh /bin/zsh Mac默认使用是bash这个shell,英文26个字母当中z排在最后,这足以说明zsh...ssh + 空格 + 两个tab键,zsh会列出所有访问过主机和用户名进行补全 智能跳转,安装了autojump之后,zsh 会自动记录你访问过目录,通过 j + 目录名 可以直接进行目录跳转,而且目录名支持模糊匹配和自动补全...--- Go2Shell Go2Shell 是一个便捷小工具,它可以实现一次点击,即可在当前目录打开终端,这比打开终端->cd到当前目录直观快捷多,就像下面这样: 其他常见问题 Terminal

    1.3K20

    python 遍历toast msg文本背景简易语法介绍1. 查找目录下所有java文件查找Java文件Toast在对应行找出对应id使用id在String查找对应toast提示信息。

    妈呀,自己查找,还要根据查找id找到对应string,比较坑。于是就顺带练手写了个python脚本来处理这个问题。当然编码相对不太规范,异常处理也没做。由于lz好久没写过python脚本了,相当生疏。...几乎是边查文档编写,记录写编写过程: 查找目录下所有java文件 查找Java文件中含有Toast相关行 在对应行找出对应id 使用id在String查找对应toast提示信息。...查找目录下所有java文件 这个我是直接copy网上递归遍历,省略。...查找Java文件Toast 需要找出Toast特征,项目中有两个Toast类 BannerTips和ToastUtils 两个类。 1.先代码过滤对应行。...在对应行找出对应id 使用id在String查找对应toast提示信息。 最后去重。 最后一个比较简单,可以自己写,也可以解析下xml写。

    3.9K40

    极客工具之 oh-my-zsh

    shell 有多种,大多数人接触比较多是 bash, 不管是 mac 还是各个 linux 发行版,默认 shell 基本都是 bash,虽然 bash 功能已经丰富了,但对于极客们来说,界面不够炫.../robbyrussell/oh-my-zsh/master/tools/install.sh)" 更改系统默认 shell chsh -s /bin/zsh 更改zsh配置文件 vim ~/.zshrc.../plugins 这个目录每个子目录都是一个插件,目录名即为插件名,默认不开启,需要在 ~/.zshrc 该配置开启,比如: plugins=( git git-flow docker...我这里再推荐另外三个不是内置插件,需要将它们单独下载到 ~/.oh-my-zsh/plugins 并且加到上面的 plugins 配置列表以启用插件: 插件 功能 地址 zsh-autosuggestions...~/.zshrc source $ZSH/oh-my-zsh.sh 这句下面的位置 使用效果演示: ?

    3.6K41

    DevContainer高效开发(第二篇):前端开发体验

    然后根据自己需求编写 Dockerfile (1) 这里以 node 为例,安装 yarn,并且配置 yarn 镜像源: # 设置变量,由 .devcontainer.json args 传入..."; \ fi # 设置 zsh 为默认 shell ENV SHELL /bin/zsh (2) 写好 dockerfile 之后,在修改 devcontainer.json 文件 {...workspaceFolder 是容器工作目录,默认是 /workspaces/你目录名 workspaceMount 是挂载目录,如果不指定,默认是 /workspaces/你目录名 因为...workspaces/你目录名 默认会自动挂载,这就导致了一个效率问题,如果你打开项目很大,那么容器启动时间就会很长,后续在容器操作也会很慢。...所以不要直接在 workspaces/你目录名 目录下进行开发,而是你执行一个工作目录 /root/uccs,这个目录必须提前创建,可以写在 Dockerfile (3) shutdownAction

    30610

    shell界面颜值知多少

    其中PS1常用参数含义如下: \d :#代表日期,格式为weekday month date,例如:"Mon Aug 1" \H :#完整主机名称 \h :#仅取主机第一个名字 \t :#显示时间为...24小时格式,如:HH:MM:SS \T :#显示时间为12小时格式 \A :#显示时间为24小时格式:HH:MM \u :#当前用户账号名称 \v :#BASH版本信息 \w :#完整工作目录名称...\W :#利用basename取得工作目录名称,所以只会列出最后一个目录 \# :#下达第几个命令 \$ :#提示字符,如果是root时,提示符为:# ,普通用户则为:$ 颜色值设置: PS1设置字符颜色格式为...在写入时需要注意下自己环境变量是什么文件。 其实这不单单是修改shell提示符时候要注意,这是我们在修改任何环境变量时都要注意。首先要清楚我们当前环境配置文件是哪个。...(记得当时我shell是sh,环境配置文件应该 ~/.profile,但是我当时不知道,只知道往~/.bashrc写,写入之后还不起作用,一直纠结这个问题解决了一天才意识到这个问题。)

    1.9K20

    学好Mac常用命令,助力iOS开发

    序言 在iOS开发过程,更多地注重iOS开发效率,熟练使用Mac终端操作常用命令,可以让你更好游刃于iOS繁重开发。...Mac OS X文件系统 Mac OS X本身是Unix内核,采用Unix多用户系统,采用Unix文件系统,所有文件都放在根目录/Users下面,不存在Windows下盘符概念,用户登录系统后,...自己用户目录下一般有公共、图片、文稿、下载、音乐、影片、站点、桌面、资源库,OS X为中文用户做了国际化,打开终端,输入ls,你会看到真正目录名称:Desktop、Documents、Downloads...Mac终端常用基本命令 列出文件:ls 参数 目录名 例: 查看驱动目录:ls/System/Library/Extensions,(参数 -w 显示中文,-l 详细信息, -a 包括隐藏文件)...中常用快捷键 Command+Tab 任意情况下切换应用程序 - 向前循环 Shift+Command+Tab 切换应用程序 - 向后循环 Command

    63810

    一文搞定Python操作文件目录

    (path) os.rmdir(path) 得到当前目录名os.path.split(dir_path)[1] 这个方法既简单又实用,比如我们输入一个目录路径: os.path.split('...('/usr/projects/project1') # 输出 ('/usr/projects', 'project1') # 然后第2步取出第2个结果,也就是当前目录名循环遍历目录 循环遍历目录有...(file_name) os.walk方法几个参数简单介绍一下: home:这个是当前遍历目录,比如说是 /usr/projects/ dirs:是这个目录(home目录)下面的所有文件夹(也就是子目录...) files:是这个目录(home目录)下所有的文件 所以从上面的参数可以看出,os.walk方法会逐一地遍历初始目录下面的所有目录文件 常见文件操作 跟上面得到目录名类似的是得到文件后缀 os.path.splitext...os.path.join(dir_name, file_name) 这个方法也很有用,因为我们在打开一个文件时候都需要知道文件路径 比如在上面循环遍历目录例子,我们可以这样打开编辑文件: def

    56420

    python 移动文件文件夹操作

    目录: 1、python文件文件夹操作时经常用到os模块和shutil模块常用方法 2、文件操作方法大全 3、目录操作方法大全 ————————————————————————————– 1、python...文件文件夹操作时经常用到os模块和shutil模块常用方法。...1.得到当前工作目录,即当前Python脚本工作目录路径: os.getcwd() 2.返回指定目录所有文件目录名:os.listdir() 3.函数用来删除一个文件:os.remove() 4...) 7.判断是否是绝对路径:os.path.isabs() 8.检验给出路径是否真地存:os.path.exists() 9.返回一个路径目录名文件名:os.path.split() eg os.path.split...其实它内部是通过循环调用readline()来实现。如果提供size参数,size是表示读取内容总长,也就是说可能只读到文件一部分。

    10.2K10

    python 操作文件

    python文件文件夹(文件操作函数)操作需要涉及到os模块和shutil模块。...操作前需要 import os; 返回当前目录,不包括文件名: os.getcwd(); 返回指定目录所有文件目录名:os.listdir("dirname"); os.mknod("test.txt...:os.path.isdir() 判断是否是绝对路径:os.path.isabs() 检验给出路径是否真地存:os.path.exists(); 返回一个路径目录名文件名:os.path.split...:os.getenv() 与os.putenv() 给出当前平台使用行终止符:os.linesep Windows使用'\r\n',Linux使用'\n'而Mac使用'\r' 指示你正在使用平台...其实它内部是通过循环调用readline()来实现。如果提供size参数,size是表示读取内容总长,也就是说可能只读到文件一部分。

    48210

    golang封装tar打包解包

    方案二在另外篇幅说明 方案一:使用archive/tar库封装 这个方案实现起来也不难,大体思路是打包时遍历目录所有文件,通过tar.Writer写入到tar包,在写入过程处理下header信息...解包则通过tar.Reader读取tar包信息,根据header.Name创建文件然后将内容拷贝进去。...tar写入句柄,通过目录遍历,将文件写入即可 // Pack 压缩,这里sourceFullPath可能是单个文件,也可能是个目录 func (tp *TgzPacker) Pack(sourceFullPath...这样解压时可以直接在将根目录解压到工作目录下 // sourceFullPath为待打包目录,baseName为待打包目录目录名称 func (tp *TgzPacker) tarFolder(sourceFullPath...targetFullPath := filepath.Join(dstDir, header.Name) // 根据文件类型做处理,这里只处理目录和普通文件,如果需要处理其他类型文件

    2.8K10

    新MacBook到手时,建议你需要做事情(二)

    Mac 版本为 MacBook Pro(16 英寸,2019 年) 系统版本为:macOS Sonoma 14.5如果你是想将一台 Mac 进行重装系统,那么则十分建议以下文件或者目录,你需要先进行备份...~/.gitconfig Git 配置文件~/.ssh SSH 密钥目录~/.config 一些软件个人配置目录这篇文章主要介绍我一般都下载了哪些软件,以及常见配置项。...,当我们要考虑重装 Mac 系统时候,我们一定要将 ~/.gitconfig 文件和 ~/.ssh 目录进行备份,这样当你换了系统或者电脑之后你就不需要再重新配置 git 相关密钥。...~/.gitconfig 文件是 Git 配置文件;~/.ssh 是 ssh 密钥目录(当你使用 git 通过 SSH 通讯时,需要用到)安装 oh-my-zshMac 系统默认使用zsh 作为...Mac OS X 不支持对微软 Windows 格式 NTFS卷写入。

    13010

    Python深度遍历、广度遍历、递归函数遍历目录【详细讲解】

    Python通过os模块可以实现对文件或者目录遍历,这里想实现这样效果有三种方法,分别是递归函数遍历目录,栈深度遍历和队列广度遍历。下面就通过这三种方法来演练一下。...t' for f in flist: # 遍历目录,得到所有文件目录 if os.path.isdir(os.path.join(path, f)): # os.path.join...(path, f)拼接路径,否则只会返回文件名或者目录名 print(sp, '目录', f)             getAll(os.path.join(path, f),...= 0: # 从栈取数据/目录         dpath = stack.pop() # print(dpath) # 目录所有文件目录         ...# 压栈之后for循环结束,再走一遍while循环,只要len(stack) !

    3.7K20
    领券