shell脚本中: if [ -f ⼀FileA -a -O ⼀FileB ]; then 语句中判断条件怎么理解,逻辑关系是什么?

2025-03-25 00:47:42
推荐回答(3个)
回答1:

你可以在man test,看到
EXPRESSION1 -a EXPRESSION2
both EXPRESSION1 and EXPRESSION2 are true
EXPRESSION1 -o EXPRESSION2
either EXPRESSION1 or EXPRESSION2 is true
,-a就是两者都为真,-o就是其中一个为真

-f FILE
FILE exists and is a regular file
-O FILE
FILE exists and is owned by the effective user ID

回答2:

shell的意思是壳,在计算机领域的意思是人机界面。人在壳外,计算机在壳内。

PC的DOS系统就是人机界面,用键盘打入的命令或让计算机执行的命令组合bat文件,都通过界面的解释,告诉计算机要执行的任务。

unix,linux等系统也有类似DOS的东西,有sh,csh等人机界面,它们的bat就是 sh 脚本,csh 脚本 (script).

人机界面的核心,是一个解释程序。

3

回答3:

-a是and,左右条件两者都成立
-o是or,左右条件任意一条成立