Linux中一切皆文件,目录也是文件(目录文件),用来保存文件,相当于windows中的文件夹的概念。
[1]mkdir建立目录
(词汇:make directory)
mkdir [-p] [目录名]
选项:-p表示递归创建(先建立上级再建立下级),可以建立嵌套的目录。
[root@bogon ~]# mkdir -p test1/test2
[root@bogon ~]# ls
anaconda-ks.cfg install.log install.log.syslog test1
[root@bogon ~]# cd test1/
[root@bogon test1]# ls
test2
[2]cd切换所在目录
(词汇:change directory)
cd [路径]
选项:没有选项。
[root@bogon test1]# cd ~
[root@bogon ~]#
简化操作:”cd ~”或”cd “进入当前用户的家目录,”cd -“进入上次目录,”cd ..”进入上级目录,”cd .”进入当前目录(没啥用)。
[3]路径和补全
相对路径:参照当前所在目录进行查找。
[root@bogon ~]# cd ../usr/local/
[root@bogon local]#
绝对路径:从根目录开始查找。
[root@bogon local]# cd /etc/
[root@bogon etc]#
路径补全:在打目录时,可以按Tab键获得帮助,如下面的例子中,根目录”/”下有多个文件,所以要按两下Tab就能看到所有的文件,然后打了”cd /u”再按Tab键,因为根目录里只有一个u开头的目录user,就会自动补全,再打下”/l”,因为/user/下有多个l开头的目录,按两下Tab键就会显示这里所有l开头的目录了。
命令补全:也是按Tab键,如果只有唯一符合要求的命令就会直接补全,如果不唯一可以按两下Tab列出所有符合匹配的命令。
[4]pwd查询所在目录位置
(词汇:print working directory)
选项:没有选项。
[root@bogon test1]# pwd
/root/test1
[5]rmdir删除空目录
(词汇:remove empty directory)
[root@bogon ~]# rmdir test1/
rmdir: 删除 "test1/" 失败: 目录非空
[root@bogon ~]# cd test1/
[root@bogon test1]# rmdir test2/
[root@bogon test1]#
[6]rm删除文件或目录
(词汇:remove)
rm [-r -f] [文件或目录]
选项:-r删除目录,-f强制。
*删文件
[root@bogon test1]# touch abc
[root@bogon test1]# rm abc
rm:是否删除普通空文件 "abc"?y
[root@bogon test1]#
*删目录
[root@bogon ~]# rm -r test1/
rm:是否进入目录"test1"? y
rm:是否删除普通空文件 "test1/abc"?y
rm:是否删除目录 "test1"?y
[root@bogon ~]#
*强制删除而不提示
[root@bogon ~]# rm -rf test1/
[root@bogon ~]# ls
anaconda-ks.cfg install.log install.log.syslog
要小心,强制删除在linux中会严格执行,在windows中开机状态下不能格式化系统盘,但是linux中却可以用
rm -rf /
强制删除根目录。
[7]cp复制命令
(词汇:copy)
cp [-r -p -d -a] [原文件或目录] [目标目录]
选项:-r复制目录,-p连带文件属性复制,-d若源文件是链接文件则复制链接属性,-a相当于-pdr即所有的属性都会完全一样。
[root@bogon ~]# ls
anaconda-ks.cfg install.log install.log.syslog
[root@bogon ~]# cp anaconda-ks.cfg /tmp/newname
[root@bogon ~]# ls /tmp/
newname yum.log
如果目标目录后不加名称,就是原名复制,如果加了名称就是改名复制。
[root@bogon ~]# cp -a anaconda-ks.cfg /tmp/newname
[root@bogon ~]# ll -h
总用量 44K
-rw-------. 1 root root 1.4K 8月 22 18:22 anaconda-ks.cfg
-rw-r--r--. 1 root root 27K 8月 22 18:22 install.log
-rw-r--r--. 1 root root 7.4K 8月 22 18:20 install.log.syslog
[root@bogon ~]# ll -h /tmp/
总用量 4.0K
-rw-------. 1 root root 1.4K 8月 22 18:22 newname
-rw-------. 1 root root 0 8月 22 18:12 yum.log
可以发现就连文件的最后修改时间也是一样的了,在复制一些日志等文件时这样是有必要的。注:”ll”命令是”ls -l”的别名。
[8]mv剪切或改名
(词汇:move)
mv [原文件或目录] [目标目录]
选项:没有选项。
[root@bogon ~]# cd /tmp/
[root@bogon tmp]# ll
总用量 4
-rw-------. 1 root root 1392 8月 22 18:22 newname
-rw-------. 1 root root 0 8月 22 18:12 yum.log
[root@bogon tmp]# mv newname lzh
[root@bogon tmp]# ll
总用量 4
-rw-------. 1 root root 1392 8月 22 18:22 lzh
-rw-------. 1 root root 0 8月 22 18:12 yum.log
只要原文件或目录本来就在目标目录下(上面不写就是当前目录),就可以实现改名。