ln file1 /home/dir2/
Это создаст жесткую ссылку (т.е. дополнительное имя) в /home/dir2
для файла с именем file1
в текущем каталоге. Имя файла в /home/dir2
также будет file1
.
ln file1 /home/dir2/filehardlink
Это сделает то же самое, что и выше, но новое имя файла в /home/dir2
будет filehardlink
. Обратите внимание, что нет причин различать два имени файла, говоря, что одно из них является жесткой ссылкой на другое. Все имена являются жесткими ссылками на файлы, и нет абсолютно никакой разницы между именами file1
и filehardlink
после вышеописанной операции.
Для этого потребуется, чтобы текущий каталог и /home/dir2
находились в одной файловой системе, так как жесткие ссылки не могут разделять файловые системы.
Это ошибка, которая была исправлена в следующей версии.Из журнала изменений bash:
В этом документе подробно описаны изменения между этой версией, bash-4.0-alpha, и предыдущая версия, bash-3.2-release. (…)
1. Изменения в Bash (…)
ггг. Исправлена ошибка, из-за которой оболочка, работающая в режиме Posix, искала
$PWD
файл, указанный в качестве аргумента дляsource
/.
, когда файл не был найден в$PATH
. (…)iii. Исправлена ошибка, из-за которой оболочка искала в
$PATH
аргумент дляисточник
/.
даже если он содержал/
.