2
#!/bin/bash
read nameArg
find -name "$nameArg"

たとえば*.txtを入力すると、このコードを使用すると、txtで終わるすべてのファイルが得られますが、*.txtという名前の特定のファイルのみが必要です。* を * として扱う bash の作成方法

ターミナルでまっすぐに、私がすべきことを知っています:

find -name "\*.txt"

スクリプトで動作させるには?入力に常に * があるとは限らないことに注意してください。

4

3 に答える 3

0

入力でをエスケープする必要があり*ます。*それらをエスケープするスクリプトを作成すると、リテラル文字とメタ文字の両方を含む入力を提供できなくなります。例として、自動引用スクリプトにパターン\*.*(名前はで、拡張子は任意) をどのように指定しますか?*

#!/bin/bash

read -r nameArg
find . -name "$nameArg"

次に、コマンド ラインで次のように入力します。

$ bash myscript.sh
> \*.txt
于 2013-04-01T20:38:50.223 に答える