2.1 查看文件与目录: ls
- 需要结合不同参数反复练习。
2.2 复制、删除与移动:cp,rm,mv
cp
:复制+创建连接文件(快捷方式)
mv
:移动+ 重命名(rename)
rm
:删除
-
cp (复制文件或目录)
例1:cp ~/.bashrc /tmp/bashrc
表示:将 .bashrc 复制到 /tmp 文件下,并更名为bashrc。
cp -i ~/.bashrc /tmp/bashrc
cp:是否覆盖'/tmp/bashrc'? y
例2:切换目录到 /tmp,并将var/log/wtmp 复制到 /tmp 且查看属性。
cp /var/log/wtmp .
最后的“空格 ."不要忘。
查看属性:ls -l /var/log/wtmp wtmp
(ls -l :列出长数据串,包含文件的属性与权限等数据)
rw-rw-r-- 1 root utmp 6528 10月 3 10:45 /var/log/wtmp
-rw-rw-r-- 1 lc lc 6528 10月 3 10:53 wtmp
cp 在不加任何参数的情况下,文件的某些属性/权限会改变(如上 wtmp的时间发生量改变); 那么考虑以下命令:
cp -a /var/log/wtmp wtmp_2
这里用到了 cp 的参数 -a :相当于 -pdr 的意思。
例子3:复制 /etc/ 这个目录下的所有内容到 /tmp 下面。
cp /etc/ /tmp
提示cp: 略过目录'/etc/'
,由于目录不能直接复制的原因。
考虑:cp -r /etc/ /tmp
,但是我的电脑etc里面的文件打不开,提示权限不够。
(-r :递归持续复制,用于目录的复制行为,但是文件与目录的权限可能会改变)也可以用cp -a /etc/ /tmp
来执行命令,尤其是在备份的情况下。
例4:建立例1 bashrc的连接档(symbolic link)
cp的更多用法参考鸟哥的例子(5/6)
总之-再复制时,需要考虑到以下:
1.是否需要完整的保留来源档案的信息?
2.来源档案是否为连接档(symbolic link file)?(需要后面完善连接档的学习)
3.来源档是是否为特殊的文档,例如FIFO,socket(后面理解)?
4.来源文件是否为目录?
-
rm(移除档案或目录)
选项和参数:
- -f:就是force的意思,忽略不存在的 档案,不会警告讯息;
- -i:互动模式,在删除前会询问使用者是否动作(常用这个吧)。
- -r :递归删除,最常用在目录的删除
4.考虑以下两个命令:rm -rf
;rm -rf /
删除根目录。
例1:通过通配符的帮忙,将/tmp底下以bashrc开头档名通通删除。
(代表的是0到无穷多个任意字符)
rm -i bashrc
.
例2:删除一个带有-开头的档案。
首先用touch命令建立一个空档案,touch ./-aaa-
,查看刚创立的文件ls -l
,提示为:-rw-rw-r-- 1 ywu ywu 0 Oct 3 18:31 -aaa-
(档案大小为零)。
试着用rm命令删除文件,rm -aaa-
,
提示为:
Try 'rm ./-aaa-' to remove the file '-aaa-'.
为什么会提示这个命令不太明白,因为rm有移动的意思?
Try 'rm --help' for more information.
因为”-“是选项,所以系统会误判,所以尽量避免首字母是”-“是的方法,在目录上加上[ ./ ]。(”-“需要进一步理解其意义)
-
mv (移动档案与目录,或更名)
选项和参数:
- -f:就是force的意思,如果档案已经存在,不会询问而直接覆盖;
- -i:互动模式,若目标档案(destination)已经存在,不会询问而直接覆盖。
- -u :若目标档案(destination)已经存在,且source比较新,才会更新(update)。
例1:建立目录wy,并在wy目录下分别建立文件mvtest,bashrc,通过mv命令将bashrc移动到mvtest。mkdir wy
,利用pwd确认是否创建成功,切换到cd wy
,分别建立文件mvtest,bashrc。再通过mv bashrc mvtest
.mv命令
网友评论