您正在使用哪个Shell?什么OS?
与Linux和BASH这将是:
#!/bin/bash
# Set variable $var1, it will contain a string - 'file':
var1='file'
# Set variable $var2, it will contain a string - 'another_file':
var2='another_file'
# Run 'rm' command with an argument - a variable $var1
# So it's like running a command "rm file"
rm $var1
# Run 'ln' command with $var1 and $var2 as arguments
# So it's like running a command "ln file another_file"
ln $var1 $var2
但在Mac OS X ln
有不同的语法,你必须切换参数在ln
:
ln $var2 $var1
编辑:此外,你的问题可能是你使用文件路径中有空格,所以bash显示"no such file or directory"
错误。 由于rm
的语法,找不到该文件。例如:
var1='long named file'
rm $var1
该脚本并运行一个命令"rm long named file"
,这反过来,删除三个文件 - long
,named
和file
。 然后,会做的事情你:
rm "$var1"
ln "$var1" "$var2"
这个问题(和你的另外两个近期的)清楚地表明,你真的需要得到一个shell脚本的书,而不是尝试玩“猜语法”或“当这个失败时问这个问题。“恕我直言,通过给你答案进一步帮助你真的会对你不利。 – SiegeX