linux 链接ln的使用


linux操作系统下ln的使用方式:

ln [option] source_file dest_file
#source_file是待建立链接文件的文件,dest_file是新创建的链接文件

其中有一个参数差别比较大,那就是[-s]。

ln -s source.txt dest.txt	#建立source.txt的软链接
ln source.txt dest.txt #建立source.txt的硬链接

软链接、硬链接的区别:

在linux系统中,对于一个文件来说,有唯一的一个索引节点(i-node)与之对应,而对于一个索引节点可以有多个文件目录(其中包括文件名这个item)与之对应。

因此,在磁盘上的同一个文件,对于同一个索引节点 ,但是可以通过不同的文件目录访问。同时还得注意Linux下一切皆文件。

1.软链接

软链接又叫符号链接,相当于windows下的快捷方式,软链接实际上只是一段文字,里面包含着它所指向的文件的名字,系统看到软链接后自动跳到对应的文件位置处进行处理。

2.硬链接

硬联接为文件开设一个文件新的目录,硬链接与文件原有的名字是平权的,在Linux看来它们是等价的。由于这个原因,硬链接不能连接两个不同文件系统上的文件。

3.区别

(1) 软连接可以跨文件系统 ,硬连接不可以 。

实践的方法就是用共享文件把windows下的aa.txt文本文档连接到linux下/root目录下bb.txt。

ln -s aa.txt /root/bb.txt链接成功,但是ln aa.txt /root/bb.txt会失败。

(2) 关于i-node索引节点的问题。

硬连接不管有多少个,都指向的是同一个i节点,会把结点连接数增加,只要结点的连接数不是0,文件就一直存在,不管你删除的是源文件还是连接的文件。只要有一个存在,文件就 存在 (其实也不分什么源文件连接文件的 ,因为他们指向都是同一个I节点)。当你修改源文件或者连接文件任何一个的时候 ,其他的文件都会做同步的修改。

软链接不直接使用i节点号作为文件指针,而是使用文件路径名作为指针。所以删除连接文件对源文件无影响,但是删除源文件,连接文件就会找不到要指向的文件。软链接有自己的i-node,并在磁盘上有一小片空间存放路径名。

(3) 软连接可以对一个不存在的文件名进行连接。

(4) 软连接可以对目录进行连接,硬链接不可以。

最后,删除符号链接,有创建就有删除。

rm -rf   symbolic_name   注意不是rm -rf   symbolic_name/


怎么创建一个应用程序的快捷图标

该部分没有具体测试,只说明有这么一种方法

1. 进入/usr/share/applications目录编辑一desktop文档

sudo vim /usr/share/applications/QtCreator.desktop

文档的内容为:

[Desktop Entry]
Encoding=UTF-8
Type=Application
Version=0.9.4
Name=QtCreator #图标下面的文字说明
Comment=Run Qt Creator #鼠标放上去时的文字提示
Icon=/home/yan/qtsdk-2009.03/share/pixmaps/qtcreator_logo_48.png #要显示的图标绝对路径
Exec=/home/yan/qtsdk-2009.03/bin/qtcreator #启动程序
Terminal=false
StartupNotify=true
Categories=Application;Development; #应用程序在菜单项中的分类

可将菜单中的图标托到桌面上,若将QtCreator.desktop直接创建在桌面上(/usr/share/applications无QtCreator.desktop文件)也可启动程序,但图标不可显示。

Linux命令--链接文件的那些事的更多相关文章

  1. Linux的链接文件-ln命令

    Linux的链接文件 使用ln命令来创建链接文件(link) Linux链接分两种:硬链接(Hard Link),符号链接(Symbolic Link) 默认情况下,ln命令产生硬链接. [root@ ...

  2. Linux的链接文件

    Linux的链接文件======================================== Linux的链接文件分为硬链接文件(hard link )和软链接文件( symbolic lin ...

  3. linux命令截取文件最后n行(所有命令)

    linux命令截取文件最后n行(所有命令) tail -n a.txt > b.txt 联想:系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) una ...

  4. Linux命令:修改文件权限命令chmod、chgrp、chown详解

    Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权 限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而 ...

  5. linux命令---查找文件中的内容

    linux命令---查找文件中的内容   [yang@localhost ~]$ cat 1.txt |egrep '123456789|second'-------匹配123456789或者seco ...

  6. 【Linux命令】文件和目录操作命令

    本文主要用于常用命令的备忘,具体用法可用man查看,或查询其他资料. cd:改变工作目录 ls:列出目录的内容 mkdir:创建一个目录 cat:连接并显示指定的一个和多个文件的有关信息 cp:将给出 ...

  7. linux命令:文件类型和扩展名

    在linux系统中,一切皆是文件.Linux文件类型常见的有:普通文件.目录文件.字符设备文件和块设备文件.数据接口文件,符号链接文件,数据传送文件等. 1. 普通文件 用 ls -lh 来查看某个文 ...

  8. Linux命令之 文件归档管理

    1.文件相关知识 Linux怎样保存文件 数据 -这里数据就是文件的内容 元数据 -在linux系统中,所有与某个文件相关的额外信息都保存在一个叫做i-节点(inode)的节构中 文件名 -文件名保存 ...

  9. Linux命令之文件与用户权限

    1.文件管理 在Linux里,任何软件和I/O设备都被视为文件.Linux中的文件名最大支持256个字符,分别可以用A-Z.a-z.0-9等字符来命名. 和Windows不同,Linux中文件是区分大 ...

随机推荐

  1. 让资源可以下载a

    第一种方式------不存在任何兼容性 <a href='x.zip'>下载</a> 将要链接的资源进行打包即可 第二种方式----存在兼容性,目前只有Chrome 和Fire ...

  2. BestCoder 2nd Anniversary 1001 Oracle

    找到最小的非零数字拆开来相加. 高精度. #include <iostream> #include <cstdio> #include <cstring> #inc ...

  3. C++中vector和list排序

    容器.泛型算法.和类是不是就是C++相对于C"++"的那部分呢?暂时先这么认为吧.如果这篇博客有幸被别人看到,请帮忙指出.--C++ 菜鸟 留. vector的迭代器是随机访问迭代 ...

  4. H-Index,H-Index II

    1.H-Index Total Accepted: 19058 Total Submissions: 70245 Difficulty: Medium Given an array of citati ...

  5. js循环遍历

    //获取多个用户id 一般用在复选框 cust_id = 1,2,3,4; var str = cust_id.split(",");          for (var key ...

  6. OpenLayers 3加载本地Google切片地图

    OpenLayers  提供了ol.source.XYZ 接口用以加载切片地图. 本地切片地图是用地图切片下载器下载的Google道路图层,由于软件未激活,所以每张切片地图上都有软件作者的联系方式,请 ...

  7. Oracle EBS-SQL (PO-14):检查供应商信息sql

    select pvs.org_id, pvs.vendor_id, pvs.vendor_site_id, hou.name                                 经营组织, ...

  8. VC实现图片拖拽及动画

    基础知识 1.PictureBox控件的使用 2.加载位图文件 1.通过文件路径获得位图句柄 //获得位图句柄  void CMovePictureDlg::GetHandleFromPath(CSt ...

  9. (转载博文)MFC 窗口句柄获取

    句柄获取方法(获取该窗口的句柄后,即可向该窗口类类发送消息.处理程序):0.获取所在类窗口的句柄: this->m_hwnd 1.主窗口的句柄: 无论在主窗口类内,还是子窗口类内,获取主窗口句柄 ...

  10. 【LeetCode练习题】Partition List

    Given a linked list and a value x, partition it such that all nodes less than x come before nodes gr ...