使用set和setenv命令可以设置shell选项或者列出shell变量
在C Shell 里, set 定义局部变量, setenv定义全局变量
 
1.set
 
set 变量名 = 内容: s2 E1 D! R. w- I+ T# ?
set 变量名 =(内容1 内容2 )& _8 M; k* g+ S# c7 l
set 变量名 ="内容1 内容2"
/ T! G" U. o8 o" O  a* S! H! J0 {
 
2. setenvg- i2 H6 p3 q1 @

setenv 变量名 内容3 n, f- D9 d" \8 N) Q: H9 [4 S
setenv 变量名 "内容1 内容2"2 D/ }+ w7 S- j( a2 M+ b7 v
setenv 变量名 '内容1 内容2'

3.alias
alias 化名称 原文件名! j6 F# P4 ~1 o8 S0 m
alias 简化名称 "原文件名 参数"9 J% R, x  o% e' p5 K

e" w9 ~9 Z- P4 ^( N
3. 调用2 `% f% r$ Z; r+ z) I9 p

set 和setenv 在调用时均需要加"$"符号,表示调用变量所指代的量。$ j' U( ]4 h; ~) g0 y
alias 直接使用

4.使用事项2 [: g7 H% M3 k& g  A% q+ ?
1 K- U) g9 s7 E' g! C$ K
set的实用范围最广,在环境变量定义的实际使用中,可以涵盖senenv的使用范围,并且也可以覆盖alias,但不如 alias在其使用范围内来得更简化。

3 g: L$ f3 Q" E! f
5. 使用实例和验证方法" y1 W- c, `7 e% Z  r
(1)
                        B0 set path =(/usr/bin /usr/local/bin /sbin /bin usr/X11R6/bin $path)
, j  \8 Y* I0 O. O8 W
setenv path "/usr/bin /usr/local/bin /sbin /bin usr/X11R6/bin $path"
 
但是应用setenv命令去定义path变量时,在某些linux系统中不能有效的完成path定义。
. X$ `" k+ i/ N5 t
验证:如,建立 set path=/sbin 进而执行fdisk(fisk在/sbin路径下),结果可执行。
建立 setenv path /sbin 进而执行fdisk(fisk在/sbin路径下),结果不一定可执行。
( j+ M6 ]9 C1 Q" G% U; \2 h' d; n
 
(2) setenv userhome1 /home/user/1dir. M  g! |6 Y1 X0 _! _! L: }3 Q
相当于
      set userhome1 = /home/user/1dir
用set命令同样可以定义此类"名词性"变量,完全符合结果T+x

w) I% s+ \% F8 i+ A8 `
( ~# B, z! s3 \! K0 }
验证:如,建立set h=/home, 进而执行 cd $h, 用pwd查看结果。. L; T; ~7 d. x. G* CJ

L$ I
建立setenv h home, 进而执行 cd $h, 用pwd查看结果。0 B5 l0 n- m/ ~$ ]2 T

(3)
alias用来"动词性"语句的快捷方式,如,alias set60 "setenv DISPLAY 192.168.0.60:0" 
alias c clear, 执行c验证结果,可行。
set d =pwd 执行$d验证结果,可行。% o. u, D$ M) O% A- L0 _
setenv d pwd 执行$d验证结果,可行。

6.延伸

以上均为cshrc环境变量,在linux下默认bsh,二者之间的在实际使用中的基本点如下:) \! j% D2 S' t; @( |* H
* K: i% K& M' S. Y; ]

(1). bsh和csh的不同5 I1 [  h5 }! |% A5 z0 E( A

假如习惯了linux的bash,那么继续用。 
% ^+ P3 j$ `. H. _) o" c
如果厌倦了bash或者没用过任何shell,推荐用tcsh.

bsd的tcsh非常出色,尤其极其智能的命令历史回滚和Tab命令补全有机结合起来。

(2).如何变bsh为csh5 n0 Q6 k  F- c: p' ?% p3 _3 _

修改/etc/passwd 文件中对应于用户的那一行的最后一项, 将'/bin/bash' 改为 '/bin/csh'& J) k+ g* J$ H' j5 t5 h; i
, z9 G; t# U6 b: n9 Y
新建用户时,在linux中,会将所需的配置文件从/etc/skel拷贝到用户主目录中,/etc/skel保存着所有用户都共享的缺省文件,如.bashrc,.bash_profile

.cshrc的更多相关文章

  1. (转载)linux下各个文件夹的作用

    linux下的文件结构,看看每个文件夹都是干吗用的/bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的基 ...

  2. Linux上oracle精简版客户端快速部署

    RHEL6 + Oracle 11g客户端快速部署 需求:只是用到客户端的sqlplus, sqlldr功能. 方案:用精简版实现客户端的快速部署 1.上传oracle精简版客户端到服务器/tmp目录 ...

  3. Linux 平台静默安装 Oracle客户端

    需求:Linux平台,安装完整版Oracle客户端 Tips:如果只是用到sqlldr,sqlplus功能,可以参考<Linux上oracle精简版客户端快速部署>快速部署精简版:如果需要 ...

  4. linux shell中不显示路径了,显示为-bash-4.1#的两种解决办法

    出现这个问题的原因是因为没有配置.bash_profile的问题,或者是我们不小心清空或删除了.bash_profile文件. 办法一:修改 ~/.bash_profile文件 步骤如下: vim ~ ...

  5. 在 Azure 上使用 Docker运行 Mono

    Docker 是最近相当热门的一个名词,它是一个基于 Linux Container 的轻量化的虚拟技术,而微软也相当积极与 Docker 合作,在 Azure 上支持这个火热的技术,并且提供简单的方 ...

  6. [moka同学笔记]Linux命令基本格式及目录处理命令

    命令提示符 [root@localhost ~]# root:当前登录用户localhost:主机名~:当前所在的目录,此处为"家"目录#:root超级用户的提示符,如果是普通用户 ...

  7. linux文件目录详解

    文件系统的是用来组织和排列文件存取的,所以她是可见的,在Linux中,我们可以通过ls等工具来查看其结构,在Linux系统中,我们见到 的都是树形结构:比如操作系统安装在一个文件系统中,他表现为由/起 ...

  8. 第2章 Linux系统安装(2)_Linux系统分区及文件系统

    2. 系统分区 2.1 分区类型 (1)主分区:最多只能有4个 (2)扩展分区 ①最多只能有1个,主分区加扩展分区最多有4个. ②不能写入数据,只能包含逻辑分区 (3)逻辑分区 2.2 格式化(高级格 ...

  9. RHEL7 CentOS7 检查查看精简指令

    RHEL7 CentOS7 检查查看精简指令: //////////////////////////检查查看精简指令://///////////////////////////// ///////// ...

随机推荐

  1. CF-Approximating a Constant Range

    Description When Xellos was doing a practice course in university, he once had to measure the intens ...

  2. angular 数据加载动画 longding

    由于公司服务器架构不行,每次加载数据都要很久,但是都是使用angular来渲染数据,不像jquery有beforsend什么的方法, 这是一个github上找的,很轻使用也很简单 1.安装  npm ...

  3. C语言自动类型转换

    自动转换遵循以下规则: 1) 若参与运算量的类型不同,则先转换成同一类型,然后进行运算. 2) 转换按数据长度增加的方向进行,以保证精度不降低.(eg:int型和long型运算时,先把int量转成lo ...

  4. hibernate jpa 注解 @Temporal(TemporalType.DATE) 格式化时间日期,页面直接得到格式化类型的值

    1.日期: @Temporal(TemporalType.DATE) @Column(name = "applyDate", nullable = false, length = ...

  5. iOS中block实现的探究

    [0. Brief introduction of block] Block是iOS4.0+ 和Mac OS X 10.6+ 引进的对C语言的扩展,用来实现匿名函数的特性. 用维基百科的话来说,Blo ...

  6. android2.3 View视图框架源码分析之一:android是如何创建一个view的?

    View是所有控件的一个基类,无论是布局(Layout),还是控件(Widget)都是继承自View类.只不过layout是一个特殊的view,它里面创建一个view的数组可以包含其他的view而已. ...

  7. HBase学习(十四)LINUX下用Eclipse构建HBase开发环境

    Eclipse,HBase版本号眼下没有发现须要特别指定 1:从HBase集群中复制一份Hbase部署文件,放置在开发端某一文件夹下(如在/app/hadoop/hbase096文件夹下). 2:在e ...

  8. hdu5067Harry And Dig Machine(TSP旅行商问题)

    题目链接: huangjing 题意:给出一幅图.图中有一些点,然后从第1个点出发,然后途径全部有石头的点.最后回到原点,然后求最小距离.当初作比赛的时候不知道这就是旅行商经典问题.回来学了一下. 思 ...

  9. cocos2d-x CCAction(转载)

    接触开发2d后,越来越多的用到动作的内容,看到一篇关于动作比较完整的文章,最主要的是动作的类图,从类图可以更加的理解各个类之间的继承的关系,以及使用更容易的去应用 . 文章有一些方法已经被修改了,现在 ...

  10. web开发小白之路

    今天就来谈谈本人从事web开发的一系列白只又白的经历,本人刚开始是从事ios开发的,由于一系列的变故现在变为了web前端开发,不过说来也奇怪,刚开始接触前端时间可以说是彻底蒙圈,各种选择器,各种适配搞 ...