#!/bin/bash
echo "Unesite argument:$1 "
var=$1
if [[ ! -f "$var" ]]
then
touch $var
sleep 1
echo "Nova datoteka $var je kreirana."
else
echo "Ova datoteka vec postoji, unesite drugu."
sleep 1
fi
为什么我收到“触摸缺少文件操作数”
答案1
您没有为脚本提供参数。结果, 和 都$1
扩展$var
为空字符串。
空字符串肯定不是存在的文件名,因此touch $var
被执行。因为你没有引用展开,就相当于touch
没有任何参数。
如果你有引用$var
,你会执行touch ""
,这会给你一个不同的错误消息,类似于
touch: : No such file or directory
因为空字符串不是合法的文件名。