redhat - tcsh 中的变量替换

标签 redhat tcsh

我已经阅读了 tcsh 的手册,但仍然无法弄清楚它在我的情况下应该如何工作或者是否应该工作。我基本上需要提取值为六位数字的变量的一部分。所以我需要删除前两个字符并检索最后四个字符。

下面的示例不起作用(它可能在 bash 中起作用,但必须使用 tcsh):

set VAR1 = value1
set VAR2 = `echo ${VAR1:2}`
echo VAR2

它出现错误 Bad :$ (2) 中的修饰符,显然是因为它是 bash 语法并且 tcsh 无法理解,但无法弄清楚如何使用 tcsh 参数来做到这一点。

最佳答案

我不确定是否使用修饰符,但您可以使用 cutsed 对字符串进行切片:

set VAR1=abcdef

“剪切”字符 3 到末尾

echo $VAR1 | cut -c3-

捕获除前 2 个字符 (..) 之外的所有内容 (\(.*\))

echo $VAR1 | sed 's/..\(.*\)$/\1/'

关于redhat - tcsh 中的变量替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25667373/

相关文章:

c - linux 中的 stat 系统调用返回错误

sed:用下划线替换引号内的空格

linux - 与 TCSH 中的 App 在同一文件夹中共享库

linux - 在 tcsh 中定义 shell 环境变量

linux - 在Linux服务器上设置git

mysql_install_db 给出错误

Linux 上低磁盘空间条件下的 Java 属性文件

linux - Jenkins HTMLPublisher 插件未显示在仪表板上

file - 使用 tcsh 终端创建多个空文件

bash - 最小输入命令行计算器 - tcsh vs bash