09/04/18 21:03:14
AAA_1996.txt
AAA_1997.txt
AAA_1998.txt
AAA_1999.txt
AAA_2000.txt
AAA_2001.txt
AAA_2002.txt
AAA_2003.txt
AAA_2004.txt
というファイルがあるときに、AAA_1999.txtからAAA_2002.txtまでをあるコマンドの引数に
与えたいと思うのですが、
command AAA_{1999|2000|2001|2002}.txt
とやってもだめでした。こういう場合はどう書けばよいでしょうか?
292:名無しさん@お腹いっぱい。
09/04/18 21:06:42
>>291
AAA_{1999..2002}.txt
293:名無しさん@お腹いっぱい。
09/04/18 21:18:31
ありがとうございます。
先のコマンドというのはunzipなんですが、lsとかだと教えてもらった書き方でいけたのですが、
unzipだと上手くいきません。ワイルドカード的な書き方に拘らず、全部書いてしまってもいいかとも
思うのですが、、、もし書き方があったら教えてください。
$ unzip AAA_{1999..2002}.zip
Archive: AAA_1999.zip
caution: filename not matched: AAA_2000.zip
caution: filename not matched: AAA_2001.zip
caution: filename not matched: AAA_2002.zip
結局何も解凍されず。
$ ls AAA_{1999..2002}.zip
AAA_1999.zip AAA_2000.zip AAA_2001.zip AAA_2002.zip
ちゃんと表示された。
294:名無しさん@お腹いっぱい。
09/04/18 21:33:13
>>293
それは、unzipの仕様で、複数のファイルを列挙では指定できないため。
for文使うしかないな。
for f in AAA_{1999..2002}.zip; do unzip $f; done
295:名無しさん@お腹いっぱい。
09/04/18 21:36:34
>>294
すげぇ、、、、
あんたゴルゴみたいだな。
296:名無しさん@お腹いっぱい。
09/04/19 21:45:56
このスレの存在意義を否定するわけじゃないが
あんまりbashの補完にねちねち拘るくらいなら、zsh使ったほうがいいよ
297:名無しさん@お腹いっぱい。
09/04/20 19:08:02
>>295
意味わからん。
298:名無しさん@お腹いっぱい。
09/04/20 20:33:49
>>297
的確に的を射た解答をしてくれるって意味じゃないの