chmod 000
さまざまなものが入っている権限付きのフォルダーがあります。フォルダーに入るには、を実行してbash
開始します。sudo
sudo bash
なぜできないのですか?次のようなコマンド 1 つでディレクトリに入り&&
たいのですが:cd
sudo bash && cd desktop
~
これを実行すると、デフォルトのディレクトリに留まります。
代わりにこれを実行する必要があります
sudo bash
cd desktop
また、デスクトップはフォルダーではなく、デスクトップのサブフォルダーですが、それは問題ではありません。いずれにせよ同じことです。
答え1
以降の部分は現在のシェルで実行され、で実行する&&
ときに渡される引数ではありません。bash
sudo
試してみたくなるかもしれない
sudo bash -c 'cd desktop'
bash
しかし、 は の後に終了するため、これは機能しませんcd desktop
。
あなたが試すことができます:
sudo sh -c 'cd desktop && exec bash'
これは「動作します」(つまり、uid=0 の Bash シェルのディレクトリに移動しますdesktop
)。1 行のコマンドよりも、2 つの別々のコマンドを発行する方がよいでしょう。
答え2
期待通りには動作しませんが、&&
コマンドが完了するまで待機します。その時点での結果が の場合true
、次の命令を実行します。 と入力するとbash && cd desktop
、最初に bash シェルが表示されます。 と入力するとexit
、以前いたシェルに戻り、それからディレクトリがデスクトップ フォルダーに変更されます。
私が説明した機能に関して言えば、sudo は重要ではありません。sudo の使用例はおそらくベスト プラクティスではないので、他のソリューションを検討する必要があります。