ln命令应用

记录:352

场景:在CentOS 7.9操作系统上,使用ln命令创建软链接(symbolic links)和硬链接(hard links)。解决:Too many levels of symbolic links。

版本:

操作系统:CentOS 7.9

1.命令应用

(1)目录创建软链接

命令:ln -s /home/apps/module/jdk1.8.0_281  /usr/java/default

解析:ln -s,创建软链接;目录/usr/java/default是软链接,指向/home/apps/module/jdk1.8.0_281目录;许多软件找jdk会到默认目录:/usr/java/default读取jdk相关数据;创建软链接后,自定义安装目录就满足了需求。创建软链接会有->符号标识。

(2)文件创建软链

命令:ln -s /home/apps/work01/aintro.txt /home/apps/work02/aintro.txt

解析:创建文件软链接,/home/apps/work01/aintro.txt是源文件;另一个是软链接。

(3)创建硬链接

命令:ln -P /home/apps/work01/bintro.txt /home/apps/work02/bintro.txt

解析:创建文件硬链接,/home/apps/work01/bintro.txt是源文件,另一个是硬链接。

2.解决报错

(1)问题一:Too many levels of symbolic links

问题原因:在/home/apps/work01目录下创建软链接,没有使用完整路径。

执行的命令:ln -s cintro.txt  /home/apps/work02/cintro.txt

使用cat命令:cat cintro.txt,读取文件报错,读取不了文件。

解决:先删除有问题的软链接,再重新创建软链接。

删除命令:rm -rf /home/apps/work02/cintro.txt

重新创建命令:ln -s /home/apps/work01/cintro.txt /home/apps/work02/cintro.txt

2.命令帮助手册

命令:ln --help

解析:查看ln支持的全部命令和选项,在实际工作中,查看这个手册应该是必备之选。

Usage: ln [OPTION]... [-T] TARGET LINK_NAME   (1st form)
  or:  ln [OPTION]... TARGET                  (2nd form)
  or:  ln [OPTION]... TARGET... DIRECTORY     (3rd form)
  or:  ln [OPTION]... -t DIRECTORY TARGET...  (4th form)
In the 1st form, create a link to TARGET with the name LINK_NAME.
In the 2nd form, create a link to TARGET in the current directory.
In the 3rd and 4th forms, create links to each TARGET in DIRECTORY.
Create hard links by default, symbolic links with --symbolic.
By default, each destination (name of new link) should not already exist.
When creating hard links, each TARGET must exist.  Symbolic links
can hold arbitrary text; if later resolved, a relative link is
interpreted in relation to its parent directory.

Mandatory arguments to long options are mandatory for short options too.
      --backup[=CONTROL]      make a backup of each existing destination file
  -b                          like --backup but does not accept an argument
  -d, -F, --directory         allow the superuser to attempt to hard link
                                directories (note: will probably fail due to
                                system restrictions, even for the superuser)
  -f, --force                 remove existing destination files
  -i, --interactive           prompt whether to remove destinations
  -L, --logical               dereference TARGETs that are symbolic links
  -n, --no-dereference        treat LINK_NAME as a normal file if
                                it is a symbolic link to a directory
  -P, --physical              make hard links directly to symbolic links
  -r, --relative              create symbolic links relative to link location
  -s, --symbolic              make symbolic links instead of hard links
  -S, --suffix=SUFFIX         override the usual backup suffix
  -t, --target-directory=DIRECTORY  specify the DIRECTORY in which to create
                                the links
  -T, --no-target-directory   treat LINK_NAME as a normal file always
  -v, --verbose               print name of each linked file
      --help     display this help and exit
      --version  output version information and exit

The backup suffix is '~', unless set with --suffix or SIMPLE_BACKUP_SUFFIX.
The version control method may be selected via the --backup option or through
the VERSION_CONTROL environment variable.  Here are the values:

  none, off       never make backups (even if --backup is given)
  numbered, t     make numbered backups
  existing, nil   numbered if numbered backups exist, simple otherwise
  simple, never   always make simple backups

Using -s ignores -L and -P.  Otherwise, the last option specified controls
behavior when a TARGET is a symbolic link, defaulting to -P.

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
For complete documentation, run: info coreutils 'ln invocation'

以上,感谢。

2022年11月28日

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值