加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

BASH脚本 – 执行带变量和存储结果的命令

发布时间:2020-12-16 01:28:02 所属栏目:安全 来源:网络整理
导读:我不知道如何使用变量执行命令并得到结果. 我有很多.h和.c文件,我需要将每个从ISO-8859转换为UTF-8. 所以我做: ls | grep ".[ch]" | xargs myscript.sh 在我的脚本中变量$1是文件名.现在我需要表演 iconv -f ISO-8859 -t UTF-8 $1 并存储此结果,因为iconv
我不知道如何使用变量执行命令并得到结果.
我有很多.h和.c文件,我需要将每个从ISO-8859转换为UTF-8.

所以我做:

ls | grep ".[ch]" | xargs myscript.sh

在我的脚本中变量$1是文件名.现在我需要表演

iconv -f ISO-8859 -t UTF-8 $1

并存储此结果,因为iconv打印到stdout.

result=`iconv -f ISO-8859 -t UTF-8 $1`

echo $result

这似乎不起作用,因为它给了我一些不匹配而不是转换$1.

如果您需要首先对数据进行某种转换,可以使用以下语法“捕获”输出:
result="$(iconv -f ISO-8859 -t UTF-8 $1)"

这里还有一个问题:如果你要存储大量具有潜在空白或其他有问题的字符的数据,请务必始终引用变量(“$result”而不是$result)以确保它获得作为单个字符串处理.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读