早教吧 育儿知识 作业答案 考试题库 百科 知识分享

Linuxshell命令,-d,-d+dirName.具体如下:[-d/root/Desktop/]&&chmod777/root/Desktop/download.desktop[-d/root/Desktop/]&&chmod777/root/桌面/download.desktopchmod777以及后面我明白.不明白的是chmod前面的部分.我

题目详情
Linux shell 命令,-d,-d + dirName.具体如下:
[ -d /root/Desktop/ ] && chmod 777 /root/Desktop/download.desktop
[ -d /root/Desktop/ ] && chmod 777 /root/桌面/download.desktop
chmod 777以及后面我明白.不明白的是chmod前面的部分.
我的分数不多,所以回答后再给.
▼优质解答
答案和解析
[ ] 部分是判断表达式,-d 表示判断是否是目录(directory).
&& 是“逻辑与”操作符(这个与C语法类似啊),只有 && 前面的判断成立(返回逻辑真),后面的语句才会得到执行.
总之,含义就是:
若/root/Desktop/为目录,就执行 chmod 777 /root/Desktop/download.desktop
若/root/Desktop/不是目录(不存在该目录),就执行 chmod 777 /root/桌面/download.desktop
其实就是处理 Desktop 是英文和中文两种情况.