Linux
似乎無法在 bash 中創建文件
我正在嘗試在 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
文件夾可能不存在/不存在。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