2

SHシェルLinuxで、削除、ゴミ箱、復元の3つの異なるスクリプトでごみ箱スクリプトを作成しています。

最初の 2 つのスクリプトは正常に動作しています。「削除」は、ファイルの元のパスの場所を示す「trashinfo」と呼ばれるテキスト ファイルをログに記録しながら、選択したファイルをごみ箱に移動します (後で復元に使用されます)。「ごみ箱」は、ごみ箱内のすべてを削除します。 .

「復元」スクリプトは、削除スクリプトで取得したログに記録されたパス名を取得し、ファイルを元の場所に戻す必要があります。これに思い出すよりも多くの時間を費やしたので、復元スクリプトを正しく機能させることができません!

以下は、私が作成したスクリプトです。パス名を保持するテキスト ファイル内のファイル名変数を検索していることがわかります。次に、grep されてベース名と結合された場所に移動されます。

私がどこで間違っているのか、誰にも指摘がありますか?

if [ "$*" != -f ]
then
path=grep "$*" /usr/local/bin/trashinfo
pathname=basename "$path"
mv "$path" "$pathname"
4

1 に答える 1

0
path=$(grep "$*" /usr/local/bin/trashinfo)
pathname=$(basename "$path")
于 2012-12-03T14:53:23.577 に答える