Linux文件管理命令
1、cd ---切换所在目录
cd 回车 ---返回当前用户的家目录
cd /etc ---切换到指定目录
cd .. --- 返回上一级目录(父目录) ..代表上一级目录 .当前目录
cd - ---返回上一次所在的目录
[root@localhost ~]# cd /var/log/
[root@localhost log]# pwd
/var/log
[root@localhost log]# cd /tmp/
[root@localhost tmp]# pwd
/tmp
[root@localhost tmp]# cd -
/var/log
[root@localhost log]# pwd
/var/log
[root@localhost log]#
2、 ls ---列示当前目录下的所有内容
命令 参数 目标文件
ls 回车 ---查看当前目录内容
ls /etc ---查看指定路径下的内容
ls -l ---查看当前路径下所有文件的长格式
文件类型
-:文本文件 d:目录 l:软链接文件
s: 套接字文件 p:管道文件 c:字符设备(磁带,光盘)
b: 块设备(硬盘)
[root@localhost ~]# cd /dev/
[root@localhost dev]# ls -l
total 0
crw-rw---- 1 root video 10, 175 Sep 14 20:43 agpgart
crw------- 1 root root 10, 235 Sep 14 20:43 autofs
drwxr-xr-x 2 root root 160 Sep 14 20:43 block
drwxr-xr-x 2 root root 80 Sep 14 20:43 bsg
crw------- 1 root root 10, 234 Sep 14 20:43 btrfs-control
drwxr-xr-x 3 root root 60 Sep 14 20:43 bus
lrwxrwxrwx 1 root root 3 Sep 14 20:43 cdrom -> sr0
drwxr-xr-x 2 root root 80 Sep 14 20:43 centos
drwxr-xr-x 2 root root 3040 Sep 14 20:43 char
crw------- 1 root root 5, 1 Sep 14 20:43 console
lrwxrwxrwx 1 root root 11 Sep 14 20:43 core -> /proc/kcore
drwxr-xr-x 3 root root 60 Sep 14 20:43 cpu
crw------- 1 root root 10, 61 Sep 14 20:43 cpu_dma_latency
crw------- 1 root root 10, 62 Sep 14 20:43 crash
drwxr-xr-x 6 root root 120 Sep 14 20:43 disk
brw-rw---- 1 root disk 253, 0 Sep 14 20:43 dm-0
brw-rw---- 1 root disk 253, 1 Sep 14 20:43 dm-1
crw-rw---- 1 root audio 14, 9 Sep 14 20:43 dmmidi
drwxr-xr-x 2 root root 80 Sep 14 20:43 dri
crw-rw---- 1 root video 29, 0 Sep 14 20:43 fb0
lrwxrwxrwx 1 root root 13 Sep 14 20:43 fd -> /proc/self/fd
crw-rw-rw- 1 root root 1, 7 Sep 14 20:43 full
crw-rw-rw- 1 root root 10, 229 Sep 14 20:43 fuse
crw------- 1 root root 246, 0 Sep 14 20:43 hidraw0
crw------- 1 root root 10, 228 Sep 14 20:43 hpet
ls -a ---查看当前路径下所有内容,包含隐藏文件(以.开头)
[root@localhost ~]# ls -a
. .. anaconda-ks.cfg .bash_history .bash_logout .bash_profile .bashrc .cshrc .pki .tcshrc .viminfo
[root@localhost ~]#
ls -i ---查看文件i节点编号
[root@localhost ~]# cd /var/log/
[root@localhost log]#
[root@localhost log]#
[root@localhost log]# ls
anaconda btmp dmesg grubby_prune_debug messages secure tuned vmware-network.log wtmp
audit chrony dmesg.old lastlog ntpstats spooler vmware-network.1.log vmware-vgauthsvc.log.0 yum.log
boot.log cron firewalld maillog rhsm tallylog vmware-network.2.log vmware-vmsvc.log
[root@localhost log]#
[root@localhost log]# ls -i
70 anaconda 17606097 cron 17240329 lastlog 17274072 secure 17606090 vmware-network.2.log 17606102 yum.log
17326386 audit 17606082 dmesg 17274073 maillog 17274074 spooler 18747096 vmware-network.log
17248469 boot.log 18747091 dmesg.old 17274071 messages 17150233 tallylog 17606084 vmware-vgauthsvc.log.0
17248472 btmp 17606093 firewalld 33592272 ntpstats 17312791 tuned 17606083 vmware-vmsvc.log
33917645 chrony 16778303 grubby_prune_debug 17248470 rhsm 17606101 vmware-network.1.log 17248473 wtmp
ls -ld 目录 ---只查看目录的长格式
[root@localhost ~]# ls -ld /etc/
drwxr-xr-x. 77 root root 8192 Sep 14 20:45 /etc/
[root@localhost ~]#
ls -lh ---以人性化输出显示文件大小
[root@localhost ~]# ls -lh
total 4.0K
-rw-------. 1 root root 1.3K Mar 12 2021 anaconda-ks.cfg
[root@localhost ~]# ls -l
total 4
-rw-------. 1 root root 1260 Mar 12 2021 anaconda-ks.cfg
[root@localhost ~]#
3、查看命令的帮助文档
# man 命令 ---显示命令的详细帮助文档(man手册)
# man ls
# ls --help ---显示命令简要的帮助文档
# info 命令 ---最详细
4、查看文件内容
(1)vi编辑器在命令模式下查看文件内容
(2)cat ---查看文本文件
cat -n ---显示文件内容并显示行号
局限:只能查看小文件
[root@localhost log]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
[root@localhost log]#
[root@localhost log]#
[root@localhost log]# cat -n /etc/hosts
1 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
2 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
(3)分屏显示
# more /etc/services
空格:向下翻页 b:向上翻页 q:退出 不支持回翻
# less /etc/services
空格:向下翻页 b:向上翻页 q:退出
搜索功能
键入 /关键字 n:查找下一个 N:查找上一个
(4)head
# head -n 3 f1 ---查看f1文件的前三行
或者
# head -3 f1
tail
# tail -n 3 f1 ---查看文件的后三行
或者
# tail -3 f1
# tail -n +2 f1 ---从文件的第二行开始显示直到文件尾
# tail -f 文件名 (动态查看日志)
退出查看 ctrl c (终止进程)
(5)查看二进制文件
# strings 文件名
(6)查看文件类型
# file 文件名
5、文件的创建和删除
(1)创建
①vi编辑器创建,编辑多行数据
②touch ---修改文件的访问时间,若该文件不存在则先创建再修改访问时间,通常用来创建新的空文件
# touch 文件名
③echo aaaaaaaaaa > f1 ---将字符串重定向到文件中
> :输出重定向 ---改变原有的输出方向,重定向到文件中,只能输入单行数据
echo bbbbbbbbbb > f1 ---覆盖原文件内容
[root@localhost ~]# echo aaaaaaaaaaaaaaaa >f1
[root@localhost ~]# cat f1
aaaaaaaaaaaaaaaa
[root@localhost ~]# echo bbbbbbbbbbbbbbb > f1
[root@localhost ~]# cat f1
bbbbbbbbbbbbbbb
[root@localhost ~]#
echo bbbbbbbbbb >> f1 ---追加
[root@localhost ~]# echo aaaaaaaaaaaaaaaa >f1
[root@localhost ~]# cat f1
aaaaaaaaaaaaaaaa
[root@localhost ~]# echo bbbbbbbbbbbbbbb >> f1
[root@localhost ~]# cat f1
aaaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb
[root@localhost ~]#
(2)删除
# rm -f 文件名 文件名
-f:force 强制删除不询问
6、目录的创建和删除
(1)创建
# mkdir 目录名 ---在当前目录下创建
# mkdir /mnt/cdrom ---在指定目录下创建目录
# mkdir -m 777 目录名 ---创建目录的同时指定权限
# mkdir -p a/b/c ---创建多级子目录
(2)删除
# rmdir ---删除空目录
# rm -rf 目录名
r:指定删除的是目录
f:force 强制
7、复制 cp
(1)文件复制
# cp 拷贝的文件的路径及文件名 目标路径
当前位置在d1中
# cp f1 ../d2 ---将当前路径下f1文件复制到d2中
# cp f1 ../d2/f2 ---将当前路径下的文件复制到d2中并改名为f2
注:目标路径下存在同名文件,则提示是否覆盖
# cp -p 要拷贝的文件 目标路径 ---将文件的权限及属性一并继承下来
[root@localhost ~]# ls -l
total 8
-rw-------. 1 root root 1260 Mar 12 2021 anaconda-ks.cfg
-rw-r--r-- 1 root root 33 Sep 14 21:23 f1
[root@localhost ~]# chmod 755 f1
[root@localhost ~]# ls -l
total 8
-rw-------. 1 root root 1260 Mar 12 2021 anaconda-ks.cfg
-rwxr-xr-x 1 root root 33 Sep 14 21:23 f1
[root@localhost ~]# cp -p f1 /tmp/
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# ls -l /tmp/f1
-rwxr-xr-x 1 root root 33 Sep 14 21:23 /tmp/f1
[root@localhost ~]#
(2)复制目录
# cp -r d1 ./d3 ---将d1目录复制一份放在当前路径下改名为d3
# cp -r d3 ./d2
注:在目标路径下,若存在同名目录,则复制入
(3)移动 mv
文件移动
当前位置d1
# mv f1 ../d2 ---将f1文件移动到d2中
# mv f1 ../d2/f2 ---移动后改名为f2
注:目标路径下有同名文件,则提示是否覆盖
(4)目录移动
当前位置dd
# mv d1 ./d3 ---实现改名功能
# mv d3 ./d2 ---目标目录下有同名目录则移动入
特殊功能:给目录或文件重命名
# mv f1 f2 ---将f1文件改名为f2
# mv d1 d3 ---将d1目录改名为d3