使用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. Sicily 1034. Forest

    题目地址:1034. Forest 思路: 网上很多说用深搜,很任性.......发现广搜也挺好用的,实验课打的(⊙o⊙)…orz........囧. 先找根结点,根据根结点广搜深度,广搜宽度,不过要 ...

  2. 如何让多个Activity共用一个Menu

    我们可以定义一个自己的CommActivity继承自Activity,然后让每个自定义Activity继承CommActivity,就可以做到. 例如: public class CommActivi ...

  3. Android中的自动朗读(TTS)

    Android的自动朗读支持主要是通过TextToSpeech来完成,该类提供了如下一个构造器TextToSpeech(Context context,TextToSpeech.OnInitListe ...

  4. Qt编程之QString 处理换行

    由于之间写过的一篇文章,Unix,windows,Mac里面的换行符不一样,导致处理也不一样,我现在要用QString以行分割(读取的文本文件的里面有换行符).所以要通吃这三种换行符 http://w ...

  5. 【转】C++读写二进制文件

    原文网址:http://blog.csdn.net/lightlater/article/details/6364931 摘要: 使用C++读写二进制文件,在开发中操作的比较频繁,今天有幸找到一篇文章 ...

  6. Function对象

    Function对象是js中很重要的一个元素,js中所有自定义的函数都是Function对象,所以String,Number,Boolean,function等都是Function对象.所以,在使用t ...

  7. iOS BMOB-登录注册手机验证码、邮箱验证

    1.下载BmobSDK 2.把里面的BmobSDK.framework拖到你的工程里面的工具文件夹内. 3.导入类库 CoreLocation.framework.Security.framework ...

  8. Gulp-livereload:实时刷新编码

    实现功能 监听指定目录下的所有文件,实时动态刷新页面 安装(Install) 功能的实现是借助 gulp-connect 插件完成的;所以,首先通过下面命令完成插件安装: npm install -- ...

  9. 通过代码设置radiobutton不同方位图标的两种方法

    更换radiobutton中的图片在xml中很好设置,但对于初学者如何在代码中设置还是不容易找的.没法子,通过看原版api找到两个方法,setCompoundDrawables和setCompound ...

  10. [Protractor] Getting Started With Protractor

    Protractor is an end-to-end testing library for AngularJS. Install: npm install -g protractor This w ...