Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux shell变量包含~,未正确分析该变量_Linux_Shell - Fatal编程技术网

Linux shell变量包含~,未正确分析该变量

Linux shell变量包含~,未正确分析该变量,linux,shell,Linux,Shell,目的地是环境变量 目的地=~/Desktop d=`date +%F-%H%M%S` filename=${destination}/${d}.{query} touch $filename 执行命令时,它会报告错误。因为我把它当作一根绳子 文件名为~/Desktop/2020-05-30-120306.json,无法识别 因此,如何做到这一点,我需要得到正确的识别。它描述了实现这一点的两种方法。第一种方法是使用评估(这是危险的): 第二种更安全,是推荐的选择 d=`date +%F-%H

目的地是环境变量

目的地=~/Desktop

d=`date +%F-%H%M%S`

filename=${destination}/${d}.{query}

touch $filename
执行命令时,它会报告错误。因为我把它当作一根绳子

文件名为~/Desktop/2020-05-30-120306.json,无法识别

因此,如何做到这一点,我需要得到正确的识别。它描述了实现这一点的两种方法。第一种方法是使用评估(这是危险的):

第二种更安全,是推荐的选择

d=`date +%F-%H%M%S`

destination="~/Desktop"
query="json"
filename=${destination/#\~/$HOME}/${d}.${query}

touch $filename

不确定如何设置
$destination
,因此您可能需要使用它,但这两个选项对我都有效。

您可以使用
$HOME
而不是
~
,但我看不出您显示的内容如何不起作用<代码>~仅在引用时不会展开,但据我所知,您并没有引用它。
d=`date +%F-%H%M%S`

destination="~/Desktop"
query="json"
filename=${destination/#\~/$HOME}/${d}.${query}

touch $filename