bash echo >>不起作用

Hor*_*cui 0 bash echo

我想将一个字符串写入文件,但它不起作用.我确信我会错过一些微不足道的东西.这些文件尚不存在.为什么下面的脚本不会在文件中写入任何内容?甚至没有创建文件.

#!/bin/bash

j="nch"
temp_dir="~/temp_temp"
echo "$temp_dir/$j"
echo "c'mon" >> "$temp_dir/$j"
echo "c'mon" >> "~/temp_temp/pch"
Run Code Online (Sandbox Code Playgroud)

Mar*_*eed 5

~ 未在引用的字符串中展开.

temp_dir=~/temp_temp
echo "c'mon" >> ~/temp_temp/pch
Run Code Online (Sandbox Code Playgroud)

要么

temp_dir=~/"temp_temp"
echo "c'mon" >> ~/"temp_temp/pch"
Run Code Online (Sandbox Code Playgroud)

等等