Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

出道小题目考考这里的朋友

[复制链接]
xlink 发表于 2005-6-13 22:23:52 | 显示全部楼层 |阅读模式
以前,为了添加一个超级用户,修改了/etc/passwd文件的内容,在修改前对passswd做了备份。
cd /etc
cp passwd -passwd
在添加完后,/etc下留下了-passwd文件,无法删除或是重新命名-passwd文件。
rm -passwd
rename -passwd passwd
mv -passwd passwd
这几个命令都把“-”看做了参数,而提示错误。

现在您来删除或是改改名(我已经知道答案)。
要求用命令行改,不在x窗口里改名。
loveapple 发表于 2005-6-14 12:12:07 | 显示全部楼层

老大,这种问题也值得一考

帮你一把


在/etc下执行
  1. rm  ./-passwd
复制代码
回复

使用道具 举报

cqfanli 发表于 2005-6-14 13:57:41 | 显示全部楼层
呵呵,楼上的正确!
遇到特殊不能删除的文件,均可以加上路径或者./,表示一个指定或者当前目录下的文件或者目录~
回复

使用道具 举报

Temoc 发表于 2005-6-15 11:29:06 | 显示全部楼层
偶收了~
回复

使用道具 举报

readme 发表于 2005-6-15 11:40:23 | 显示全部楼层
原帖由 loveapple 于 2005-6-14 12:12 发表
帮你一把


在/etc下执行
  1. rm  ./-passwd
复制代码


还有另外一个方法 rm -- -passwd
回复

使用道具 举报

 楼主| xlink 发表于 2005-6-15 12:13:33 | 显示全部楼层
正解:rm  ./-passwd

其它类似的:rm -i *(?)passwd(然后选择y或n)
                  rm /etc/-passwd

rm -- -passwd

高招!以前还不知道这种解法,测试完全正确。
回复

使用道具 举报

loveapple 发表于 2005-6-15 23:26:55 | 显示全部楼层
原帖由 xlink 于 2005-6-15 13:13 发表
正解:rm  ./-passwd

其它类似的:rm -i *(?)passwd(然后选择y或n)
                  rm /etc/-passwd


高招!以前还不知道这种解法,测试完全正确。


你的方法测试过没有哇,
不好用

上面的两种方法在帮助中就有写
  1. rm --help
  2. Usage: rm [OPTION]... FILE...
  3. Remove (unlink) the FILE(s).

  4.   -d, --directory       unlink FILE, even if it is a non-empty directory
  5.                           (super-user only; this works only if your system
  6.                            supports `unlink' for nonempty directories)
  7.   -f, --force           ignore nonexistent files, never prompt
  8.   -i, --interactive     prompt before any removal
  9.       --no-preserve-root do not treat `/' specially (the default)
  10.       --preserve-root   fail to operate recursively on `/'
  11.   -r, -R, --recursive   remove the contents of directories recursively
  12.   -v, --verbose         explain what is being done
  13.       --help     display this help and exit
  14.       --version  output version information and exit

  15. To remove a file whose name starts with a `-', for example `-foo',
  16. use one of these commands:
  17.   rm -- -foo

  18.   rm ./-foo

  19. Note that if you use rm to remove a file, it is usually possible to recover
  20. the contents of that file.  If you want more assurance that the contents are
  21. truly unrecoverable, consider using shred.

  22. Report bugs to <bug-coreutils@gnu.org>.
复制代码
回复

使用道具 举报

 楼主| xlink 发表于 2005-6-16 00:17:48 | 显示全部楼层
对不起,rm -i *在linux下不成立。
sco unix5.05可以。

呵呵,你到是挺仔细。
回复

使用道具 举报

loveapple 发表于 2005-6-16 00:42:17 | 显示全部楼层
我说怎么没见过你的那种写法
呵呵
回复

使用道具 举报

 楼主| xlink 发表于 2005-6-16 00:55:50 | 显示全部楼层
linux看起来和unix差不多,区别还是很大啊。

linux不加./就不知道是当前路径,unix就知道;linux对通配符也不如unix支持得彻底;
看起来一样的东西,只是似是而非,真的要好好学习一下了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-23 20:21 , Processed in 0.032503 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表