Linux Bash Shell - Dateiblub-spezifischer Bereich?

1963
BubbleMonster

Ich habe eine Reihe von Dateien in einem Ordner:

spreadsheet700.xls spreadsheet800.xls spreadsheet850.xls spreadsheet1005.xls spreadsheet2400.xls

Wie kann ich Datei-Globbing verwenden, um Dateien auszuwählen, deren Nummer auf 700 oder höher, aber weniger als 1000 endet, und in einem neuen Ordner ablegen?

Ich habe es versucht:

cp spreadsheet * .xls, aber der Platzhalter wählt alle aus. Danke im voraus.

3
Bitte [bearbeiten] Sie Ihre Frage, um die verwendete Programmsprache oder Shell aufzunehmen (und zu kennzeichnen), damit wir nicht raten müssen. Dies macht es nützlich für andere, die ähnliche Fragen suchen. CharlieRB vor 10 Jahren 0
Fertig - Entschuldigung, dass diese Informationen nicht enthalten sind BubbleMonster vor 10 Jahren 0

2 Antworten auf die Frage

3
fede.evol

cp-Arbeitsblatt [0-9] [0-9] .xls-Ordner

Dies bedeutet, beginnend mit 7 oder 8 oder 9 und mit zwei weiteren Ziffern, also also 7xx, 8xx, 9xx

Funktioniert einwandfrei, wusste nicht, dass ich {} mit [] Danke verwenden könnte BubbleMonster vor 10 Jahren 0
Auch das Arbeitsblatt [789] [0-9] [0-9] .xls funktioniert genauso, aber ich dachte, die geschweiften Klammern machen es deutlicher fede.evol vor 10 Jahren 0
2
otocan

Sie könnten dies auch tun:

cp spreadsheet.xls folder

Dies ist einfacher und bietet Ihnen auch mehr Genauigkeit beim Starten und Beenden des Bereichs (die akzeptierte Antwort funktioniert nur, wenn Sie für 7xx, 8xx und 9xx die gleichen Ziffernsätze erhalten möchten).