find コマンドに変数を設定するシェルスクリプトがあります。毎回変数文字列を変更するシェルスクリプトを実行できる必要があります。したがって、ファイルマスクは毎回変わりますが、各変数のすべての結果をファイルに出力する必要があります。
例:
filemask="key_*"
file=/home/file
find . -maxdepth 1 -iname "$filemask" > $file
次にfilemask="say_*"
シェルスクリプトを実行するときに変更する必要があります。
答え1
スクリプトファイル:
#!/bin/bash
filemask=${1:-"key_*"}
file=/home/file
find . -maxdepth 1 -iname "$filemask" >> "$file"
- ファイルマスク変数は、コマンドラインのスクリプトの最初の引数に設定されます。提供されていない、または提供されていないが空の場合、スクリプトはそれをkey_ *に設定します。
- このコマンドの結果
find
はファイルに追加され、その名前は$ file変数に保存されます。 OTW、スクリプトを実行するたびに最後の実行内容が上書きされます。