0

しばらくの間修正しようとしていた質問があります。コマンドラインからスクリプトを開始して実行可能にし、Finderから実行することの違いを理解したいと思います。

これが私が経験していることだからです。

このコマンドを含むtrash-filesという簡単なスクリプトがあります。

trash ~/Downloads/*

ターミナルから実行すると、期待どおりに機能します。ただし、ファインダーでシェルスクリプトをダブルクリックすると、次のように表示されます。

/Users/xx/Desktop/trash-files: line 1: trash: command not found

なぜこれが期待どおりに機能しないのか、誰かに教えてもらえるといいのですが

4

3 に答える 3

3

trashは OS X の標準コマンドではありません。 ~/.profile または同様のファイルで定義されているものですか? その場合、これらは、スクリプトを実行するために作成されたものなど、非ログイン シェルに対しては実行されません。

于 2012-08-02T06:20:21.193 に答える
0

ホームフォルダーの場所に、というフォルダーがあります

.Trash

フォルダー名の前にある「ドット」は、ファインダーで検索しているときに非表示にします。次のコマンドを実行するには、ターミナルを使用する必要があります。

cd ~/
ls -la

これにより、ディレクトリが現在ログインしているユーザーのホーム フォルダーに変更され、2 番目のコマンドでファイルが一覧表示され、隠しファイルが表示されます。その後、次を実行できます。

rm .Trash/*

これにより、ドックのゴミ箱内のすべてが削除されます。/ApplicationsフォルダーからTextEditを開き、「フォーマット」に移動して「プレーンテキスト」にします。以下の 2 行を貼り付けます。

#!/bin/sh
rm ~/.Trash/*

ファイルを「emptyTrash.sh」として保存します (txt 拡張子を使用するのをオフにします)。デスクトップまたは任意の場所に保存します。次に、ターミナルを開き、cd (ディレクトリを変更) してファイルがある場所に移動し、次のコマンドを実行してスクリプトを実行可能にします。

chmod +x emptyTrash.sh

次に、スクリプトがあるパスに cd (ディレクトリを変更) してスクリプトを実行し、次を実行します。

 ./emptyTrash.sh

それでおしまい。

于 2012-08-02T15:18:41.923 に答える