いくつかのターミナルコマンドに基づいて、Mac用のユニバーサル(スクリプト)ファイルを作成する方法

トラブルシューティングの目的で使用するターミナルコマンドをいくつか入力してターミナルウィンドウに1つずつ入力します。

これらのコマンドでは、ユーザーのパスワードを入力する必要があります。

ユニバーサル(スクリプト)ファイルを作成する方法を探しています。これらのコマンドで。 Macでファイルをダブルクリックするか、ファイルをターミナルアイコンにドラッグするだけで実行できるようにしたいのですが、

これまでにこのようなことをしたことはありません。そのようなスクリプトを作成する方法はありますか?アドバイスしてください。

コメント

  • ユーザーに入力せずにスクリプトを実行するように依頼することを意味しますパスワードは?
  • @Allan 複数のコマンドではなく 1つのファイルを実行したい。ユーザーにパスワードを1回以上入力させずに実行するのは良いことですが、'間違いがなければ、おそらく不可能です。
  • その'管理者が必要なことをする必要がない限り、間違いなく可能です。以下の私の答えを参照してください
  • おそらくあなたがしていることとは正確には異なります'再後、しかし私はそれが非常に効果的であることがわかりました。 aliasを使用できます。例: alias ns="sudo netstat -tulpn"。起動のたびに必要な場合は、これらをCrontabの@reboot行に配置することもできます。これで、nsと入力するだけです。至福。

回答

短い回答

A .commandスクリプトでうまくいくはずです


ステップバイステップ

  1. テキストエディットを開いて、新しいファイルを作成します
  2. 変換[フォーマット]> [プレーンテキストを作成]をクリックしてプレーンテキストに変換します
  3. コマンドを1行に1つずつ追加します。たとえば、次のように実行できます。
    #! /bin/bash cd ~/Desktop mkdir myCoolFolder cd myCoolFolder

  4. chmod u+x ~/Desktop/myCommandScript.commandを実行ターミナル。~/Desktop/myCommandScript.commandはスクリプトへのパスです。これにより、ターミナルにファイルを実行する権限が与えられます。

  5. これで完了です。実行するファイルをダブルクリックします。ターミナルアイコンをドラッグしても機能します。

注:

  • ルート(管理者)アクセスが必要な操作を行う必要がある場合は、コマンドの前にsudoを付けることができます。スクリプトの実行時に、パスワードを入力する必要があります(そして管理者になる必要があります)
  • エンドユーザーが管理者ではないが、ルートアクセスが必要なことを行う必要がある場合は、次を使用できます。 su someAdminName。コマンドはsomeAdminNameとして実行されます(パスワードが必要です)。

詳細については、スタックオーバーフローのこちらもご覧ください。

コメント

  • コマンドファイルをログアウトしないようにする方法はありますか?事前定義されたパス変数を使用して端末を開くコマンドファイルが必要です。

回答

スクリプトは一連のコマンドだけなので、bashスクリプトに入れることができます。

#!/bin/bash command 1 command 2 command 3 

これはすべて、コマンドの種類とコマンドの種類によって異なります。ユーザーの介入が必要です。

ただし、たとえば診断情報を取得している場合は、

#!/bin/bash # Get SMART status of main drive diskutil info disk0 | grep -i smart # Get the model of the machine in question system_profiler SPHardwareDataType | grep -i Identifier 

これらは単なる例です。 。生成された出力はすべてコンソール(画面)に送信されることに注意してください。ただし、各コマンドの最後に>> /path/to/outputfile.txtを追加することで出力をファイルにリダイレクトできるため、ファイルの実行が終了したら解析できるファイルが作成されます。

ファイルにdiagnostics.shという名前を付けて、好きな場所に配置できます。コマンドchmod +x diagnostics.shを発行して実行可能にし、./diagnostics.shを使用して実行するかデスクトップに保存されている場合は、ダブルクリックして実行します

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です