似乎无法在bash中创build文件

我试图在debian 7中使用这个(在root帐户下)代码。

#!/bin/bash cat > /root/.ssh/github.id_rsa << EOF -----BEGIN RSA PRIVATE KEY----- XYZ... -----END RSA PRIVATE KEY----- EOF chmod 600 /root/.ssh/github.id_rsa 

当我导航到这个文件夹后,它告诉我,它不存在。 我已经检查和双重检查,但不能解决我做错了什么。

编辑:当我手动运行命令它似乎工作! 但我试图运行这个作为shell脚本的一部分。

当您第一次运行该命令时, .ssh文件夹可能不存在/不存在。 最安全的做法是在检查/创build文件夹的cat之前添加一个命令:

 #!/bin/bash mkdir -p /root/.ssh chmod 700 /root/.ssh cat > /root/.ssh/github.id_rsa << EOF <some content> EOF chmod 600 /root/.ssh/github.id_rsa