2015-11-02 79 views
0

我在尝试为bash脚本编写主目录测试。我需要这种功能,因为不同步所有权的同步。bash中的chown目录

#!/bin/bash 

user=test 

"chown $user:$user /home/$user" 

当我使用上面的脚本,我得到一个消息 “test.sh:5号线:CHOWN测试:测试〜/家/测试/:没有这样的文件或目录 ” 的

输出

ls -l /home/ |grep test 
drwx------ 5 pwresettest  1005 121 2. Nov 04:23 pwresettest 
drwx------ 14 test   1001 4096 29. Okt 05:41 test 

当我使用命令行命令,它的工作原理没有问题。

我做错了什么?

+1

当你在命令行中使用'chown'时,你不会引用整个命令。不要在剧本中这样做。 –

+0

工作..好像我只是发布了错误的话题。 chown没有工作,因为另一个命令 – Twinhand

回答

3

shell将带引号的字符串视为一个单词来作为命令的名称,而不是命令名称后跟参数。只需摘下您在脚本中添加的引号即可:

#!/bin/bash 

user=test 

chown $user:$user /home/$user 
+1

这里的解决方案是正确的,但问题描述的第一部分根本没有意义。 –

+0

伊坦,谢谢你为我澄清! – Mantas

-2

当您在命令行上使用chown时,不会引用整个命令。不要在剧本中这样做。 - Etan Reisner