CSH 入门基础 2 -- csh(C Shell)对文件/目录的判断及对参数的处理

news/2024/11/30 7:35:30/

文章目录

    • 1.1 csh 对文件的判断
    • 1.2 csh 脚本对参数的判断处理

1.1 csh 对文件的判断

在 csh中,可以使用以下语法来判断文件和目录是否存在、是否可读、可写或可执行:
判断文件是否存在if (-e filename) then ... endif
判断目录是否存在if (-d dirname) then ... endif
判断文件或目录是否可读if (-r filename_or_dirname) then ... endif
判断文件或目录是否可写if (-w filename_or_dirname) then ... endif
判断文件或目录是否可执行if (-x filename_or_dirname) then ... endif

其中,filename 和 dirname 分别表示文件名和目录名,filename_or_dirname 表示文件名或目录名。如果判断条件为真,则执行if语句块中的命令,否则不执行。

以下是一个使用csh判断文件是否存在的示例:

#!/bin/cshset filename = "test.txt"if (-e $filename) then echo "$filename exists" 
else echo "$filename does not exist"
endif 

在这个示例中,判断文件 test.txt 是否存在,如果存在,则输出"$filename exists",否则输出"$filename does not exist"。

1.2 csh 脚本对参数的判断处理

在csh中,可以使用以下语法来判断命令行参数的个数、是否存在以及获取它们的值:

判断命令行参数个数:if ($#argv == n) then ... endif,其中 n 为期望的参数个数。
判断命令行参数是否存在:if ("$1" != "") then ... endif,其中$1表示第一个参数,如果不为空,则参数存在。
获取命令行参数的值:set arg = $n,其中n为参数的位置,arg为变量名。

以下是一个使用csh获取命令行参数并判断参数个数的示例:

#!/bin/cshif ($#argv != 2) then echo "Usage: $0 arg1 arg2" exit 1 
endifset arg1=$1 
set arg2=$2echo "arg1=$arg1" 
echo "arg2=$arg2"

在这个示例中,首先判断命令行参数的个数是否为2,如果不是,则输出使用说明并退出程序。如果参数个数正确,则分别获取第一个参数和第二个参数的值,并输出它们的值。


http://www.ppmy.cn/news/487180.html

相关文章

小白到运维工程师自学之路 第三十七集 (mha高可用集群)

一、概述 MHA(Master High Availability)是一个开源的MySQL高可用性解决方案,它可以自动监测MySQL主节点的状态,并在主节点发生故障时自动将从节点提升为新的主节点,从而实现MySQL的高可用性。MHA集群通常由多个MySQL实…

Yolov8优化:引入Soft-NMS,提升密集遮挡场景检测精度

1.Soft-NMS介绍 论文地址:https://arxiv.org/pdf/1704.04503.pdf NMS需要优化的参数: IoU 的阈值是一个可优化的参数,一般范围为0~0.5,可以使用交叉验证来选择最优的参数。 R-CNN会从一张图片中找出n个可能是物体的矩形框,然后为每个矩形框为做类别分类概率: 就…

中星9号接收机各厂家芯片资料大全和升级接口针脚定义

品牌 产品型号 芯片配置 海尔 2晶10芯 IC:HI2023E11085812 海尔高清OST-666 2晶6芯 IC:M88VS2000241674K.1M88TS2020 海尔高清OST-666 3晶12芯 IC:High032EHis121M88TS2020 海尔 3晶10芯 (9针接口) IC:HI2023E11085812ESMTM12L64164A-GNR1T80AB 海尔高清OST-666 2晶6芯 I…

两轮车造爆款,爱玛的时尚战略胜算几何?

市场越卷,爆款的意义越大。 电动车行业就是这样(本文仅指两轮电动车,如电动自行车、电动摩托车等出行工具),在CR2>45%、CR8>80%的市场格局下,行业竞争早已进入巷战阶段。 对头部的几个品牌&#xf…

循踪讲述:成都的夜,有一盏灯为你亮

成都的夜晚总是这样,热闹而梦幻。霓虹灯下的酒吧一条街,你看着手里冒着蒸汽的小龙虾,却心里想着那个人。那个曾经一起在脚手架上挥汗如雨,携手走过平淡岁月,然后在灯红酒绿的生活里逐渐远离的人。 他,一个手…

ios设备解锁---iToolab UnlockGo mac

怎么解锁iPhone / iPad呢?iToolab UnlockGo可以快速从iPhone,iPad和iPod touch删除屏幕密码,只需几分钟!能够删除iCloud激活锁,从iPhone,iPad和iPod touch解锁iCloud激活锁并能够进入您的设备! …

解决MacBook合盖锁屏

一、在App Store下载软件Amphetamine 二、打开软件后点击偏好设置-触发器,新增一个触发器 三、其中,取消选择“当显示器睡眠时允许系统睡眠”,新增触发条件-显示器,显示器数量输入1,添加触发条件,点击保存 …

苹果M1 iPad Pro 有什么新功能?

5 月 27 日消息 流行的 iOS 相机应用 Halide 开发者 Sebastiaan de With 今天分享了新的 11 和 12.9 英寸 iPad Pro 的摄像头分析,并发现了其隐藏的微距功能。iPad Pro 的摄像头采用了与 iPhone 摄像头不同的镜头设计,这使得它能够对离传感器更近的东西进…