linux基本命令学习(3)--ln和lndir

2024-04-28 04:38
文章标签 linux 学习 命令 基本 ln lndir

本文主要是介绍linux基本命令学习(3)--ln和lndir,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ln和lndir

1) ln

    ln命令用于连接文件或目录。

    ln ../a.txt 
    在当前目录创建上一个目录下的a.txt文件的链接,默认是创建硬链接,目标目录如果不给出则默认为当前目录,文件名默认为原文件名

    ln -s a.txt 
    创建a.txt文件的软链接(符号链接)

    ln -s a.txt backup/a.txt.back
    创建a.txt文件的软链接(符号链接)到backup目录,文件名为a.txt.back

    ln ../a.txt ./b.txt ./c.txt backup
    创建多个文件的硬链接到backup目录

    ln -s -S".back" a.txt b.txt backup
    创建多个文件的软链接到backup目录,文件名不变

       ln -s -S".back" ../a.txt ../b.txt .
    创建多个文件的软链接到backup目录 ,并进行备份,使用原文件名+".back"为新文件的文件名
    ls执行结果如下:
lrwxrwxrwx 1 sky sky 8 Sep  2 23:19 a.txt -> ../a.txt
lrwxrwxrwx 1 sky sky 5 Sep  2 23:18 a.txt.back -> a.txt
lrwxrwxrwx 1 sky sky 8 Sep  2 23:19 b.txt -> ../b.txt
lrwxrwxrwx 1 sky sky 5 Sep  2 23:18 b.txt.back -> b.txt

    ln  ../a.txt 
    ln -f ../a.txt 
    创建链接,然后再次创建同一个软链接覆盖上一个,如果不加-f 则会报错"ln: creating hard link '../a.txt': File exists"

注意:
    -f 选项有些地方的文章解释为"强行建立文件或目录的连接,不论文件或目录是否存在",这个是不正确的,测试中发现:
    ln -f ../c.txt .
    ln: accessing `../c.txt': No such file or directory
    用ln --help打印出来的帮助中是这样描述:"-f, --force  remove existing destination files",可见只是先删除原有的文件(可以是普通文件而不必是链接文件)然后再创建新的链接,相当于新链接文件覆盖旧有文件。

    ln -i ../a.txt 
    如果a.txt文件已经存在,-i参数表示在覆盖既有文件之前需要先询问用户:
    ln: replace `./a.txt'? 输入yes后命令继续执行。

2) lndir

    lndir命令用于创建目录的符号链接,和ln不同的是lndir会自动为源文件目录下所有的文件和子目录都建立对应的符号链接
    lndir ../src ./backup
    创建src目录的软链接到backup目录,连同该目录下所有的文件和子目录都建立对应的符号链接

这篇关于linux基本命令学习(3)--ln和lndir的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/942342

相关文章

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Python ORM神器之SQLAlchemy基本使用完全指南

《PythonORM神器之SQLAlchemy基本使用完全指南》SQLAlchemy是Python主流ORM框架,通过对象化方式简化数据库操作,支持多数据库,提供引擎、会话、模型等核心组件,实现事务... 目录一、什么是SQLAlchemy?二、安装SQLAlchemy三、核心概念1. Engine(引擎)

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Python异步编程之await与asyncio基本用法详解

《Python异步编程之await与asyncio基本用法详解》在Python中,await和asyncio是异步编程的核心工具,用于高效处理I/O密集型任务(如网络请求、文件读写、数据库操作等),接... 目录一、核心概念二、使用场景三、基本用法1. 定义协程2. 运行协程3. 并发执行多个任务四、关键

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作