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
-
#!/bin/bash
:memberitahu komputer Anda untuk menggunakanbash
penerjemah. -
if [ ! -d "$2" ]; then
:Jika variabel kedua yang Anda berikan belum ada... -
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 direktorione
dantwo
tidak ada:$ mkdir one/two/three mkdir: cannot create directory ‘one/two/three’: No such file or directory
-
fi
:Menutup jika pernyataan. -
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
) danpluto
akan menjadi variabel kedua ($2
).-R
flag berarti melakukan ini secara rekursif, jadicp
perintah akan melalui semua file dan folder dari variabel pertama Anda, dan salin ke direktori variabel kedua Anda.