【发布时间】:2020-08-18 01:53:44
【问题描述】:
使用 MacOSX 终端
我正在尝试制作一个 bash 脚本,它将屏幕截图放入当天新建的目录中。我能够创建目录,以及带有屏幕截图名称和文件扩展名的 .txt 文件。我创建了一个变量来保存文件。出于某种原因,这样做会导致 cat 返回“No such file..”错误。
这基本上是我的代码:
archive_screenshots(){
ymdDate=$(date +%Y-%m-%d)
#[stuff to make directory, which works]
scFile="~/Desktop/sc.txt"
scDir="~/Desktop/Screenshots/$ymdDate"
#screenshots have current date in them so grep to find
ls ~/Desktop/ | grep $ymdDate | sed 's/ /\\ /g' > "$scFile"
#File gets created, and is visible in Finder
cat "$scFile"
}
错误显示为“cat: ~/Desktop/sc.txt: No such file or directory 当我在终端中运行“cat ~/Desktop/sc.txt”时,它会正确显示文件
【问题讨论】:
-
我认为
~没有得到扩展。请改用$HOME。 -
@jordanm 你是个巫师,这解决了我的问题,经过一些调整后,我得到了整个脚本的工作。谢谢!
标签: bash macos function variables filepath