别名外壳变量取消引用

slashlos

我在路径中移动了很多,并尝试使用别名集来最小化键入:

alias restore       'set restore=\!*; cd \$${restore}'
alias save          'setenv \!* `pwd`'

我正在使用tcsh; 保存有效,但恢复失败:

2% save x
2% cd
2% restore x
$x: No such file or directory.

我检查了var(x),这很好,所以我没有取消引用吗?

shx2

这有效:

alias restore ' cd ` echo $\!* ` '

您最初的尝试可以更好地写为:

alias restore ' cd \$\!* '

此操作(和您原来的操作)无效,因为需要先进行变量扩展,并且在这种情况下,因为$被转义,所以没有变量扩展!*扩大,没有另一个变量扩展的发生。

在我提出的解决方案中,我避免$通过echo在子shell中运行a来进行转义,因此它可以正常工作。


只是为了确保您知道pushdpopd,对吗?对于大多数用户而言,这些功能足够有用且功能强大,尽管我当然可以在此处看到您别名中的值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

创建变量的别名/引用(JAVA)

来自分类Dev

通过文本别名引用Javascript变量

来自分类Dev

使用const引用对变量进行别名化

来自分类Dev

Swift:通过对变量的引用或“别名”影响结构

来自分类Dev

存储变量并取消引用它们

来自分类Dev

如何在CSH中取消引用变量

来自分类Dev

多次取消引用指针与创建临时变量

来自分类Dev

取消注销并返回外壳

来自分类Dev

外壳变量内部变量

来自分类Dev

外壳变量内部变量

来自分类Dev

警告的后果“取消引用类型化的指针将破坏严格的别名规则”

来自分类Dev

调用free()包装器:取消引用类型标记的指针将破坏严格的别名规则

来自分类Dev

需要帮助解决警告:取消引用类型双关指针将破坏严格别名规则

来自分类Dev

取消引用类型为class的标量变量

来自分类Dev

perl是否具有内部功能来取消引用变量?

来自分类Dev

为什么有时在匹配中取消引用变量?

来自分类Dev

在外壳程序脚本中使用*变量引用文件夹中的所有文件

来自分类Dev

从 Firebase 函数外壳调用引用本地配置变量的 firebase 函数时出错

来自分类Dev

在zsh中取消别名的全局别名

来自分类Dev

在zsh中取消别名的全局别名

来自分类Dev

外壳变量的For循环

来自分类Dev

读取环境/外壳变量

来自分类Dev

外壳变量替换问题

来自分类Dev

定义外壳变量

来自分类Dev

如何在函数中引用和取消引用变量以及如何遍历数据框

来自分类Dev

如果被别名隐藏,则使用外壳保留字

来自分类Dev

一次创建多个外壳别名

来自分类Dev

取消引用类型标记的指针将破坏严格的别名规则:将字节数组转换为数字

来自分类Dev

C ++将取消引用指针对象分配给变量并使用该变量

Related 相关文章

热门标签

归档