GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana mengubah semua kemunculan kata di semua file dalam direktori

Lihat ini:http://www.cyberciti.biz/faq/unix-linux-replace-string-words-in-many-files/

cd /var/www
sed -i 's/privelages/privileges/g' *

Saya biasanya menggunakan skrip pendek ini, yang akan mengganti nama string di semua file dan semua nama direktori dan nama file. Untuk menggunakannya, Anda dapat menyalin teks di bawah ini ke dalam file bernama replace_string , jalankan sudo chmod u+x replace_string lalu pindahkan ke sudo mv replace_string /usr/local/bin Anda folder untuk dapat menjalankannya di direktori mana pun.

CATATAN:ini hanya berfungsi di linux (diuji di ubuntu), dan gagal di MacOS. Hati-hati juga dengan ini karena dapat mengacaukan hal-hal seperti file git. Saya juga belum mengujinya pada binari.

#!/usr/bin/env bash

# This will replace all instances of a string in folder names, filenames,
# and within files.  Sometimes you have to run it twice, if directory names change.


# Example usage:
# replace_string apple banana

echo $1
echo $2

find ./ -type f -exec sed -i -e "s/$1/$2/g" {} \;  # rename within files
find ./ -type d -exec rename "s/$1/$2/g" {} \;    # rename directories
find ./ -type f -exec rename "s/$1/$2/g" {} \;  # rename files

Variasi yang memperhitungkan subdirektori akun (belum diuji):

find /var/www -type f -exec sed -i 's/privelages/privileges/g' {} \;

Ini akan find semua file (bukan direktori, ditentukan oleh -type f ) di bawah /var/www , dan lakukan sed perintah untuk mengganti "privelages" dengan "privileges" pada setiap file yang ditemukan.


Linux
  1. Ganti Nama Semua File dan Nama Direktori menjadi Huruf Kecil di Linux

  2. Cara Menemukan File Di Linux Di Semua Direktori Secara Rekursif

  3. Cara Mengganti Nama Direktori di Linux

  1. Bagaimana Memindahkan Semua File (termasuk Tersembunyi) Dari Satu Direktori Ke Yang Lain?

  2. Ganti Nama File Di Direktori?

  3. Bagaimana Cara Menghapus Semua File Dengan Ekstensi Tertentu Di Folder Tertentu?

  1. Cara Mengganti Semua Kemunculan Word di Semua File di Baris Perintah Linux

  2. Bagaimana cara mengganti nama semua folder dan file menjadi huruf kecil di Linux?

  3. Unzip Semua File Di Direktori