GNU/Linux >> Linux Esercitazione >  >> Linux

Sposta un file e lascia un soft link dietro

Una piccola nota è che potresti usare ln entrambe le volte per fare in modo che il comando non sposti effettivamente i dati (supponendo che entrambi i percorsi si trovino sullo stesso filesystem).

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

Ma presumo che tu voglia spostare il contenuto di /some/path/ su un altro disco e quindi creare collegamenti ai nuovi file in modo che "nessuno" se ne accorga.

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

Avvolgendolo in una funzione bash:

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

C'è il mio script che potresti usare (prende due parametri /some/path/file e /another/path/ ):

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

Linux
  1. Trova il modello e spostati?

  2. Permessi e salvataggio dei file?

  3. Come creare collegamenti soft e hard in Linux

  4. 6 Esempi di comandi mv per spostare o rinominare file e directory Linux

  5. Cosa sono i collegamenti simbolici (Soft Link) e come crearli sotto Linux

Come creare collegamenti hard e soft (collegamento simbolico) su sistemi Linux

Come spostare file e directory in Linux (comando mv)

Spiegazione di Soft Link e Hard Link in Linux con esempi

Hardlink e Softlink in Linux:usi ed esempi

Il comando ln in Linux:crea collegamenti soft e hard

Hard link e soft link in Linux:tutto ciò che devi sapere