我目前正在使用csh shell。 每次我想编译我的代码,我都要做很多cd的东西。
例如{
cd ~/path1/path2/path3
make depend
make
make install
}
我想知道是否可以添加内容(例如: .cshrc文件) 所以我可以定义一个新的关键字,它可以替换我之前输入的所有命令,以节省一些时间。
答案 0 :(得分:0)
听起来你正在寻找alias
。
如果您只想将问题中的命令作为新命令运行,并且您不想将它们放在脚本中,则可以在.cshrc
脚本中创建一个别名,如下所示:
alias foo 'cd ~/path1/path2/path3 && make depend && make && make install'
现在,在shell中运行foo
将运行所有这些命令。如果任何一个命令失败,将停止运行命令列表。 (这就是&&
的用途。)
您可以使用看起来像历史记录替换的表示法来检索别名中的选项。例如:
alias foo 'cd ~/path1/path2/\!:1 && make depend && make && make install'
这样您就可以运行类似foo bar
的内容,别名cd ~/path1/path2/bar
。请注意,这只是替代;在这种情况下,如果您省略该选项并运行foo
,则make
的{{1}}链将在~/path1/path2/
中运行。如果这是一个问题...编写shell脚本而不是使用别名。