memindahkan file dari pola tertentu ke direktori lain

14

Dalam direktori /home/insaya punya file seperti ini:

crust.MC12345.txt 
crust.etcMC12345.txt
crust.MC23456.txt
crust.etcMC23456.txt 
crust.etctcMC23456.txt 

Saya hanya perlu pindah crust.etcMC12345.txtdan crust.etcMC23456.txtke dir lain, /home/out.apa pola yang saya gunakan dalam perintah mv untuk skenario di atas?

pengguna86683
sumber
1
Polanya agak tidak jelas. Bisakah Anda mengedit pertanyaan Anda untuk memasukkan beberapa nama file yang cocok, dan beberapa yang tidak cocok?
user000001
ketika saya menggunakan kerak pola. * MC * .txt dalam perintah mv itu bergerak semua 4 file di mana karena saya hanya perlu crust.etcMC12345.txt dan crust.etcMC23456.txt
user86683
Lalu mengapa tidak melakukannya mv crust.etc* dest/?
user000001
Saya mencoba dan berhasil. Terima kasih banyak. tetapi bagaimana jika Anda tidak tahu ada berapa literal yang ada sebelum MC seperti etctMC123.txt dan etctcMC125.txt
user86683
1
Saya mencoba memperbarui Q Anda, bisakah Anda meluangkan waktu dan membantu semua orang membantu Anda? Tidak jelas file apa yang Anda miliki, dan file apa yang ingin Anda pindahkan.
slm

Jawaban:

19

Jika saya benar memahami pertanyaan Anda, jawabannya sangat sederhana:

mv crust.etcMC* /home/out

atau jika etcbukan string literal, tetapi misalnya tiga karakter, maka:

mv crust.???MC* /home/out
jimmij
sumber
saya juga punya file lain dengan nama-nama seperti crust.tecMC12345.txt crust.etcMC1232.txt dan seterusnya
user86683
Silakan lihat hasil edit jawaban saya dan tentukan dengan tepat file apa yang Anda miliki.
jimmij
crust.etcMC123.txt, crust.tecMC234.txt, crust.cetMC345.txt, crust.MC123.txt adalah beberapa file sampel di dir saya bagaimana saya hanya mv file dengan nama crust.tecMCxxx.txt jadi crust.xxMCxxx.txt x variabel
user86683
4
Hal ini tidak sesuai dengan pertanyaan Anda di atas: i need files with names crust.etcMC.xyz. Dan sekarang Anda katakan do i only mv files with names crust.tecMCxxx.txt. Jadi apakah Anda ingin bergerak hanya crust.etcMC*atau crust.tecMC*atau keduanya, atau tidak? Tolong jangan terburu-buru dengan jawabannya, luangkan waktu Anda, edit pertanyaan mengurus format yang tepat dan jelaskan apa yang Anda inginkan.
jimmij
1

Jika Anda ingin memindahkan file yang memiliki setidaknya satu karakter antara crust.dan MCAnda dapat menggunakan

mv crust.?*MC /home/out

Di sini ?singkatan dari satu literal dan *nol atau lebih, dan karenanya kombinasi ?*singkatan dari satu atau lebih karakter. Karena itu ia akan melewatkan file seperti crust.MC12345.txt.

ttq
sumber
Tidak yakin mengapa downvote, karena menurut saya ini adalah jawaban yang benar untuk pertanyaan yang dicerahkan dalam komentar kedua OP setelah pertanyaan.
ttq