0
プロシージャのスクリプトを作成しようとしていますが、今は本当に立ち往生しています。フォルダでシェル、名前に数字のファイルが表示されないようにする
、私は、いくつかのファイルを持っているとしましょう:変数で
000001.dat
000002.dat
000003.dat
000004.dat
000005.dat
000006.dat
000007.dat
000008.dat
000009.dat
000010.dat
を、私は>000009
echo $num
を持っています。私がやりたい何 のような中間ファイル抑制することである: rm -f {000001..${num}}*
を、それは私がrm -f {000001..000009}*
を使用している場合は、それが動作
...動作しません!ですから、num
変数を読むと問題になると思います。
助けてください? :) ありがとうございます! evalのを使用して
おかげで、それがうまく機能:) '' 'RM' evalのエコー{$ X .. $ yを} '' '' – zackalucard
ラッキー、それはあなたのために働いていた場合。中括弧の展開における先行ゼロの扱いは、シェルによって異なるようです。 'x = 000001; y = 000009; eval echo {$ x .. $ y} 'bashでは' 1 2 3 4 5 6 7 8 9'が得られ、kshは2つ以上の先行0が使用されている場合は展開しません。 kshでは 'echo {1..9%06d} .dat'を使うことができます – ULick