実行時にコマンド ラインに入力した特定の文字列にファイル名を一致させるシェル スクリプトを作成したいと考えています。ファイル名のパターンを一致させたい。文字列が 'questi' で、フォルダーに 'question1.c'、'question2.c'、questions.doc' が含まれている場合、それらは回答として表示されます。
質問する
812 次
2 に答える
1
スクリプトは、次のように単純にすることができます。
$!/bin/bash
shopt -s nullglob # To return nothing if there is no match.
echo *$1*
次に、それを次のように呼び出しますscript.sh questi
。
于 2013-03-05T11:07:28.547 に答える
1
これは以下を使用して可能find
です:
find /path/to/directory -type f -iname "*questi*"
このオプション-type f
により、ファイルのみが返さ-iname
れ、 glob で大文字と小文字を区別しない一致が行われる*questi*
ため、「question1.txt」、「five_questions.txt」などを返す必要があります。
必要に応じて、これを次のようにシェル スクリプトに入れることができます。
#!/bin/sh
find $1 -type f -iname "*$2*"
そして、次のように呼び出します。filefind.sh /path/to/directory questi
于 2013-03-05T11:10:02.420 に答える