在变量赋值期间if是什么意思

时间:2016-03-14 21:02:47

标签: linux bash

我正在阅读几个BASH脚本。我偶然发现了这样的事情

VAR_S=$(dd if=${MY_FILE} bs=16 count=1 skip=1024 iflag=skip_bytes 2>/dev/null | hexdump -e '16/1 "%02x"')

显然,变量VAR_S不应为空,我试图围绕这个陈述。 if=${MY_FILE}在这里意味着什么。我试图找出为什么VAR_S在回显它时返回空。在我看来,if是一个简单的变量赋值MY_FILE。在那种情况下,我不理解赋值的重要性,为什么不使用dd ${MY_FILE}

2 个答案:

答案 0 :(得分:3)

有关说明,请参阅man ddif代表“输入文件”。这些不是变量赋值,而是参数。变量赋值不能遵循命令。

答案 1 :(得分:1)

检查Man文件中的DD。

http://man7.org/linux/man-pages/man1/dd.1.html

你会注意到这些都是参数而不是作业。

以下是我曾经使用过的东西。希望它有所帮助。

http://www.computerhope.com/unix/dd.htm