1751_使用Perl进行目录的创建于删除

这篇具有很好参考价值的文章主要介绍了1751_使用Perl进行目录的创建于删除。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

全部学习汇总: GreyZhang/perl_basic: some perl basic learning notes. (github.com)

         不管是用Perl还是Python,之前写代码的时候遇到需要进行目录的创建或者删除指令的时候我通常会直接调用Windows的相关命令或者使用移植过来的bash shell命令。其实,看完小骆驼中的介绍后,后期用到这些功能的时候我想我大概还是会采用这样的方式吧!不过,从考虑软件的可移植性上考虑,确实应该使用Perl的内置功能。或者,能够兼顾使用的方便与移植,使用Perl的File::Path模块库。

         目录创建的功能,Perl中提供了一个函数mkdir。与我自己常用的Windows CMD的同名命令不一样的地方我用到的主要有两点。

  • 传入参数不同。Perl中的mkdir传入参数有两个,第一个参数是目录名,第二个参数是这个目录的权限设置。而在Windows的命令中,传入参数可以是多个,是一个待创建的目录列表,这种方式我非常喜欢,以为很多目录同时创建的时候只需要一条命令。
  • 在Windows下,对目录或者文件设置各种权限似乎意义不大。我个人的理解,不同的操作系统有不同的运行机理,而Windows平台本身就不是那种基于文件的操作系统。

在Perl中,创建一个新的目录时也可以把第二个参数省略,至少在Windows下我做相关的测试没有发现有什么问题。写一个简单的测试如下:

1751_使用Perl进行目录的创建于删除

         在一个没有子目录的文件夹中执行效果如下:

1751_使用Perl进行目录的创建于删除

         Perl中的目录删除功能与Linux中接触到的bash功能相似,至少从行为上来看多少有些相似。在不加任何参数的时候,rmdir只能够删除空目录。如果目录中有文件的时候,可以结合unlink使用,先删除目录中的文件然后执行目录的删除。不过,如果目录中存在子目录这个组合使用的方式依然会失败。至于解决的方案,就是开篇中提到的File::Path模块,rmtree可以实现这种一步到位的处理功能。这像极了Python中的shutil模块的几个功能。文章来源地址https://www.toymoban.com/news/detail-506643.html

到了这里,关于1751_使用Perl进行目录的创建于删除的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • macOS 上使用 Sublime Text 删除全部空行

    1、打开搜索替换: 使用快捷键Command + F打开查找功能。然后点击左下角的.*图标或使用快捷键Command + Alt + R来启用正则表达式搜索。 2、输入正则表达式: 在查找栏中输入以下正则表达式:^s*n 这个正则表达式匹配从行开始到行结束之间的所有空白字符,包括空格、制表符和换

    2024年01月25日
    浏览(49)
  • 1746_Perl中面向对象的目录处理模块

    全部学习汇总: GreyZhang/perl_basic: some perl basic learning notes. (github.com)          说起来我还不懂Perl的面向对象编程技术,只是在前阵子看到了书中提到了一句,用到了一个例子。今天看书的时候又看到了类型形势的代码(代码中很多瘦箭头),我觉得大概是面向对象的编程

    2024年02月10日
    浏览(47)
  • 用perl查找文件夹中的所有文件和目录

    查找文件夹中的文件和目录是一个很常见的操作,使用perl的File::Find模块可以很方便的实现。首先使用perldoc File::Find 查看一下文档: 这个核心的就是文档中描述的回调函数。我们举一个实际的例子,一个空的git仓库为例,下面的脚本用于查找文件夹中的所有文件: 回调函数中

    2024年02月04日
    浏览(51)
  • 使用cgroup工具对服务器某些/全部用户进行计算资源限制

    主要介绍,如何对指定/所有用户进行资源限定(这里主要介绍cpu和内存占用限制),防止某些用户大量占用服务器计算资源,影响和挤占他人正常使用服务器。 安装 cgroup 管理工具 使用 mount -t cgroup 命令检查验证 可以通过编写 /etc/cgconfig.conf 和 /etc/cgrules.conf 文件进行计算资

    2024年02月10日
    浏览(44)
  • 华为云NFS使用API删除大文件目录

    最近在使用华为云SFS时,如果一个目录存储文件数超过100W,执行 “rm -rf path”时,存在删不动的情况,可以使用华为云API接口,执行异步删除。  华为官网: 删除文件系统目录_弹性文件服务 SFS_API参考_SFS Turbo API说明_目录管理_华为云 删除文件系统目录在2023年6月1号之后创建

    2024年02月15日
    浏览(40)
  • FreeRTOS学习笔记—任务创建和删除

    🎀 文章作者:二土电子 🌸 关注文末公众号获取其他资料和工程文件! 🐸 期待大家一起学习交流! FreeRTOS 的任务创建和删除相关的API函数有下面几个 xTaskCreate() 使用动态的方法创建一个任务 xTaskCreateStatic() 使用静态的方法创建一个任务 xTaskCreateRestricted() 创建一个使用 M

    2024年02月12日
    浏览(36)
  • 基于 ESP32 创建 HTTP Server 服务器,支持载入文件到服务器,并对载入文件进行删除管理

    软件编程指南参见:HTTP 服务器 任意一款 ESP32 系列开发板 2.4GHz 路由器热点 准备各种格式的文件 可基于 esp-idf/examples/protocols/http_server /file_serving 例程进行测试 只需要设置 ESP32 连接的 2.4GHz 的 WiFi 热点 即可 menuconfig — Example Connection Configuration — WiFi SSID — WiFi Password 下载固件

    2024年02月16日
    浏览(58)
  • git提交记录全部删除

    目录 问题描述 解决方案 下载代码      分支查看 新建分支    迁移分支 删除老分支 恢复分支 结果 新复制的项目具有特比多的历史提交记录,我想给他清除,如下图。清除有一定好处,不清除过多历史也就导致包特别大,下载和提交等方面都会收到影响。 下载代码    

    2024年02月02日
    浏览(49)
  • linux下创建ssh账号并设置指定使用目录

    场景:在linux系统下创建用户,并使用xshell登录,一般我们使用key登录,安全性高 1.使用xshell连接服务器,使用root账号 sudo su 2.创建一个新的系统用户,使用以下命令: sudo useradd -m username 3.设置该用户的密码,使用以下命令: sudo passwd username 系统将提示你输入该用户的新密码

    2024年02月05日
    浏览(38)
  • 使用 Elasticsearch 进行日志重复数据删除

    作者:来自 Elastic Carly Richmond 来自不健康应用程序服务的重复事件使日志搜索变得棘手。 查看如何使用 Logstash、Beats 和 Elastic Agent 处理重复项。 SRE 每天都会被来自嘈杂应用程序的大量日志淹没。 Frederick P. Brooks 在他的开创性著作《人月神话》中说,“所有程序员都是乐观主

    2024年01月23日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包