如何将linux命令生成的字符串输入变量?

时间:2015-12-15 04:29:25

标签: linux shell

在编写linux shell脚本时,我遇到了一些小问题。

我的代码在下面,我正在努力将修改后的字符串名称输入到名为" fileName"的变量中。如下图所示。然后,我命令echo确定以前的代码运行良好。但是,它什么都不输出。

如何解决这个问题?

for file in ./*.txt
do
fileName=$file | rev  | cut -d. -f2 | rev
     echo {$fileName}
done

正如我所说,echo {$ fileName}没有输出我想要提取的单词。

我期待你的建议:)

1 个答案:

答案 0 :(得分:1)

您需要使用命令替换$()

还可以使用echo获取变量file的值:

fileName="$( echo "$file" | rev  | cut -d. -f2 | rev )"

或者使用Here strings:

fileName="$( rev <<<"$file" | cut -d. -f2 | rev )"