我一直在尝试制作 if then else脚本但每次都错了。
我在这方面是全新的,也许我已经采取了比我可以咀嚼更多的东西,但我正在努力创建一个在启动时运行的脚本
如果文件存在/Users/Bob/Library/Safari/Bookmarks.plist
然后什么都不做
如果文件不存在(我假设这是“其他”),则将文件从/ Library / Application \ Support / Bookmarks.plist移动到/Users/Bob/Library/Safari/Bookmarks.plist
非常感谢任何反馈,非常感谢。
答案 0 :(得分:0)
DST="/Users/Bob/Library/Safari/Bookmarks.plist"
SRC="/Library/Application\ Support/Bookmarks.plist"
if [ ! -f "$DST" ]; then
mv "$SRC" "$DST"
fi
这将查看目的地是否存在。如果没有,它将移动文件。实际上应该有额外的错误检查,我不确定移动是最好的方法,因为不再是“原始”文件。
答案 1 :(得分:0)
你所描述的内容可以用伪代码编写:
if file_exists("/Users/Bob/Library/Safari/Bookmarks.plist")
exit
if not file_exists("/Users/Bob/Library/Safari/Bookmarks.plist")
move("/Library/Application\ Support/Bookmarks.plist", "/Users/Bob/Library/Safari/Bookmarks.plist")
正如你所看到的,第一个"分支"并没有真正使用,因为你无论如何都打算忽略这种情况。
但是如果我们假设,在第一种情况下,你实际上想要做一些事情,比如打印一条好消息,你就可以这样写:
if file_exists("/Users/Bob/Library/Safari/Bookmarks.plist")
print("Nothing to do!")
else
move("/Library/Application\ Support/Bookmarks.plist", "/Users/Bob/Library/Safari/Bookmarks.plist")
正如您所看到的,在此示例中," else" part相当于说"如果不是file_exists(...)"。您也可以使用"而不是":
来撤销订单if not file_exists("/Users/Bob/Library/Safari/Bookmarks.plist")
move("/Library/Application\ Support/Bookmarks.plist", "/Users/Bob/Library/Safari/Bookmarks.plist")
else
print("Nothing to do!")