GNU/Linux >> Belajar Linux >  >> Linux

Pindahkan file dan tinggalkan tautan lunak

Sebuah catatan kecil, adalah Anda dapat menggunakan ln kedua kali untuk membuat perintah tidak benar-benar memindahkan data (dengan asumsi kedua jalur berada pada sistem file yang sama).

ln /some/path/file /another/path/ && ln -sf /another/path/file /some/path/

Tapi saya berasumsi bahwa Anda ingin memindahkan konten /some/path/ ke disk lain, lalu membuat tautan ke file baru sehingga "tidak ada" yang menyadarinya.

for f in `ls /some/path/`; do ln /some/path/$f /another/path/ && ln -sf /another/path/$f /some/path; done

Membungkusnya dalam fungsi bash:

function cpln {
    for f in `ls $1`
    do
        ln $1/$f $2 && ln -sf $2/$f $1
    done
}

Ada skrip saya yang dapat Anda gunakan (mengambil dua parameter /some/path/file dan /another/path/ ):

#!/bin/bash
cp $1 $2
if [ "$?" -ne "0" ]; then
    echo "Some error"
    exit 1
    fi
ln -sf $2/${1##*/} ${1%/*}

Linux
  1. Cara Membuat Tautan Lunak dan Keras di Linux

  2. Menginstal dan mengonfigurasi vsFTPD

  3. Apa itu Tautan Lunak dan Tautan Keras di Sistem File Linux

  1. Perbedaan antara tautan lunak dan tautan keras di Linux

  2. Utas dan deskriptor file

  3. Mengapa tautan simbolis saya membuat file dan bukan folder?

  1. Tautan keras dan tautan lunak di Linux dijelaskan

  2. Temukan Pola Dan Pindahkan?

  3. Izin File Dan Menyimpan?