我想删除echo
命令(位于 中/bin/echo
),但命令 echo 仍然正常工作。当我使用which
命令时,它确认echo
已删除
/usr/bin/which: 没有回显 (/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/斌:/根/斌)
你知道发生了什么吗
我正在尝试使用脚本在安装过程中构建我的 fstab,所以我想要这样的东西:
printf '# Device\t\tMountpoint\tFSType\tOptions\t\tDump\tPass#' >> /mnt/etc/fstab
printf '\n/dev/ada0p4.elia\t/\t\tufs\trw\t\t1\t2' >> /mnt/etc/fstab
printf '\n/dev/ada0p3.eli\t\tnone\t\tswap\tsw\t\t0\t0' >> /mnt/etc/fstab
printf '\n/dev/ada0p2\t\t/unencrypted\tufs\tro\t\t1\t1' >> /mnt/etc/fstab
有没有办法用回声在 csh 中做到这一点?
我已经尝试过,但无法正常工作。例如,这是我的 FreeBSD 9.0-RELEASE-p1 盒子上的测试和输出:
# echo test\ttest > test
# cat test
testttest
这里出了什么问题?
我特别询问有关 FreeBSD 的问题。我使用默认的 /bin/csh 作为我的 shell。/bin/echo 中有一个二进制版本的 echo,shell 中内置了一个 echo 命令。系统命令无法使用 System V 样式的反斜杠转义字符,例如:
\n
\t
我希望能够在不临时更改路径或删除 /bin/echo 的情况下更喜欢 shell 的内置命令而不是系统命令。