正确删除软链接方式
Darchan
原创
已关注
3点赞·596人阅读
正确删除软链接方式
PS:今天遇到软链接删除时,把源文件也删除的情况,记录并总结一下正确删除软链接方式。
一. 建立软连接
建立软链接命令
ln -s 源文件/目录 软链接文件/目录
复制
执行删除 *** 作
rm -rf 软链接文件/目录
复制
二. 测试实手脊验
对文件建立软链接,新建立a.txt, 为其建立软链接b.txt
ll
-rw-rw-r-- 1 cui cui 0 Oct 26 17:50 a.txt
lrwxrwxrwx 1 cui cui 5 Oct 26 17:52 b.txt ->a.txt
复制
删除文件软链接
rm -rf b.txt // b.txt软链接文件被删除,a.txt仍存在
rm -rf b.txt/ // a.txt 和 b.txt 仍然存在
复制
进一步地
对目录建立软链接,新建立test1目录,并在其中建立a.txt文件。 为test1建立软链接test2
ln -s test1 test2
ll
drwxrwxr-x 2 cui cui 4096 Oct 26 18:00 test1/
lrwxrwxrwx 1 cui cui 5 Oct 26 18:00 test2 ->test1/
复制
删除目录软链接
1)方式一
rm -rf test2 // 只删除软链接目录,test1中源文件还在
ll
drwxrwxr-x 2 cui cui 4096 Oct 26 18:00 test1/
cd test1 //拍裂 test1 中源文件a.txt 还在
ls
a.txt
复制
2)方式二
rm -rf test2/ // test1 和 test2 只有两个空目录
ll
drwxrwxr-x 2 cui cui 4096 Oct 26 20:17 test1/
lrwxrwxrwx 1 cui cui 5 Oct 26 20:16 test2 ->test1/
cd test1 // test1 中源文件a.txt 被删除了,test2中也没有软链接文件了
ls
复制
总结
对于文件来说,直接删除软链接并不会删除源文件;
对于目录而言,直接删除软链接目录(没有“/”)不会删除源文件,但是若删除目录时多添加了“/”,那么袭薯闭会只保留两个空目录(源文件目录和软链接目录中文件都没了)。
服务器上,对data文件夹建立软链接softlink_data后,如果想删除软链接,则执行 rm -rf softlink_data,不要加/.
unlink删除文件的方法:1
bool unlink( string $filename[,resource $context])
删除 filename。和 Unix C 的unlink() 函数相似。发生错误时会产生一个 E_WARNING 级别的错误。
filename:文件的路径。
context:在 PHP 5.0.0 中增加了对上下仔弯文(Context)的支持。
返回值:成功时返回 TRUE, 或者在失败时返回 FALSE。
说明裂戚斗:
自 PHP 5.0.0 起 unlink()也可以用于某些URL 封装协议:
file:// — 访问本地文件系统
http:// — 访问 HTTP(s) 网址
ftp:// — 访问 FTP(s) URLs
php:/肆磨/ — 访问各个输入/输出流(I/O streams)
zlib:// — 压缩流
data:// — 数据(RFC 2397)
glob:// — 查找匹配的文件路径模式
phar:// — PHP 归档
ssh2:// — Secure Shell 2
rar:// — RAR
ogg:// — 音频流
expect:// — 处理交互式的流
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)