位置: 编程技术 - 正文

Csh的基本语法介绍(cshrc语法)

编辑:rootadmin

推荐整理分享Csh的基本语法介绍(cshrc语法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:csh $?,cs短语,csh $?,csh $?,cs的用法,cshrc语法,cshrc语法,csh 语法,内容如对您有帮助,希望把文章链接给更多的朋友!

在*unix系统中,常用的shell有sh,bash,csh/tcsh, ksh.

sh来自于systemV的Unix,是传统的Unix的shell,直到现在很多的系统管理员仍然喜欢使用sh。bash来自于BSD Unix,语法非常类似于C语言,所以通常有C/C++编程背景的开发人员最喜欢使用。ksh是对sh的扩展,且吸收了csh的一些有用的功能,但是由于开始ksh的license是AT&T,所以后来出现了很多的ksh的开源版本,例如mksh,pdksh等。bash是现在很多Linux的发行版中默认的shell,综合了其他shell的很多优点。

下面描述csh的一些基本的语法(在sh环境中执行csh切换到csh环境):

1) 变量

通过set来定义局部变量x,通过$x或${x}来使用变量x的值,$%x表示变量的值的长度, $&#;x来判断变量x是否设置,如设置则为1,否则为0。

全局变量的定义setenv v value 该变量将被此shell派生的所有子shell继承。

$$表示当前进程的PID, $status 或 $&#; 表示退出状态。

2)数组

定义数组myarr, 通过$myarr[index]来访问数组中的值,注意index是从1开始的。通过$myarr或$myarr[*]来访问数组所有的元素。通过$#myarr来查看元素的个数。

3)命令替换

通过set x = `cmd`来执行命令,且结果赋值给变量。

4)命令行参数

通过$argv[1],$argv[2]或$1,$2来访问命令行参数。命令行参数的个数为$#argv。

5)文件名扩展的元字符

只能使用&#;,*,[abc],[a-c]。

6)IO重定向和管道

将命令的输出重定向到文件为>。将命令的输出重定向并追加到文件为>>。将命令的输入重定向到文件为<。将命令的报错信息重定向到一个文件(cmd>/dev/tty)>&errors。将命令的输出和错误输出分别重定向(cmd > goodstuff) >& badstuff。

将命令的输出和报错信息重定向到一个文件cmd>&file。将命令的输出经管道发往另一个命令cmd|cmd.将命令的输出和报错信息经管道发往另一个命令cmd|&cmd。条件语句为 cmd && cmd 或 cmd || cmd。command<<WORD 表示将command的输入重定向为从第一个WORD处开始,到下一个WORD处之间的内容(即here文档)。

7)从键盘读取并保存到变量中

8)算术

9)代字符号扩展

~username 表示username的home目录。

)别名

alias m more 为more创建别名m。alias 列出所有的alias。unalias m 用来删除more的alias定义。

)初始化文件

.login 在登录时执行的文件。.cshrc 在每次调用shell时都执行的文件。

Csh的基本语法介绍(cshrc语法)

) label 和 goto

csh中没有函数的概念,使用类似windows批处理中的label和goto。

) if/else/switch/case

while/foreach

、repeat

repeat表示重复执行后面的命令。

、csh中设置环境变量PATH的方法

csh中使用path代替PATH,设置类似于数组的使用。

、source等价于其他shell中的.

source使得程序在当前的shell中被执行,而不是派生子进程来执行。

、转义字符与单双引号

引号必须成对出现,而且必须在同一行上配对。可以用反斜杠来转义换行符,这样就能在下一行配对了。单引号可用于保护双引号,双引号也可以用来保护单引号。单引号保护除历史字符(!)之外的所有元字符不被解释。双引号保护除历史字符(!),变量替换字符($)和反引号(用于命令替换)之外的所有元字符,使其不被解释。

、历史command

history用来查看command执行的历史。!!用来执行上一条命令。

、pushd和popd用来维护目录栈

、csh -vx用来显示输入的原样和变量替换后的脚本,用来帮助调试。

、在脚本中处理中断

onintr 命令后跟一个标号名,finish是用户自定义的标号。如果发生中断,控制将被转移到finish标号。通常该行位于脚本的开头。除非当程序正在执行时按ctrl+C(中断键),此时控制将被转移到该标号。onintr - 表示屏蔽所有的中断,此时按下ctrl+C将会被忽略。

、noclobber 禁止覆盖变量,设定 $noclobber 预设变量改变输出重定向特性.

变量设定语法 set noclobber

取消变量设定语法 unset noclobber

这个 noclobber 变量,它的功能便是停止重定向符号“>”的覆盖(overwiting)已存在文件以及符号“>>”要将字符写入一个不存在的文件时,自动产生该文件的特性。

仅用两个例子让读者明白,设定后的实际使用状况。

例子一:

例子二:

CentOS 6.x系统升级Python到2.7版本的Shell脚本分享 在CentOS6.x上,默认自带的Python是2.6.x版本,这个版本的Python有点老了,比如collections.OrderedDict就是2.7才有的,而且著名的PythonWeb框架Django的新版(如:1.7

Linux下交互式与非交互式修改用户密码的例子 最近管理的一批机器,有个需求是要统一修改一个帐号的用户名密码,比如将qa帐号的密码改为,后来还为了脚本化,很方便的执行,还使用了非交

Shell中的函数、函数定义、作用域问题介绍 说起函数调用,相信大家也不会陌生,然而对于初学Shell的我来说,Shell中函数调用方式却有点让我不太习惯,自己也走了不少的弯路,因为传递参数时

标签: cshrc语法

本文链接地址:https://www.jiuchutong.com/biancheng/379886.html 转载请保留说明!

上一篇:csh脚本语法实例(csx脚本)

下一篇:CentOS 6.x系统升级Python到2.7版本的Shell脚本分享(centos6升级到centos8)

  • 非营利组织企业所得税
  • 增值税查询校验码是什么
  • 会计凭证借贷方向
  • 如何查询开出的全电发票
  • 住宿费收据属于什么凭证
  • 建筑企业有哪些
  • 财务负责人和法人可以是夫妻吗
  • 赠送客户的产品计入销售费用的二级科目
  • 商品盘点短缺和溢余的核算
  • 企业所得税税前扣除和不扣除的区别
  • 小规模纳税人开了3%的专票还能享受1%
  • 无法支付的应付款怎么处理
  • 上年度没有计提企业所得税
  • 未计提企业所得税怎么写分录
  • 以银行存款退还投资者股金
  • 计提固定资产减值准备属于什么支出
  • 企业承租经营的承租人取得的所得
  • 对方收到发票不付款怎么办
  • 进项税额一直大于销项税额
  • 增值税进项税额转出是什么意思
  • "税务 政策"
  • 个人承担的社保费有哪些
  • 多计提企业所得税费用会计分录
  • 增值税纳税申报实训心得体会
  • 政府补助专项资金账务处理
  • 销售收入大于纳税申报销售收入
  • 什么是短期借款利率
  • windows server 2003 r2 序列号
  • 发生利息收入的分录
  • 企业社保参保人数查询
  • thinkphp5框架介绍
  • anyproxy提高公众号文章采集效率
  • php curlfile
  • powerremind.exe
  • 公司报销之后钱发到哪
  • 十大网页游戏
  • mac vue搭建本地环境
  • php三级分销思路
  • HTTP 错误 500.19- Internal Server Error 错误解决方法
  • opencv dng
  • php7 openssl
  • php魔术方法功能与用法实例分析
  • 法人为什么不能领取失业金
  • 识别假人民币的简便方法
  • PostgreSQL教程(一):数据表详解
  • 把mysql移到其他盘
  • 材料采购的账务怎么处理
  • 企业所得税的计税步骤
  • 小规模不开票怎么做账
  • 收到政府补贴如何入账
  • 现金等价物的特征是
  • 转让专利权收入属于什么收入
  • 消费税的计税方式有哪几种?
  • 收到外国人的礼物怎么感谢
  • 资本公积的主要用途是什么?
  • 公司办理网银
  • 因为培训发生的事情
  • 小规模收入不超过多少不用交税
  • 营改增后不动产发票怎么开
  • 汇率的差额如何处理
  • 事业单位小规模纳税人咨询服务的税率
  • 苗木补偿款
  • CentOS 7中安装mysql server的步骤分享
  • sql server储存过程的创建与使用
  • mysql5.7主从配置 博客园 my cnblog
  • 安装sqlserver2016步骤
  • 强化系统设计
  • mac如何查看隐藏的文件夹
  • ubuntu adb找不到设备
  • u盘背景图片设置方法
  • win7系统如何查看内存条型号
  • html中title的作用
  • popup怎么用
  • 菜鸟教程javaweb
  • jquery判断对象是否存在
  • js点击代码
  • 谈谈我对秦始皇的看法
  • 河南税务报到
  • 房租收入影响个人所得税汇算
  • 云南省昆明市税收优惠政策
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设