一、pwd命令是"print working directory"中每个单词的首字母缩写,其功能是显示当前工作目录的绝对路径。在实际工作中,我们在命令行操作命令时,经常会在各个目录路径间切换,此时可使用pwd命令快速查看当前所在的目录路径。
pwd #显示当前工作目录的绝对路径 ====告诉我,你在哪里
[root@jindada ~]# cd /usr/
[root@jindada usr]# pwd
/usr
[root@jindada usr]# cd local/
[root@jindada local]# pwd
/usr/local
二、cd命令 #切换工作目录 切换路径
[root@jindada local]# cd #直接切换到当前用户的家目录
[root@jindada ~]# pwd
/root
[root@jindada ~]# cd ~ #切换当前用户的家目录 ==== cd /root
[root@jindada ~]# cd . #保持当前目录不变
[root@jindada ~]# cd ./ #保持当前目录不变
[root@jindada ~]# cd .. #切换当前目录的上一级目录
[root@jindada /]# cd
[root@jindada ~]# cd ../ #切换当前目录的上一级目录
[root@jindada /]#
[root@jindada /]# cd usr/
[root@jindada usr]# cd ./local/
[root@jindada local]# pwd
/usr/local
[root@jindada local]# cd ../etc/ #切换当前目录的上一级目录/usr下的etc目录
[root@jindada etc]# pwd
/usr/etc
[root@jindada usr]# cd ../etc/ #不同目录下,执行的相对路径操作,得到的结果是不同的
[root@jindada etc]# pwd
/etc
[root@jindada etc]# cd / #切换到根目录 根本身也是一个目录
[root@jindada /]# cd - #切换到你上一次所在的目录 快速的到达上一次所在的路径
/etc
三、ls #显示文件或者目录列表信息 打开目录 显示目录里面的内容
常用选项:
-l #以长格式形式显示文件或者目录的详细属性信息
-i #显示文件或者目录的inode信息 索引节点信息
-h #以字节大小显示文件大小 B KB MB GB
-a #显示所有文件,隐藏文件 所有以点开头的文件就是隐藏文件
-S #以文件大小进行排序 从大到小显示
-t #根据时间进行排序 最新的时间在最上面
-r #倒序排序
-F #给不同的文件加上不同的标识符
-d #显示目录本身信息
/ #目录
* #可执行文件
= #套接字文件 socker文件
| #管道文件
[root@jindada ~]# ls #如果不加目录信息,默认针对的是当前目录操作
anaconda-ks.cfg day01.txt dead.letter oldboy qingshu_dir test.txt
[root@jindada ~]# ls /root/
anaconda-ks.cfg day01.txt dead.letter oldboy qingshu_dir test.txt
[root@jindada ~]# ls -l #系统自带别名相当于[root@jindada ~]# ll
total 12
-rw-------. 1 root root 1350 Jul 8 12:26 anaconda-ks.cfg
-rw-r--r-- 1 root root 30 Jul 8 12:09 day01.txt
-rw-------. 1 root root 2276 Jul 3 14:31 dead.letter
drwxr-xr-x 12 root root 106 Jul 8 12:18 oldboy
drwxr-xr-x 2 root root 46 Jul 6 12:20 qingshu_dir
-rwxr-xr-x 1 root root 0 Jul 7 20:40 test.txt
[root@jindada ~]# ll -i #显示文件的inode信息
total 12
134317666 -rw-------. 1 root root 1350 Jul 8 12:26 anaconda-ks.cfg
134380621 -rw-r--r-- 1 root root 30 Jul 8 12:09 day01.txt
134915040 -rw-------. 1 root root 2276 Jul 3 14:31 dead.letter
201533705 drwxr-xr-x 12 root root 106 Jul 8 12:18 oldboy
202273667 drwxr-xr-x 2 root root 46 Jul 6 12:20 qingshu_dir
134380624 -rwxr-xr-x 1 root root 0 Jul 7 20:40 test.txt
[root@jindada ~]# ll -h #以字节大小显示文件信息
total 12K
-rw-------. 1 root root 1.4K Jul 8 12:26 anaconda-ks.cfg
-rw-r--r-- 1 root root 30 Jul 8 12:09 day01.txt
-rw-------. 1 root root 2.3K Jul 3 14:31 dead.letter
drwxr-xr-x 12 root root 106 Jul 8 12:18 oldboy
drwxr-xr-x 2 root root 46 Jul 6 12:20 qingshu_dir
-rwxr-xr-x 1 root root 0 Jul 7 20:40 test.txt
10月24日 程序员日
[root@jindada ~]# ll -a #显示所有的文件,隐藏文件
total 48
dr-xr-x---. 5 root root 272 Jul 8 12:29 .
dr-xr-xr-x. 18 root root 236 Jul 3 16:31 ..
-rw-------. 1 root root 1350 Jul 8 12:26 anaconda-ks.cfg
-rw-------. 1 root root 3258 Jul 8 00:48 .bash_history
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
drwxr-xr-x. 2 root root 68 Jul 6 12:20 .certs
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
-rw-r--r-- 1 root root 30 Jul 8 12:09 day01.txt
-rw-------. 1 root root 2276 Jul 3 14:31 dead.letter
-rw------- 1 root root 170 Jul 7 11:04 .mysql_history
drwxr-xr-x 12 root root 106 Jul 8 12:18 oldboy
drwxr-xr-x 2 root root 46 Jul 6 12:20 qingshu_dir
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
-rwxr-xr-x 1 root root 0 Jul 7 20:40 test.txt
-rw------- 1 root root 6003 Jul 7 18:40 .viminfo
[root@jindada ~]# ll -aS #显示所有的文件,隐藏文件,并从大到小显示
total 48
-rw------- 1 root root 6003 Jul 7 18:40 .viminfo
-rw-------. 1 root root 3258 Jul 8 00:48 .bash_history
-rw-------. 1 root root 2276 Jul 3 14:31 dead.letter
-rw-------. 1 root root 1350 Jul 8 12:26 anaconda-ks.cfg
dr-xr-x---. 5 root root 272 Jul 8 12:29 .
dr-xr-xr-x. 18 root root 236 Jul 3 16:31 ..
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
-rw------- 1 root root 170 Jul 7 11:04 .mysql_history
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
drwxr-xr-x 12 root root 106 Jul 8 12:18 oldboy
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
drwxr-xr-x. 2 root root 68 Jul 6 12:20 .certs
drwxr-xr-x 2 root root 46 Jul 6 12:20 qingshu_dir
-rw-r--r-- 1 root root 30 Jul 8 12:09 day01.txt
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rwxr-xr-x 1 root root 0 Jul 7 20:40 test.txt
[root@jindada ~]# ll -at #显示所有文件,隐藏文件并根据时间进行排序
total 48
dr-xr-x---. 5 root root 272 Jul 8 12:29 .
-rw-------. 1 root root 1350 Jul 8 12:26 anaconda-ks.cfg
drwxr-xr-x 12 root root 106 Jul 8 12:18 oldboy
-rw-r--r-- 1 root root 30 Jul 8 12:09 day01.txt
-rw-------. 1 root root 3258 Jul 8 00:48 .bash_history
-rwxr-xr-x 1 root root 0 Jul 7 20:40 test.txt
-rw------- 1 root root 6003 Jul 7 18:40 .viminfo
-rw------- 1 root root 170 Jul 7 11:04 .mysql_history
drwxr-xr-x. 2 root root 68 Jul 6 12:20 .certs
drwxr-xr-x 2 root root 46 Jul 6 12:20 qingshu_dir
dr-xr-xr-x. 18 root root 236 Jul 3 16:31 ..
-rw-------. 1 root root 2276 Jul 3 14:31 dead.letter
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
[root@jindada ~]# ll -atr #显示所有文件,隐藏文件并根据时间顺序进行倒序排序
total 48
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-------. 1 root root 2276 Jul 3 14:31 dead.letter
dr-xr-xr-x. 18 root root 236 Jul 3 16:31 ..
drwxr-xr-x 2 root root 46 Jul 6 12:20 qingshu_dir
drwxr-xr-x. 2 root root 68 Jul 6 12:20 .certs
-rw------- 1 root root 170 Jul 7 11:04 .mysql_history
-rw------- 1 root root 6003 Jul 7 18:40 .viminfo
-rwxr-xr-x 1 root root 0 Jul 7 20:40 test.txt
-rw-------. 1 root root 3258 Jul 8 00:48 .bash_history
-rw-r--r-- 1 root root 30 Jul 8 12:09 day01.txt
drwxr-xr-x 12 root root 106 Jul 8 12:18 oldboy
-rw-------. 1 root root 1350 Jul 8 12:26 anaconda-ks.cfg
dr-xr-x---. 5 root root 272 Jul 8 12:29 .
[root@jindada ~]# ll -aSr #显示所有文件,隐藏文件并根据文件大小进行倒序排序
total 48
-rwxr-xr-x 1 root root 0 Jul 7 20:40 test.txt
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r-- 1 root root 30 Jul 8 12:09 day01.txt
drwxr-xr-x 2 root root 46 Jul 6 12:20 qingshu_dir
drwxr-xr-x. 2 root root 68 Jul 6 12:20 .certs
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
drwxr-xr-x 12 root root 106 Jul 8 12:18 oldboy
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
-rw------- 1 root root 170 Jul 7 11:04 .mysql_history
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
dr-xr-xr-x. 18 root root 236 Jul 3 16:31 ..
dr-xr-x---. 5 root root 272 Jul 8 12:29 .
-rw-------. 1 root root 1350 Jul 8 12:26 anaconda-ks.cfg
-rw-------. 1 root root 2276 Jul 3 14:31 dead.letter
-rw-------. 1 root root 3258 Jul 8 00:48 .bash_history
-rw------- 1 root root 6003 Jul 7 18:40 .viminfo
[root@jindada ~]# ll -aF #显示所有文件,隐藏文件并加上不同的标识符
total 48
dr-xr-x---. 5 root root 272 Jul 8 12:29 ./
dr-xr-xr-x. 18 root root 236 Jul 3 16:31 ../
-rw-------. 1 root root 1350 Jul 8 12:26 anaconda-ks.cfg
-rw-------. 1 root root 3258 Jul 8 00:48 .bash_history
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 Dec 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 Dec 29 2013 .bashrc
drwxr-xr-x. 2 root root 68 Jul 6 12:20 .certs/
-rw-r--r--. 1 root root 100 Dec 29 2013 .cshrc
-rw-r--r-- 1 root root 30 Jul 8 12:09 day01.txt
-rw-------. 1 root root 2276 Jul 3 14:31 dead.letter
-rw------- 1 root root 170 Jul 7 11:04 .mysql_history
drwxr-xr-x 12 root root 106 Jul 8 12:18 oldboy/
drwxr-xr-x 2 root root 46 Jul 6 12:20 qingshu_dir/
-rw-r--r--. 1 root root 129 Dec 29 2013 .tcshrc
-rwxr-xr-x 1 root root 0 Jul 7 20:40 test.txt*
-rw------- 1 root root 6003 Jul 7 18:40 .viminfo
[root@jindada ~]# ll -d /root/ #显示/root/目录本身信息
dr-xr-x---. 5 root root 272 Jul 8 12:29 /root/
[root@jindada ~]# ls / #显示/目录下的文件
bin data etc lib media opt root sbin sys usr
boot dev home lib64 mnt proc run srv tmp var
[root@jindada ~]# ls -l / #以行的形式显示文件名称
total 20
lrwxrwxrwx. 1 root root 7 Jun 9 21:35 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 Jun 9 21:42 boot
drwxr-xr-x. 3 root root 17 Jul 3 16:32 data
drwxr-xr-x 19 root root 3180 Jul 8 09:02 dev
drwxr-xr-x. 85 root root 8192 Jul 8 09:02 etc
drwxr-xr-x. 3 root root 16 Jul 7 20:41 home
lrwxrwxrwx. 1 root root 7 Jun 9 21:35 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Jun 9 21:35 lib64 -> usr/lib64
drwxr-xr-x. 2 root root 6 Apr 11 2018 media
drwxr-xr-x. 2 root root 6 Apr 11 2018 mnt
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
dr-xr-xr-x 110 root root 0 Jul 8 09:02 proc
dr-xr-x---. 5 root root 272 Jul 8 12:29 root
drwxr-xr-x 27 root root 780 Jul 8 11:36 run
lrwxrwxrwx. 1 root root 8 Jun 9 21:35 sbin -> usr/sbin
drwxr-xr-x. 2 root root 6 Apr 11 2018 srv
dr-xr-xr-x 13 root root 0 Jul 8 10:32 sys
drwxrwxrwt. 19 root root 4096 Jul 8 15:32 tmp
drwxr-xr-x. 13 root root 155 Jun 9 21:35 usr
drwxr-xr-x. 19 root root 267 Jun 9 21:44 var
四、tree #以树状形式显示目录列表
安装:
[root@jindada ~]# yum -y install tree
选项:
-a #显示所有文件或者目录 隐藏文件
-d #只显示目录及目录的数量
-f #以绝对路径显示目录列表
-h #显示文件的大小
-F #给不同类型的文件加上不同的标识符
/ #目录
* #可执行文件
= #套接字文件 socker文件
| #管道文件
-L #根据目录的基本显示
[root@jindada ~]# tree #显示当前目录的目录列表
.
├── anaconda-ks.cfg
├── day01.txt
├── dead.letter
├── qingshu_dir
│ ├── qingshu1.txt
│ └── qingshu2.txt
└── test.txt
1 directory, 6 files
[root@jindada ~]# tree -a #显示当前目录的全部文件。隐藏文件列表
.
├── anaconda-ks.cfg
├── .bash_history
├── .bash_logout
├── .bash_profile
├── .bashrc
├── .certs
│ ├── cert8.db
│ ├── key3.db
│ ├── qq.crt
│ └── secmod.db
├── .cshrc
├── day01.txt
├── dead.letter
├── .mysql_history
├── qingshu_dir
│ ├── qingshu1.txt
│ └── qingshu2.txt
├── .tcshrc
├── test.txt
└── .viminfo
2 directories, 18 files
[root@jindada ~]# tree -d /var/log #只显示目录及目录的数量
/var/log
├── anaconda
├── audit
├── mariadb
├── nginx
├── ntpstats
├── rhsm
├── sa
└── tuned
8 directories
[root@jindada ~]# tree -h /var/log/ #显示文件的大小
/var/log/
├── [ 176] anaconda
│ ├── [ 41K] anaconda.log
│ ├── [3.9K] ifcfg.log
│ ├── [1.9M] journal.log
│ ├── [ 0] ks-script-gg9B9N.log
│ ├── [200K] packaging.log
[root@jindada ~]# tree -L 2 /root/ #显示家目录下2级的文件或者目录
/root/
├── anaconda-ks.cfg
├── day01.txt
├── dead.letter
├── qingshu_dir
│ ├── qingshu1.txt
│ └── qingshu2.txt
└── test.txt
1 directory, 6 files
[root@sh-jindada ~]# tree -f /root #以绝对路径的形式显示文件列表
/root
├── /root/10.txt
├── /root/1.txt
├── /root/2.txt
├── /root/3.txt
├── /root/4.txt
├── /root/5.txt
├── /root/6.txt
├── /root/7.txt
├── /root/8.txt
└── /root/9.txt
五、mkdir #创建目录
选项:
-p #创建多级目录 递归创建 当目录已经存在时,再次创建不会提示报错
-v #显示创建的过程
-m #创建的时候,给目录设置一个权限
{} #生成序列 有规律和无规律 有规律使用..分割 无规律的使用逗号分割
* #通配符 所有的意思
注:在相同的路径下,不能存在相同的文件名称
在不同的路径下,可以存在相同的文件名称
[root@jindada ~]# mkdir /data #使用绝对路径进行创建
[root@jindada ~]# mkdir data #使用相对路径进行创建
[root@jindada ~]# ll
total 4
-rw-------. 1 root root 1429 Jul 6 02:17 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jul 8 19:51 data
[root@jindada ~]# ll /
total 20
lrwxrwxrwx. 1 root root 7 Jul 6 02:13 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 Jul 6 02:17 boot
drwxr-xr-x. 2 root root 6 Jul 8 19:51 data
[root@jindada ~]# mkdir /root/data
mkdir: cannot create directory ‘/root/data’: File exists
File exists #文件已经存在
解决:
1. 你要创建的目录已经存在,无需再次进行创建
2. 你要创建的目录路径书写错误
[root@jindada ~]# mkdir -p /root/data
[root@jindada ~]# mkdir test/oldboy
mkdir: cannot create directory ‘test/oldboy’: No such file or directory
[root@jindada ~]# mkdir -p test/oldboy
[root@jindada ~]# ll
total 4
-rw-------. 1 root root 1429 Jul 6 02:17 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jul 8 19:51 data
drwxr-xr-x. 3 root root 20 Jul 8 19:57 test
[root@jindada ~]# ll test/
total 0
drwxr-xr-x. 2 root root 6 Jul 8 19:57 oldboy
[root@jindada ~]# mkdir oldboy
[root@jindada ~]# mkdir 'oldboy '
[root@jindada ~]#
[root@jindada ~]# ll
total 4
-rw-------. 1 root root 1429 Jul 6 02:17 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jul 8 19:51 data
drwxr-xr-x. 2 root root 6 Jul 8 20:00 oldboy
drwxr-xr-x. 2 root root 6 Jul 8 20:00 oldboy
drwxr-xr-x. 3 root root 20 Jul 8 19:57 test
[root@jindada ~]# ll -F
total 4
-rw-------. 1 root root 1429 Jul 6 02:17 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jul 8 19:51 data/
drwxr-xr-x. 2 root root 6 Jul 8 20:00 oldboy/
drwxr-xr-x. 2 root root 6 Jul 8 20:00 oldboy /
drwxr-xr-x. 3 root root 20 Jul 8 19:57 test/
[root@jindada ~]# root 6 Jul 8 20:00 oldboy/
[root@jindada ~]# mkdir -v data01
mkdir: created directory ‘data01’
[root@jindada ~]# mkdir -m 700 data02
[root@jindada ~]# ll
total 4
-rw-------. 1 root root 1429 Jul 6 02:17 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jul 8 19:51 data
drwxr-xr-x. 2 root root 6 Jul 8 20:02 data01
drwx------. 2 root root 6 Jul 8 20:04 data02
drwxr-xr-x. 2 root root 6 Jul 8 20:00 oldboy
drwxr-xr-x. 2 root root 6 Jul 8 20:00 oldboy
drwxr-xr-x. 3 root root 20 Jul 8 19:57 test
[root@jindada ~]# echo {01..10}
01 02 03 04 05 06 07 08 09 10
[root@jindada ~]# mkdir test/data{01..10} #批量创建10个目录
[root@jindada ~]# ll test/
total 0
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data01
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data02
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data03
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data04
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data05
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data06
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data07
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data08
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data09
drwxr-xr-x. 2 root root 6 Jul 8 20:09 data10
[root@jindada ~]# echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
[root@jindada ~]# echo {a..g}
a b c d e f g
[root@jindada ~]# echo {A..Z}
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
[root@jindada ~]# mkdir test/oldboy-{a..g}
[root@jindada ~]# ll -d test/oldboy-*
drwxr-xr-x. 2 root root 6 Jul 8 20:11 test/oldboy-a
drwxr-xr-x. 2 root root 6 Jul 8 20:11 test/oldboy-b
drwxr-xr-x. 2 root root 6 Jul 8 20:11 test/oldboy-c
drwxr-xr-x. 2 root root 6 Jul 8 20:11 test/oldboy-d
drwxr-xr-x. 2 root root 6 Jul 8 20:11 test/oldboy-e
drwxr-xr-x. 2 root root 6 Jul 8 20:11 test/oldboy-f
drwxr-xr-x. 2 root root 6 Jul 8 20:11 test/oldboy-g
[root@jindada ~]# mkdir data-{a,c,d,h}
[root@jindada ~]# ll
total 4
-rw-------. 1 root root 1429 Jul 6 02:17 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 Jul 8 19:51 data
drwxr-xr-x. 2 root root 6 Jul 8 20:02 data01
drwx------. 2 root root 6 Jul 8 20:04 data02
drwxr-xr-x. 2 root root 6 Jul 8 20:12 data-a
drwxr-xr-x. 2 root root 6 Jul 8 20:12 data-c
drwxr-xr-x. 2 root root 6 Jul 8 20:12 data-d
drwxr-xr-x. 2 root root 6 Jul 8 20:12 data-h
[root@jindada ~]# mkdir -p oldboy/{01..10}/data{01..10}/test{01..10}
#在Linux系统中,是区分大小写的
[root@jindada ~]# mkdir a
[root@jindada ~]# mkdir A
[root@jindada ~]# ll
total 4
drwxr-xr-x. 2 root root 6 Jul 8 12:25 a
drwxr-xr-x. 2 root root 6 Jul 8 12:25 A
六、touch #创建文件 创建空文件 当文件已经存在时,创建的时候不会报错,但是会改变文件的时间戳
{} #生成序列 有规律和无规律 有规律使用..分割 无规律的使用逗号分割
举例:
[root@jindada ~]# touch test.txt
[root@jindada ~]# touch data.{txt,sh,log,xml,tar,py,js}
[root@jindada ~]# ll
-rw-r--r--. 1 root root 0 Jul 8 12:27 data.js
-rw-r--r--. 1 root root 0 Jul 8 12:27 data.log
-rw-r--r--. 1 root root 0 Jul 8 12:27 data.py
-rw-r--r--. 1 root root 0 Jul 8 12:27 data.sh
-rw-r--r--. 1 root root 0 Jul 8 12:27 data.tar
-rw-r--r--. 1 root root 0 Jul 8 12:27 data.txt
-rw-r--r--. 1 root root 0 Jul 8 12:27 data.xml
[root@jindada ~]# touch data{01..10}.txt
[root@jindada ~]# ll
-rw-r--r--. 1 root root 0 Jul 8 12:28 data01.txt
-rw-r--r--. 1 root root 0 Jul 8 12:28 data02.txt
-rw-r--r--. 1 root root 0 Jul 8 12:28 data03.txt
-rw-r--r--. 1 root root 0 Jul 8 12:28 data04.txt
-rw-r--r--. 1 root root 0 Jul 8 12:28 data05.txt
-rw-r--r--. 1 root root 0 Jul 8 12:28 data06.txt
-rw-r--r--. 1 root root 0 Jul 8 12:28 data07.txt
-rw-r--r--. 1 root root 0 Jul 8 12:28 data08.txt
-rw-r--r--. 1 root root 0 Jul 8 12:28 data09.txt
-rw-r--r--. 1 root root 0 Jul 8 12:28 data10.txt
七、cp #复制或者拷贝文件
语法: 命令 源文件 目标目录
选项:
-r #递归复制 复制目录时所使用的
-p #保持源文件属性
-d #复制的时候保持软连接
-a === -pdr
-t #把源文件的位置根目标目录的位置进行调换 在批量拷贝文件时使用
-i #当拷贝的文件在目标目录已经存在时,提示是否覆盖 系统自带的别名
举例:
[root@jindada ~]# cp /etc/hosts /root
[root@jindada ~]# cp /etc/passwd ./
[root@jindada ~]# cp /etc/resolv.conf .
[root@jindada ~]# ll
total 12
-rw-r--r--. 1 root root 158 Jul 9 09:11 hosts
-rw-r--r--. 1 root root 873 Jul 9 09:11 passwd
-rw-r--r--. 1 root root 51 Jul 9 09:11 resolv.conf
[root@jindada ~]# cp /opt/ ./
cp: omitting directory ‘/opt/’
[root@jindada ~]# cp -r /opt/ ./
[root@jindada ~]# ll
total 12
-rw-r--r--. 1 root root 158 Jul 9 09:11 hosts
drwxr-xr-x. 2 root root 6 Jul 9 09:14 opt
-rw-r--r--. 1 root root 873 Jul 9 09:11 passwd
-rw-r--r--. 1 root root 51 Jul 9 09:11 resolv.conf
[root@jindada ~]# ll /etc/grub2.cfg
lrwxrwxrwx. 1 root root 22 Jul 6 02:14 /etc/grub2.cfg -> ../boot/grub2/grub.cfg
[root@jindada ~]# cp /etc/grub2.cfg ./
[root@jindada ~]# ll
total 20
-rw-r--r--. 1 root root 4229 Jul 9 09:16 grub2.cfg
-rw-r--r--. 1 root root 158 Jul 9 09:11 hosts
drwxr-xr-x. 2 root root 6 Jul 9 09:14 opt
-rw-r--r--. 1 root root 873 Jul 9 09:11 passwd
-rw-r--r--. 1 root root 51 Jul 9 09:11 resolv.conf
[root@jindada ~]# rm -f grub2.cfg
[root@jindada ~]# cp -d /etc/grub2.cfg ./
[root@jindada ~]# ll
total 12
lrwxrwxrwx. 1 root root 22 Jul 9 09:16 grub2.cfg -> ../boot/grub2/grub.cfg
-rw-r--r--. 1 root root 158 Jul 9 09:11 hosts
drwxr-xr-x. 2 root root 6 Jul 9 09:14 opt
-rw-r--r--. 1 root root 873 Jul 9 09:11 passwd
-rw-r--r--. 1 root root 51 Jul 9 09:11 resolv.conf
[root@jindada ~]# cp -t ./ /etc/fstab
[root@jindada ~]# ll
total 16
lrwxrwxrwx. 1 root root 7 Jul 6 02:13 bin -> usr/bin
-rw-r--r--. 1 root root 501 Jul 9 09:21 fstab
lrwxrwxrwx. 1 root root 22 Jul 9 09:16 grub2.cfg -> ../boot/grub2/grub.cfg
-rw-r--r--. 1 root root 158 Jul 9 09:11 hosts
drwxr-xr-x. 2 root root 6 Jul 9 09:14 opt
-rw-r--r--. 1 root root 873 Jul 9 09:11 passwd
-rw-r--r--. 1 root root 51 Jul 9 09:11 resolv.conf
[root@jindada ~]# cp /etc/hosts ./
cp: overwrite ‘./hosts’? n
[root@jindada ~]# alias
alias cp='cp -i'
#强制覆盖不提示 临时取消别名
[root@jindada ~]# cp /etc/hosts ./
八、mv #移动或者重命名文件
语法:命令 源文件 目标目录
选项:
-i #当文件已经存在时,移动的时候,提示是否覆盖目标文件 系统自带别名
-f #强制覆盖,不提示
-t #把源文件的位置跟目标目录的位置进行调换
#临时取消别名的含义
[root@sh-jindada ~]# mv --help
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...
[root@sh-jindada ~]# mv hosts /opt #移动文件 ,原位置的文件已经存在
[root@sh-jindada ~]# ll
total 12
-rw-r--r--. 1 root root 4201 Jun 15 12:24 grub2.cfg
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
-rw-r--r--. 1 root root 1013 Jun 15 12:27 passwd
drwxr-xr-x. 2 root root 23 Jun 15 12:22 test
[root@sh-jindada ~]# ll /opt/
total 4
-rw-r--r--. 1 root root 158 Jun 15 12:15 hosts
[root@sh-jindada ~]# mv test/ /opt/ #移动目录 不需要加任何选项
[root@sh-jindada ~]# ll
total 12
-rw-r--r--. 1 root root 4201 Jun 15 12:24 grub2.cfg
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
-rw-r--r--. 1 root root 1013 Jun 15 12:27 passwd
[root@sh-jindada ~]# ll /opt/
total 4
-rw-r--r--. 1 root root 158 Jun 15 12:15 hosts
drwxr-xr-x. 2 root root 23 Jun 15 12:22 test
[root@sh-jindada ~]# cp /etc/hosts ./
[root@sh-jindada ~]# ll
total 16
-rw-r--r--. 1 root root 4201 Jun 15 12:24 grub2.cfg
-rw-r--r--. 1 root root 158 Jun 16 09:05 hosts
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
-rw-r--r--. 1 root root 1013 Jun 15 12:27 passwd
[root@sh-jindada ~]# mv hosts /opt/ #文件已经存在时,提示是否覆盖
mv: overwrite ‘/opt/hosts’? n
[root@sh-jindada ~]# mv -i hosts /opt/
mv: overwrite ‘/opt/hosts’? n
[root@sh-jindada ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i' #系统自带的别名
[root@sh-jindada ~]# mv -f hosts /opt/ #强制覆盖
[root@sh-jindada ~]# ll
total 12
-rw-r--r--. 1 root root 4201 Jun 15 12:24 grub2.cfg
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
-rw-r--r--. 1 root root 1013 Jun 15 12:27 passwd
[root@sh-jindada ~]# ll /opt/
total 4
-rw-r--r--. 1 root root 158 Jun 16 09:05 hosts
drwxr-xr-x. 2 root root 23 Jun 15 12:22 test
[root@sh-jindada ~]# cp /etc/passwd ./
cp: overwrite ‘./passwd’? n
[root@sh-jindada ~]# cp /etc/passwd ./ #临时取消别名的作用
[root@sh-jindada ~]# ll
total 12
-rw-r--r--. 1 root root 4201 Jun 15 12:24 grub2.cfg
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
-rw-r--r--. 1 root root 1013 Jun 16 09:09 passwd
[root@sh-jindada ~]# mv -t ./ /opt/hosts #把原位置跟目标位置进行调换
[root@sh-jindada ~]# ll
total 16
-rw-r--r--. 1 root root 4201 Jun 15 12:24 grub2.cfg
-rw-r--r--. 1 root root 158 Jun 16 09:05 hosts
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
-rw-r--r--. 1 root root 1013 Jun 16 09:09 passwd
[root@sh-jindada ~]# ll /opt/
total 0
drwxr-xr-x. 2 root root 23 Jun 15 12:22 test
#重命名
[root@sh-jindada ~]# mv grub2.cfg 123.txt
[root@sh-jindada ~]# ll
total 16
-rw-r--r--. 1 root root 4201 Jun 15 12:24 123.txt
-rw-r--r--. 1 root root 158 Jun 16 09:05 hosts
drwxr-xr-x. 2 root root 6 Apr 11 2018 opt
-rw-r--r--. 1 root root 1013 Jun 16 09:09 passwd
[root@sh-jindada ~]# mv opt/ test
[root@sh-jindada ~]# ll
total 16
-rw-r--r--. 1 root root 4201 Jun 15 12:24 123.txt
-rw-r--r--. 1 root root 158 Jun 16 09:05 hosts
-rw-r--r--. 1 root root 1013 Jun 16 09:09 passwd
drwxr-xr-x. 2 root root 6 Apr 11 2018 test
九、rename #利用替换字符串的方式进行重命名
[root@jindada ~]# rename test oldboy test.txt
[root@jindada ~]# ll
total 4
-rw-r--r--. 1 root root 158 Jul 9 10:00 host
drwxr-xr-x. 2 root root 6 Jul 9 09:59 mot
-rw-r--r--. 1 root root 0 Jul 9 10:08 oldboy.txt
十、 rm #删除文件或者目录
选项:
-i #在删除文件的时候,提示你是否确认删除 系统别名
-f #强制删除不提示
-r #删除目录使用 递归删除
[root@sh-jindada ~]# rm 123.txt #提示你是否确认删除
rm: remove regular file ‘123.txt’? n
[root@sh-jindada ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i' #提示是否删除文件
[root@sh-jindada ~]# rm -f 123.txt #强制删除不提示
[root@sh-jindada ~]# ll
total 8
-rw-r--r--. 1 root root 158 Jun 16 09:05 hosts
-rw-r--r--. 1 root root 1013 Jun 16 09:09 passwd
drwxr-xr-x. 2 root root 6 Apr 11 2018 test
[root@sh-jindada ~]# rm -f test/
rm: cannot remove ‘test/’: Is a directory #这是个目录
[root@sh-jindada ~]# rm -rf test/ #递归目录
[root@sh-jindada ~]# ll
total 8
-rw-r--r--. 1 root root 158 Jun 16 09:05 hosts
-rw-r--r--. 1 root root 1013 Jun 16 09:09 passwd
[root@sh-jindada ~]# rm -rf ./ #删除当前所在位置的目录
[root@sh-jindada ~]# rm -rf ./* #删除一个目录下的所有内容 排除隐藏文件 确认好自己在那里
==
[root@sh-jindada ~]# rm -rf *
[root@sh-jindada ~]# rm -rf /* #禁止执行此命令