shell脚本 for循环实现文件和目录遍历

2023-11-20

一个for循环实现一个目录下的文件和目录遍历,很实用
[root@localhost shell_order]# cat test27.sh 
#!/bin/bash
#print the directory and file

for file in /home/hustyangju/*
do
if [ -d "$file" ]
then 
  echo "$file is directory"
elif [ -f "$file" ]
then
  echo "$file is file"
fi
done
[root@localhost shell_order]# ./test27.sh 
/home/hustyangju/array is directory
/home/hustyangju/menuwindow-7.12 is directory
/home/hustyangju/menuwindow-build-desktop is directory
/home/hustyangju/shell_order is directory
[root@localhost shell_order]# 

递归遍历

#! /bin/bash
read_dir(){
    for file in `ls $1`       #注意此处这是两个反引号,表示运行系统命令
    do
        if [ -d $1"/"$file ]  #注意此处之间一定要加上空格,否则会报错
        then
            read_dir $1"/"$file
        else
            echo $1"/"$file   #在此处处理文件即可
        fi
    done
}
#读取第一个参数
read_dir $1

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

shell脚本 for循环实现文件和目录遍历 的相关文章

  • “perf record”或“perf-record”可以对子进程进行采样吗?

    假设我有一个harness二进制文件 它可以根据命令行选项生成不同的基准 我对这些基准测试非常感兴趣 我有3个选择 更改线束二进制文件以生成perf record运行基准测试并进行采样的子进程 just do perf record har
  • 拆分字符串以仅获取前 5 个字符

    我想去那个地点 var log src ap kernelmodule 10 001 100 但看起来我的代码必须处理 ap kernelmodule 10 002 100 ap kernelmodule 10 003 101 等 我想使用
  • Bash 解析和 shell 扩展

    我对 bash 解析输入和执行扩展的方式感到困惑 对于输入来说 hello world 作为 bash 中的参数传递给显示其输入内容的脚本 我不太确定 Bash 如何解析它 Example var hello world displaywh
  • 在 bash 中使用单个命令为 shell 变量分配默认值

    我对 bash 3 00 shell 脚本中的变量进行了大量测试 如果未设置变量 则它会分配默认值 例如 if z VARIABLE then FOO default else FOO VARIABLE fi 我似乎记得有一些语法可以在一行
  • 如何在 shell 脚本中操作 $PATH 元素?

    有没有一种惯用的方法从类似 PATH 的 shell 变量中删除元素 这就是我想要的 PATH home joe bin usr local bin usr bin bin path to app bin and remove or rep
  • 如何在数组中存储包含双引号的命令参数?

    我有一个 Bash 脚本 它生成 存储和修改数组中的值 这些值稍后用作命令的参数 对于 MCVE 我想到了任意命令bash c echo 0 0 echo 1 1 这解释了我的问题 我将用两个参数调用我的命令 option1 without
  • 添加要在给定命令中运行的 .env 变量

    我有一个 env 文件 其中包含如下变量 HELLO world SOMETHING nothing 前几天我发现了这个很棒的脚本 它将这些变量放入当前会话中 所以当我运行这样的东西时 cat env grep v xargs node t
  • 如何在 Linux shell 中将十六进制转换为 ASCII 字符?

    假设我有一个字符串5a 这是 ASCII 字母的十六进制表示Z 我需要找到一个 Linux shell 命令 它将接受一个十六进制字符串并输出该十六进制字符串代表的 ASCII 字符 所以如果我这样做 echo 5a command im
  • sed 错误“未终止的 's' 命令”故障排除

    我正在构建一个script https stackoverflow com questions 4036832 replacing a specific term in an xml file其中 它将用文件夹路径替换 XML 文件中的模式
  • 使用sk_buff添加以太网帧头

    我有一个捕获传出互联网流量的内核模块 Netfilter hook LOCAL OUT 在此挂钩处 仍然没有以太网标头 我构建了以太网头并且可以使用了 但是如何将其连接到skb这样我就可以将整个 skb 结构发送到dev queue xmi
  • 如何通过保持目录结构完整来同步路径中匹配模式的文件?

    我想将所有文件从服务器 A 复制到服务器 B 这些文件在不同级别的文件系统层次结构中具有相同的父目录名称 例如 var lib data sub1 sub2 commonname filetobecopied foo var lib dat
  • 使用 awk 读取文件并搜索另一个文件

    我正在读取一个文件 每行都有数字 我需要搜索另一个满足这些数字和其他条件的文件 我正在尝试使用 awk 来做到这一点 但遇到了问题 File a txt 1476 1477 1497 现在我需要打印第 12 列包含这些数字的行以及第 3 列
  • 从 UNIX 命令行向串行端口发送字节?

    我想使用命令行将字节流发送到串行端口 这可能吗 我的串口位于 dev cu usbserial A700dYoR在我的 Mac 上 例如 如果我想将整数 50 或字符串 data 发送到该串行端口 我该怎么做 我对 UNIX 的了解非常有限
  • 在脚本内使用不带密码的 sudo

    由于某种原因 我需要作为用户在没有 sudo 的情况下运行脚本 script sh 该脚本需要 root 权限才能工作 我认为将 sudo 放入 script sh 中是唯一的解决方案 让我们举个例子 script sh bin sh su
  • 如何在 PHP 中运行 shell 脚本?

    我正在尝试使用 PHP 触发 shell 脚本的运行 本质上 当用户在我们用 PHP 编写的网站上完成一个操作时 我们希望触发一个 shell 脚本 该脚本本身调用一个 Java 文件 提前致谢 See shell exec http ph
  • sh / Bash shell 脚本中 !# (bang-pound) 的含义是什么?

    我想了解这个 Scala 脚本是如何工作的 usr bin env bash exec scala 0 object HelloWorld def main args Array String println Hello world arg
  • 符合 POSIX 标准的 shell 相当于 Bash“while read -d $'\0' ...”?

    我正在尝试使 Bash 脚本严格符合 POSIX 标准 即消除任何潜在的 Bashisms http mywiki wooledge org Bashism 通过使用checkbashisms px script filename 在给定的
  • 在 shell 脚本中将一个子字符串替换为另一个字符串

    我有 我爱苏子并结婚 我想将 苏子 更改为 萨拉 firstString I love Suzi and Marry secondString Sara 期望的结果 firstString I love Sara and Marry 要更换
  • Bash 脚本监听按键以继续

    因此 我想编写一个由一系列步骤组成的 bash 脚本 并将其标识为 task 然而 每个步骤都只能完成并且可以根据用户的需要运行 Do task1 if keypressed stop task1 and move on this is t
  • 如何在 C# 中启动文件

    编辑 我觉得自己像个白痴 我有一种感觉 像下面的答案会起作用 但没有看到任何与下面的答案类似的谷歌结果 所以当我看到这段复杂的代码时 我想它一定是这样的 我搜索并找到了这个Windows 列出并启动与扩展关联的应用程序 https stac

随机推荐

  • linux计算字符串个数,Linux 统计某个字符串个数的方法

    在 Linux 系统下 有时候 我们可能要对一个日志文件进行分析 比如 分析日志文件中某个单词或者某个特殊字符串出现了多少次 对于匹配统计 一般用到正则方法 下面总结了几个统计字符串个数的方法 方法一 使用 grep 命令 grep o 字
  • Python自动化测试 软件测试最全教程(附笔记),看完就可就业

    最近看到很多粉丝在后台私信我 叫我做一期Python自动化测试的教程 其实关于这个问题 我也早就在着手准备了 我录制了一整套完整的Python自动化测试的教程 都上传在B站上面 大家有兴趣的可以去看一下 Python自动化测试 手把手教你做
  • springboot不香吗?为什么还要使用springcloud

    1 为什么要使用springcloud 如果我们的服务需要调用另外的一个服务 当然可以通过url 加接口直接调用 但是如果url变动后 我们也要跟着修改 还有可能服务宕机我们也不知道 而且现在只有一个url不具备高可用性 就算有多个url
  • Hudi Log 文件格式与读写流程

    Hudi Log 文件格式与读写流程 背景 对 Hudi 有一定了解的读者应该知道 Hudi 有 COW 和 MOR 两种表类型 其中的 MOR 表会通过日志文件记录文件 写入一个 MOR 表后产生的文件可以观察到 一个 MOR 表数据存储
  • 【LeetCode与《代码随想录》】字符串篇:做题笔记与总结-JavaScript版

    文章目录 代码随想录 主要题目 344 反转字符串 541 反转字符串 II 剑指 Offer 05 替换空格 151 反转字符串中的单词 剑指 Offer 58 II 左旋转字符串 28 找出字符串中第一个匹配项的下标 KMP 还没写 4
  • 我最喜欢的10个顶级数据科学资源,kaggle、TDS、arXiv......

    当我声明数据科学正在成为最受欢迎的工作领域之一时 我想你不会与我争辩 特别是考虑到 哈佛商业评论 将 数据科学家 评为21世纪最性感的工作 在这个领域 我们已经走过了很长的路 从数据科学和机器学习等术语还不为人所知 到一切都聚集在统计学的保
  • systemd[1]: Failed to load SELinux policy. freezing.

    今天早上发现centos7无法启动了 界面提示systemd 1 Failed to load SELinux policy freezing 查到一篇资料说是selinux设置出问题了 他将 etc selinux config文件中的s
  • MATLAB进行模式识别的实验

    一 实验一习题 我猜测是根据最大似然估计法先求出那两个参数的值 然后代入 得到的是只关于x的函数 然后把文本里的1000个数据导入 画图 首先 我先把txt的数据读取到矩阵里面 方便后续处理 用到的函数 1 这里有一个比较详细的fopen的
  • docker部署war包、将容器打包成镜像、镜像导出到本地、镜像推送到dockerhub

    前言 最近公司使用帆软 finereport 报表工具制作数据报表 并且需要将制作好的报表打包成war包通过docker部署 并且将部署好的项目制作成docker镜像 发给客户 下面将部署过程中踩的坑总结一下 想要了解帆软可以点击官方链接查
  • 图片上传服务器系统说明

    图片服务器测试用例 图片上传服务器系统说明 数据库设计 drop database if exists drawing bed create database drawing bed character set utf8mb4 use dr
  • 东风小康为什么是dfsk_自吸这么“香”,为什么现在新车都是涡轮增压

    知乎视频 www zhihu com 开车不带 T 干啥都没劲 车子用了涡轮增压能够显著提升动力 能把一台 能用 的车变成 好用 的车 并且国内的排放法规也越来越严格 使用涡轮增压的同时 也具备了一些节能减排的效果 所以说 自然吸气的车越来
  • Multihead Attention - 多头注意力

    文章目录 多头注意力 模型 实现 小结 多头注意力 在实践中 当给定 相同的查询 键和值的集合 时 我们希望模型可以基于相同的注意力机制学习到不同的行为 然后将不同的行为作为知识组合起来 捕获序列内各种范围的依赖关系 例如 短距离依赖和长距
  • [3dsMax]2018版下拉菜单项的子菜单无法选中

    软件自身问题 安装更新补丁即可解决 不想更新补丁也可以使用键盘的方向键进行选中 补丁百度云链接 https pan baidu com s 1LDxRFwQnR0GSONuz7wcEfA 提取码 6gpk
  • 面试高频的CMS回收器

    CMS回收器 低延迟 想了解更多GC垃圾回收器的知识 可以看下面这篇文章JVM之垃圾回收篇 在JDK1 5时期 Hotspot推出了一款在强交互应用中几乎可认为有划时代意义的垃圾收集器 CMS Concurrent Mark Sweep 收
  • CROSSFORMER: A VERSATILE VISION TRANSFORMER BASED ON CROSS-SCALE ATTENTION 论文阅读笔记

    CROSSFORMER A VERSATILE VISION TRANSFORMER BASED ON CROSS SCALE ATTENTION 论文阅读笔记 这是浙大 腾讯 哥伦比亚大学一起发表在ICCV的一篇文章 文章有三个贡献 一是
  • python-数据分析-numpy、pandas、matplotlib的常用方法

    一 numpy import numpy as np 1 numpy 数组 和 list 的区别 输出方式不同 里面包含的元素类型 2 构造并访问二维数组 使用 索引 切片 访问ndarray元素 切片 左闭右开 np array list
  • javascript,声明变量和导入时,大括号的特殊用法

    作为一个新手 今天看到一段奇怪的代码 定义变量时用大括号把变量名括起来了 还有import时也使用了大括号 import getToken from utils auth let data request 一脸懵 这是啥意思 度娘一番 记录
  • 【读书笔记】-《工业互联网-技术与实践》

    前言 现在的技术发展潮流 基本上往大数据 人工智能的方向发展 但是归根结底 是什么推动了这些技术产业的发展 是什么支撑的 主要说的话 这和互联网的发展息息相关 也就是说现在一些主要的发达国家是如何拓展先技术新领域 并且如何把这些新技术应用到
  • Jina 2.0 快速入门指"北"

    What Why 选择Jina的4大理由 支持所有数据类型 大规模索引和查询任何类型的非结构化数据 视频 图像 长文本 语音 源代码 PDF等 速度极快 云原生 从第一天开始 Jina就是分布式架构 具有可扩展和云原生的设计 支持容器 并行
  • shell脚本 for循环实现文件和目录遍历

    一个for循环实现一个目录下的文件和目录遍历 很实用 root localhost shell order cat test27 sh bin bash print the directory and file for file in ho