linux csh 配置 alias

记一次配置alias遇到的问题

背景

刚到一家公司没多久,使用linux跳板机时,发现每次登陆目标主机时,都需要重新输入 ssh 等命令了,于是就想着去加一下alias吧。
更以前以前一样:直接vi .bashrc,增加alias 语句就好了,
一顿操作配置完了:
配置完.bashrc

alias kccl=‘kubectl config get-contexts‘
alias kccu=‘kubectl config use-context‘

source的时候报错了:
source .bashrc

if: Expression Syntax.
then: Command not found.

问题排查

提示语法不对?
没遇到过,网上查查吧,有人提到可能是环境变量不同,

echo $SHELL
/usr/bin/csh

csh和bashrc有什么不同?
是两个不同shell的环境变量配置文件,原来这个台服务器是cshell的环境。要用csh配置文件。

ls -a 看一下,发现没有这个.cshrc文件。只能从网上找一个来了。

解决

cat .cshrc

setenv LANG zh
setenv OPENWINHOME /usr/openwin
 
set path=( /usr/SUNWale/bin $OPENWINHOME/bin $path) 
 
...
 
if ($?USER != 0 && $?prompt != 0) then
   /bin/stty cs8 -istrip defeucw
endif
# 前面这段必有
alias findAll ‘find . -name "*.h" |xargs grep -n ‘
alias test‘ssh ‘

在执行source .cshrc
...: Command not found.
/bin/stty: invalid argument ‘defeucw‘
Try ‘/bin/stty --help‘ for more information.
但是alias生效了

相关推荐