当我输入命令时
su > echo "sachin"
它要求输入密码。当我输入密码时,发生了一些奇怪的事情,如你所见:
还有一件事:还有另一个用户,Hadoop在我的笔记本电脑上,但当我这样做
su > echo "Hadoop"
它说
Hadoop 没有密码条目
这是什么意思?
答案1
啊!很棒的谜题!
只要说“ exit
”,您的所有文件都会在那里(并且您在名为的文件中错过的输出echo
)。
解释:
su > echo user
是相同的
su user > echo
因此,您正在启动一个(子)shell 并使用su
(切换用户)切换到您的用户,所有输出重定向到名为echo
!
看:
[romano:~] % cd tmp/dvd-usa-hd
[romano:~/tmp/dvd-usa-hd] % ls
dvd-usa-hd_01_01.avi
[romano:~/tmp/dvd-usa-hd] % su > echo romano
Password:
[romano:~/tmp/dvd-usa-hd] % ls
[romano:~/tmp/dvd-usa-hd] % exit
[romano:~/tmp/dvd-usa-hd] % ls
dvd-usa-hd_01_01.avi echo
[romano:~/tmp/dvd-usa-hd] % cat echo
dvd-usa-hd_01_01.avi
echo
[romano:~/tmp/dvd-usa-hd] %