GNU/Linux >> Belajar Linux >  >> Linux

Salin dan timpa file dalam skrip shell

Gunakan

cp -fr /source/file /destination

ini mungkin harus menyelesaikan masalah.


Pertanyaan ini sudah pernah dibahas, namun Anda dapat menulis skrip kecil seperti ini:

#!/bin/bash
if [ ! -d "$2" ]; then
  mkdir -p "$2"
fi
cp -R "$1" "$2"

Menjelaskan skrip ini sedikit

  1. #!/bin/bash :memberitahu komputer Anda untuk menggunakan bash penerjemah.

  2. if [ ! -d "$2" ]; then :Jika variabel kedua yang Anda berikan belum ada...

  3. mkdir -p "$2" :buat direktori itu, termasuk direktori induk yang disediakan di jalur.

    Menjalankan mkdir -p one/two/three akan membuat:

    $ mkdir -p one/two/three
    $ tree one
    one/
    └── two
        └── three
    

    Jika Anda tidak menyediakan -p tag maka Anda akan mendapatkan error jika direktori one dan two tidak ada:

    $ mkdir one/two/three
    mkdir: cannot create directory ‘one/two/three’: No such file or directory
    
  4. fi :Menutup jika pernyataan.

  5. cp -R "$1" "$2" :menyalin file dari variabel pertama yang Anda berikan ke direktori variabel kedua yang Anda berikan.

    Jadi jika Anda menjalankan script.sh mars pluto , mars akan menjadi variabel pertama ($1 ) dan pluto akan menjadi variabel kedua ($2 ).

    -R flag berarti melakukan ini secara rekursif, jadi cp perintah akan melalui semua file dan folder dari variabel pertama Anda, dan salin ke direktori variabel kedua Anda.


Linux
  1. Bagaimana Cara Mendapatkan Alamat Ip Sendiri Dan Menyimpannya Ke Variabel Dalam Script Shell?

  2. Mengapa Variabel Terlihat Dalam Subkulit?

  3. temukan dan salin file menggunakan Bash

  1. Campuran skrip shell dan python mungkin?

  2. Shell - Tulis konten variabel ke file

  3. pindahkan hanya jika file ada dalam skrip shell

  1. Ekspansi Variabel Shell Dan Pengaruh Glob Dan Split Di atasnya?

  2. Script Shell Untuk Memindahkan File Terlama?

  3. Bagaimana Membuat File Sementara Di Shell Script?