linux - 如何在 csh/tcsh 中写一个可以用 shebang 写一个文件的别名?
问题描述
我想用我的别名编写一个脚本,但无法使用 echo 命令在我的脚本中添加 bang 行。我尝试了这些方法:
alias wnc 'echo "#\!/bin/csh " > cshCMD.csh; echo "ncl" >> cshCMD.csh; chmod +x cshCMD.csh; '
alias wnc "echo '#\!/bin/csh ' > cshCMD.csh; echo 'ncl' >> cshCMD.csh; chmod +x cshCMD.csh;"
如果我在没有别名的情况下运行这些行,那么它们对我有用。
echo "#\!/bin/csh " > cshCMD.csh; echo "ncl" >> cshCMD.csh; chmod +x cshCMD.csh;
通过直接输入和使用命令,我将在文件 cshCMD.csh 中获取数据:
#!/bin/csh
ncl
而当我在命令行上使用别名时
wnc
我收到了这条消息:
/bin/csh: Event not found
解决方案
你需要一个\!
在你的别名的扩展,所以你必须\\!
在定义它的时候使用。第一个反斜杠在别名定义命令的处理过程中消失,第二个反斜杠在!
别名运行时保护。
推荐阅读
- php - Magento2 根据帐单地址和 VIES/VAT 验证自动更改组
- r - 如何在 R 中按年(不在后续行中)计算年销售额差异?
- operating-system - 计算机体系结构中的吞吐量与延迟
- windows - 如何破解 Windows 用户空间中的麦克风驱动程序数据
- amazon-web-services - 在 ec2 上为 aws codedeploy 创建 bitbucket 管道时显示错误
- docker - lambda容器中的超时“导入张量流”
- php - Laravel Eloquent 多表
- javascript - 收到错误“请求的模块'./three-csg.js'不提供名为'CSG'的导出”
- javascript - 从 [JSON 文件] 访问数据时,它显示未定义 In react js
- php - 在单引号和双引号内插入 php