扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1、首先有一个目录dir, 执行ln -s dir dir_link 创建目录的软链接。
10年积累的成都网站建设、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站策划后付款的网站建设流程,更有拱墅免费网站建设让你可以放心的选择与我们合作。
2、重新创建mkdir源目录,目录软链接重新生效。
3、执行命令ln dir dir_hard,创建目录的硬链接。
4、执行命令ln -s file file_link,创建文件file的软链接file_link。
5、执行命令ln file file_hard创建文件file的硬链接file_hard。
6、修改硬链接file_hard、cat file,同时更新到源文件中即可。
例子:
对于上面的语法 chmod 【{ugoa}{+-=}{rwx}】【文件或目录】,我们要知道ugoa分别是:u:表示所有者,g:表示所属组,o:表示其他人,a:表示所有人。而rwx表示的意思如下:
对于【mode=421】【文件或目录】,这是我们将权限用数字表示,其中 r 表示4,w表示2,x表示1,分别是2的0次方,1次方,2次方。那么我们可以这样理解:具有 rwx 权限的数字就是 7,具有 rw- 权限的数字是 6,具有 r-- 权限的数字是 4。
示例1:我们赋予 tmp 目录下的 tmp.log 所有者 x 的权限;赋予 所属组 w 权限,其他人 w 权限。
将上面例子改为用 数字来操作,也就是说我们要给 tmp.log赋予的文件权限是 rwxrw-rw-,用数字表示是766。
我们还可以递归赋予权限,也就是加上 -R 参数给指定目录下的所有文件或目录赋予指定权限。
示例2:给 tmp 目录下所有文件和目录赋予 776 的权限
这里我们通过useradd【用户名】命令创建用户,然后通过passwd【用户名】输入密码,这两个命令后面会将。我们通过这两个命令创建 vae 用户
然后我们将tmp.log的所有者更改为 vae 用户:chown vae tmp.log
其中umask 执行显示结果是 0022,第一个0表示特殊权限,后面我们会单独进行讲解有哪几种特殊权限。022表示权限的掩码值,我们用7 7 7 减去 0 2 2得到755(是每一位相减),表示的就是下面通过加上-S输出的rwxr-xr-x,这个值用数字表示就是755.
这个意思说明创建一个文件的默认权限所有者为rwx,所属组为rx,其他人为rx。也就是说创建一个新文件默认权限为 rwxr-xr-x,我们创建一个文件来验证一下:
我们发现使用touch命令创建了一个文件a.txt,然后发现权限并不是rwxr-xr-x,而是rw-r--r--。对比发现少了三个x,也就是少了可执行权限。这是为什么呢?
这是因为在Linux系统中,所有新创建的文件都是没有可执行权限的。这是出于Linux系统的一种自我保护,因为类似的病毒木马程序都是具有可执行权限的。所以在Linux系统中,新创建的文件是没有可执行权限的。
那么我们如何设置默认权限呢?比如我们想将新创建的文件权限设置为rwxr-xr--,也就是754。我们用777减去754得到023。也就是通过执行 umask 023 来完成默认权限设置。
Linux 命令连接符大全:
1、 ; (分号)这个连接符是依次顺序执行写出的命令,空格可有可无,图中是大家要了解的。
2、如图,先用ls查看目录文件内容,在写入命令 date;pwd;touch one (查看系统时间;查看当前目录;创建名为one的文件。)命令执行完成后在用ls查看是否有one文件。
3、 逻辑与关系,第一个命令成功 第二个命令才会执行,如果第一个命令执行失败第二个不执行,具体如图是大家要理解的;
4、如图 命令为:# ls -l date (查看相信信息与系统时间),发现两个命令全部执行了。
5、如图命令为:# ok date(ok这个命令是没有的,date查看系统时间),得到的结果是两个命令都没有执行。
6、|| 是逻辑或的关系,第一个命令成功 第二个命令不执行,如果第一个命令执行失败第二个执行,具体如图是大家要理解的。
7、如图 命令为:# ls -l || date (查看相信信息或系统时间),发现只是执行了查看相信信息的命令。
8、如图命令为:# ok || date(ok这个命令是没有的,date查看系统时间),得到的结果是ok是错误的命令所以不能执行,而date执行了得到了系统时间。
软链接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接。
具体用法是: ln -s 源文件 目标文件
当 我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在其它的 目录下用ln命令链接(link)就可以,不必重复的占用磁盘空间。
例如:
这样我们就对/usr/bin目录下的mysql命令创建了软连接 。
创建软连接
ln -s [源文件或目录] [目标文件或目录]
例如:当前路径创建test引向/var/www/test 文件夹
创建/var/test 引向/var/www/test 文件夹
删除软连接
和删除普通的文件是一样的,删除都是使用 rm 来进行操作
例:
删除test
修改软链接
ln –snf [新的源文件或目录] [目标文件或目录]
这将会修改原有的链接地址为新的地址
例如:
创建一个软链接
修改指向新的路径
常用参数:
-f : 链结时先将与 dist 同档名的档案删除
-d : 允许系统管理者硬链结自己的目录
-i : 在删除与 dist 同档名的档案时先进行询问
-n : 在进行软连结时,将 dist 视为一般的档案
-s : 进行软链结(symbolic link)
-v : 在连结之前显示其档名
-b : 将在链结时会被覆写或删除的档案进行备份
-S SUFFIX : 将备份的档案都加上 SUFFIX 的字尾
-V METHOD : 指定备份的方式
--help : 显示辅助说明
--version : 显示版本
这是linux中一个非常重要命令,请大家一定要熟悉。它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln
-s
源文件
目标文件。
当
我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的
目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。例如:ln
-s
/bin/less
/usr/local/bin/less-s
是代号(symbolic)的意思。
这
里有两点要注意:第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;第二,ln的链接又软链接
和硬链接两种,软链接就是ln
-s
**
**,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln
**
**,没有参数-s,
它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。
如果你用ls察看一个目录时,发现有的文件后面有一个@的符号,那就是一个用ln命令生成的文件,用ls
-l命令去察看,就可以看到显示的link的路径了。摘自
ComeOnTom的专栏
各个命令依次执行,输出结果,互不影响。
前一个命令的输出(左边),作为后一个命令的输入(右边),可以连续使用。
wc -l 计算输入内容的行数
tail -f pv.log | grep 'abc'
将此命令后台运行,shell可立即执行其他命令。
[]内会打印后台任务数,后面是一个PID,进程标识;
d e f :后台执行d和e,前台执行f
只有前一个命令执行成功,才会执行后面的命令。最后一个命令执行,代表前面的都执行成功了。
中间有一个执行不成功,后面的命令就不会执行了。
前面的命令执行失败才会去执行后面的命令,直到执行成功。有一条命令执行成功,后面的就不会去执行了。
参考:
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流