私はリポジトリのインストールを処理するためのbashスクリプトを書いています。主にいくつかの基本的な依存関係をチェックし、git cloneを頻繁に呼び出します。
このスクリプトを実行するときにファイルがインストールされていることを確認したいと思います。
git clone https://github.com/reticulatedpines/magiclantern_simplified.git
echo "Exit status: ($?)"
if [ $? -eq 0 ]; then
echo "Magic Lantern has been cloned into ${ML_PATH}."
else
exit 1
fi
問題は、リポジトリが現在の作業ディレクトリに複製されることです。これは私が望むものではありません。cd ~
ホームディレクトリに戻ろうとすると、実際にはルートシェルに送信されます。
root@debian:~# (repository installs here).
これをどのように避けることができますか?
答え1
sudo -E <cmd>
-E「コマンド実行時にユーザー環境を維持する」を使用してsudoを実行します。
ユーザーエクスペリエンスを保存すると、現在の場所でコマンドが実行されます。