我想要运行watch
一个使用可选命令行参数的命令,如下所示:
function queue() {
watch -n 10 'squeue -p ${1:-default} -o "%.8i" '
}
但命令行参数没有被使用,也就是说只使用默认值。我试过$
按照这个答案进行逃避(例如watch -n 10 'squeue -p \${1:-default} -o "%.8i" '
),但这也不起作用。
任何帮助均感激不尽。
答案1
当内容在单引号中时,不会发生变量扩展,请尝试
function queue() {
watch -n 10 "squeue -p ${1:-default} -o '%.8i'"
}
因此外引号是双引号,这将在字符串内进行变量扩展