воссоздайте новую ссылку и удалите старую ссылку на одну команду

Сначала необходимо установить инструменты VMware в ОС Linux.

Затем скорректируйте разрешение размера в свойствах экрана CentOS.

1
задан 16 March 2013 в 22:58
2 ответа

Параметр -f позволяет вам перезаписать целевой файл, то есть файл с именем, с которым вы создаете ссылку, с помощью новая ссылка. Он не проверяет наличие других ссылок в том же каталоге.

Пример:

$ touch file1
$ touch file2
$ ln -s file1 link1
$ ls -l
total 8
-rw-r--r--  1 jenny  staff    0 Mar 16 21:13 file1
-rw-r--r--  1 jenny  staff    0 Mar 16 21:13 file2
lrwxr-xr-x  1 jenny  staff    5 Mar 16 21:13 link1 -> file1
$ ln -s file2 link1
ln: link1: File exists
$ ln -s -f file2 link1
$ ls -l
total 8
-rw-r--r--  1 jenny  staff  0 Mar 16 21:13 file1
-rw-r--r--  1 jenny  staff  0 Mar 16 21:13 file2
lrwxr-xr-x  1 jenny  staff  5 Mar 16 21:14 link1 -> file2

Если вы просто хотите переместить имя ссылки, чтобы вместо вызова link1 ее нужно было вызвать новая ссылка , просто переместите ее:

$ mv link1 newlink
$ ls -l
total 8
-rw-r--r--  1 jenny  staff  0 Mar 16 21:13 file1
-rw-r--r--  1 jenny  staff  0 Mar 16 21:13 file2
lrwxr-xr-x  1 jenny  staff  5 Mar 16 21:14 newlink -> file2

Если вы работаете с каталогами, а не с файлами, вам необходимо добавить параметр -n , а также -f ]:

$ ls -l
total 16
drwxrwxr-x 2 jenny jenny 4096 Mar 18 10:37 dir1
drwxrwxr-x 2 jenny jenny 4096 Mar 18 10:37 dir2
$ ln -s dir1 link1
$ ls -l
total 20
drwxrwxr-x 2 jenny jenny 4096 Mar 18 10:37 dir1
drwxrwxr-x 2 jenny jenny 4096 Mar 18 10:37 dir2
lrwxrwxrwx 1 jenny jenny    4 Mar 18 10:37 link1 -> dir1
$ ln -s -n -f dir2 link1
$ ls -l
total 20
drwxrwxr-x 2 jenny jenny 4096 Mar 18 10:37 dir1
drwxrwxr-x 2 jenny jenny 4096 Mar 18 10:37 dir2
lrwxrwxrwx 1 jenny jenny    4 Mar 18 10:38 link1 -> dir2
7
ответ дан 3 December 2019 в 16:15

mv является атомарным и будет делать то, что вы хотите, поскольку насколько я могу судить:

mv link new_link
4
ответ дан 3 December 2019 в 16:15

Теги

Похожие вопросы