私はログインするたびにSudo apt-get update
とSudo apt-get autoremove
を実行するスクリプトを作成しようとしました。次のようになります。
#!/bin/bash
(Sudo apt-get update)
(Sudo apt-get autoremove)
しかし、スクリプトを実行するたびに、コンピューターがフリーズします。スクリプトがパスワードを提供するのを待っているからだと思います。次のようなコマンドの後にPASSWD:mypassword
を追加すると動作しますか:
#!/bin/bash
(Sudo apt-get update)PASSWD:mypassword
(Sudo apt-get autoremove)PASSWD:mypassword
または私がすべき他の何かがありますか?方法さえありますか?もしそうなら教えてください!
実際にスクリプトにパスワードを含める必要はありません(私が見たところ、パスワードをスクリプトに含めることは一般的にお勧めできません)。代わりに、sudoerファイルを編集して、パスワードを必要とせずにapt-getコマンドを実行できます。
詳細については、 このWebサイト を参照してください。
ターミナルを開きます(ctrl + alt + T)
コマンドを入力してください
Sudo visudo
Sudoersファイルタイプの最後
username ALL=(ALL) NOPASSWD: /usr/bin/apt-get
ユーザー名はユーザー名です(もちろん)
このファイルを編集すると、パスワードを入力せずにapt-getコマンドを実行できます。これは、パスワードを入力せずにパッケージをインストールまたはアップグレードできることを意味します。
コンマの後にコマンドへのパスを入力して、このリストに他のコマンドを追加することもできます。コマンドへのパスを見つけるには、ターミナルで次のコマンドを入力します。
which command
Commandはコマンドの名前です(たとえば、reboot)。
bash sccriptを開始するコマンド:
#!/ bin/bash
ユーザーのルートパスワードを要求するコマンド:
["$ UID" -eq 0] || exec Sudo bash "$ 0" "$ @"
次にできるコマンドの例:
apt-get update
apt-get upgrade --yes
shutdown -r now
スクリプトの幸運