temukan dan ganti direktori di linux

0

Saya baru mengenal Linux dan saya telah mencari cara menemukan dan mengganti direktori. Pada dasarnya saya memiliki jalur dalam .xmlfile yang terlihat seperti:

/some/directory/path

Dan saya ingin mengubahnya ke beberapa direktori lain seperti:

/some/other/path

Tetapi untuk kehidupan saya, saya tidak dapat menemukan tutorial sederhana tentang bagaimana melakukan sesuatu seperti ini.

Kristal
sumber
Anda perlu membaca ekspresi reguler. Anda bisa menggunakan editor GUI seperti meditdengan RE built in, atau Anda bisa menggunakan sedskrip. Asalkan tidak ada ambiguitas, Anda bahkan bisa lolos dengan penggantian sederhana tanpa RE. Ada banyak tutorial di sekitar: cukup cari tutorial medit linux atau tutorial sed linux . Karena sintaksis shell, sebuah skrip dapat tampak lebih kompleks, tetapi lebih disukai jika Anda akan melakukan substitusi berulang kali pada file yang berbeda.
AFH
Distribusi Linux apa yang Anda jalankan? (mis. Ubuntu) Apakah ini tugas satu kali atau apakah Anda perlu menerapkan ini pada beberapa file / kali? Apakah Anda pernah menulis program dalam bahasa apa pun? (Ini hanya untuk mengetahui tingkat jawaban yang Anda perlukan.)
user391035
Saya bingung dengan pertanyaan Anda? Apakah Anda ingin mengganti nama direktori yang sebenarnya? Atau nilai yang ada di .xmlfile?
JakeGould

Jawaban:

0

Cukup gunakan sed:

sed 's/\/some\/directory\/path/\/some\/other\/path/ig' file.xml > file2.xml

Format bagian ekspresi reguler adalah:

sed 's/original_text/replacement_text/ig'

Anda harus keluar dari spasi dan garis miring terbalik di jalur folder.

Bagian / i dari "ig" berarti mengabaikan case, dan bagian / g berarti mengganti semua instance di mana ia menemukan original_text.

HSuke
sumber