Apa yang salah dengan perintah 'temukan' ini?

14

Saya menjalankan perintah berikut (untuk menemukan semua file dengan .tsekstensi dan menghapusnya):

find . -type f -name "*.ts" –delete

Galat muncul:

find: paths must precede expression: `–delete'

Apa yang telah saya lakukan salah?

Dorad
sumber

Jawaban:

35

Anda memiliki tanda tipografi bukan minus ( -).

Ubah perintah Anda menjadi

find . -type f -name "*.ts" -delete

Untuk sintaks lengkap, lihat man find:

AKSI
       -delete

        Hapus file; benar jika penghapusan berhasil. Jika penghapusan gagal, pesan kesalahan dikeluarkan.
        Jika -delete gagal, findstatus keluar akan menjadi nol (ketika akhirnya keluar).
        Penggunaan -deletesecara otomatis mengaktifkan -depthopsi.


Berhati-hatilah dengan menyalin dan menempelkan perintah dari blog dan pemroses teks kaya. Mereka dapat mengubah beberapa simbol tipografi ke padanan teks biasa dan sebaliknya.

Pertimbangkan untuk menggunakan editor teks sederhana untuk catatan lain kali - gunakan teks biasa, Markdown, atau reStructuredText.

Dan seperti yang disebutkan @AuxTaco - beberapa blog mungkin mengandalkan penyalinan Anda untuk menyerang komputer Anda .

N0rbert
sumber
Dalam kasus khusus ini kita tidak tahu sumber dari perintah ini. Jika penulis asli salah --maka mesin dikonversi ke . Jadi kita tidak tahu keseluruhan cerita :)
N0rbert
2
Saya dapat menceritakan kisahnya: Saya menyalin-menempelkannya dari terminal ke dokumen MS Word yang terdiri dari kumpulan perintah untuk menggunakan server kami. MS Word memperbaiki dasbor dalam beberapa kasus. Kemudian satu atau beberapa tahun setelah saya menyalin perintah itu dan pertanyaan terbuka ... Terima kasih.
Dorad
1
Mungkin lebih baik menggunakan Notepad ++ dalam situasi ini, daripada Word.
Davidw
1
Jangan pernah menggunakan pengolah kata untuk mengedit kode. Itu (alasan besar) mengapa masih ada editor teks. Hal terakhir yang Anda butuhkan adalah karakter pengganti, atau bungkus kata.
Joe