csh 命令基本介绍csh(C Shell) 是 Unix/Linux 系统中的一种命令行解释器由 Bill Joy 于 1978 年编写。csh 的语法风格类似于 C 语言提供了命令历史、别名、作业控制等功能。虽然现在使用不如 bash 广泛但在某些系统和脚本中仍然可见。资料合集https://pan.quark.cn/s/6fe3007c3e95、https://pan.quark.cn/s/561de99256a5、https://pan.quark.cn/s/985f55b13d94、https://pan.quark.cn/s/d0fb20abd19a语法csh[选项][脚本文件]启动选项选项说明-c command执行指定的命令后退出-i启动交互式 shell-l作为登录 shell 启动-r启动受限 shell-s从标准输入读取命令-v显示读取的输入行-x执行命令前显示命令及其参数-f不读取启动文件常用内置命令文件和目录操作命令说明cd dir切换目录pwd显示当前目录mkdir dir创建目录rmdir dir删除空目录rm file删除文件或目录cp src dst复制文件mv src dst移动或重命名文件变量和环境命令说明set varvalue设置变量setenv var value设置环境变量unset var删除变量unsetenv var删除环境变量env显示环境变量echo text输出文本set显示所有变量流程控制命令说明if (condition) command条件判断单行if (condition) then ... endif条件判断多行switch (value) case pattern: ... breaksw endsw多条件分支foreach var (list) ... end循环while (condition) ... end条件循环break跳出循环continue继续下一次循环作业控制命令说明amp;后台执行命令jobs显示后台作业fg将后台作业调至前台bg将前台作业放至后台历史命令命令说明history显示命令历史!!重复上一条命令!n重复第 n 条命令!string重复最近以 string 开头的命令使用示例1. 启动交互式 shellcsh2. 执行单个命令csh-cecho Hello World3. 执行脚本文件csh script.csh4. 作为登录 shell 启动csh-l5. 调试脚本显示执行的命令csh-xscript.csh6. 设置变量setnameJohnecho$name7. 设置环境变量setenvPATH/usr/local/bin:$PATH8. 条件判断单行if(-f /etc/passwd)echoFile exists9. 条件判断多行if(-f /etc/passwd)thenechoFile existsendif10. 循环遍历foreach i(123)echo$iend11. 重复命令历史!!# 重复上一条命令!ls# 重复最近以 ls 开头的命令12. 设置别名aliasllls -laaliasgstgit status配置文件系统级配置/etc/csh.cshrc- 全局 csh 配置/etc/csh.login- 全局登录 shell 配置用户级配置~/.cshrc- 用户 csh 配置~/.login- 用户登录时执行的命令~/.logout- 用户退出时执行的命令特殊变量变量说明$0脚本名$1-$9位置参数$argv所有位置参数$status上一条命令的退出状态$cwd当前工作目录$USER当前用户名$HOME用户主目录$PATH命令搜索路径实用技巧1. 查看命令历史history2. 搜索命令历史history|greppattern3. 目录跳转cd~/Documentscd..# 返回上级目录cd-# 返回上一次所在目录4. 管道和重定向ls-la|grep.txtoutput.txt5. 后台执行sleep10amp;6. 查看别名alias与 bash 的区别特性cshbash语法风格C 语言风格Bourne 风格变量赋值set varvaluevarvalue环境变量setenv var valueexport varvalue条件判断if (condition)if [ condition ]循环foreachfor数组支持支持正则表达式有限支持支持兼容性有限广泛相关命令命令说明bashBourne-Again ShellshBourne ShellzshZ ShelltcshTENEX C Shellcsh 的增强版kshKorn Shell注意事项安装部分系统需要先安装 cshapt install csh或dnf install csh语法差异csh 的语法与 bash 不同需要学习新语法兼容性bash 脚本不能直接在 csh 中运行配置文件配置文件位于~/.cshrc和~/.login使用场景主要用于兼容旧系统和脚本新脚本建议使用 bash总结csh是 Unix/Linux 系统中的一种传统 shell采用 C 语言风格的语法。虽然现在使用不如 bash 广泛但它在某些系统和旧脚本中仍然可见。了解 csh 有助于维护和理解遗留系统。