一、文件的路径
1.路径:目录的组成结构
一个linux路径由 "/" 和 目录(文件)名称 两部分组成
2.路径分类
绝对路径:从根开始的路径是绝对路径。例如:
/home/alice/file1
/etc/grub.conf
**无论当前工作目录在哪,都能通过绝对路径找到某个文件!
相对路径:凡是非根开始的路径。例如:
etc
var/ftp/pub
./test.sh
可以使用cd命令切换工作目录的路径
目录文件(存放目录,类似于文件夹)==> 只有目录文件后可以加 "/"
普通文件(存放文字)==> 普通文件后不能出现 "/"
二、Linux的文件管理
(一)文件类型
- - 普通文件:存放文字
- d 目录文件:存放其他文件
- b 块设备文件,block device(如硬盘,U盘)
- c 字符设备文件(比如我们的终端tty1,打印机)
- l 符号链接文件,symbolic link,又称软链接文件 (浅蓝色,如快捷方式)
- s 套接字文件,socket,用于实现两个进程进行通信(A应用能链接到B应用)
- p 管道文件(运输作用)
示例:
[root@linux-server ~]# ll -d /etc/hosts /bin/ls /home /dev/sda /dev/tty1 /etc/grub2.cfg /dev/log /run/dmeventd-client
-rwxr-xr-x. 1 root root 117656 Nov 6 2016 /bin/ls
srw-rw-rw-. 1 root root 0 Oct 31 14:16 /dev/log
brw-rw----. 1 root disk 8, 0 Oct 31 14:16 /dev/sda
crw--w----. 1 root tty 4, 1 Oct 31 14:42 /dev/tty1
lrwxrwxrwx. 1 root root 22 Oct 31 12:11 /etc/grub2.cfg -> ../boot/grub2/grub.cfg
-rw-r--r--. 1 root root 158 Jun 7 2013 /etc/hosts
drwxr-xr-x. 2 root root 6 Nov 5 2016 /home
prw-------. 1 root root 0 Oct 31 14:16 /run/dmeventd-client
(二)文件管理命令
1.切换目录:cd
# . 表示当前目录
# cd .. 回到上一级目录等同于相对路径
# cd 或者 cd ~ 直接回到家目录
# cd /home/alice 切换目录=绝对路径
# cd - 回到原来目录
2.创建文件:
(1)touch 文件名
[root@linux-server ~]# touch file1.txt //无则创建,如果存在修改时间
[root@linux-server ~]# touch /home/file10.txt
[root@linux-server ~]# touch /home/{zhuzhu,gougou} //{}集合
[root@linux-server ~]# touch /home/file{1..20} //批量创建
(2)echo 重定向 文件名
若文件不存在,则创建文件,并写入内容;若文件存在,则覆盖(>)或追加(>>)内容到文件中
echo 加内容 > 加文件名 #覆盖:把之前的内容替换掉
# echo 123 > a.txt echo 加内容 >> 加文件名 #追加:保留之前的内容,在后面添加新内容
# echo 345345 >> a.txt #文件不存在时,会创建该文件并将内容追加到该文件中
3.创建目录:mkdir
语法:mkdir -v 详细 -p 递归 目录
# mkdir dir1
创建两个目录:
# mkdir /home/dir2 /home/dir3
# mkdir /home/{dir4,dir5}
# mkdir -v /home/{dir6,dir7} #-v :verbose 冗长的。显示创建时的详细信息
# mkdir -p /home/dir8/111/222 #-p 创建连级目录,一级一级的创建
4.拷贝文件:cp 原文件 目标文件路径
参数:-r 目录 -v 详细 -f 强制 -n 静默
# mkdir /home/dir{1,2} #创建目录
# cp -v anaconda-ks.cfg /home/dir1/ #-v 显示详细信息
# cp anaconda-ks.cfg /home/dir1/test.txt #复制并改文件名
# cp -r /etc /home/dir1 #-r 拷贝目录使用,连同目录里面的文件一块拷贝
#将多个文件拷贝到同一个目录
#语法: cp -r 源文件1 源文件2 源文件N 目标目录
# cp -r /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/passwd /etc/hosts .
# cp -r /etc /tmp
5.移动文件:mv
语法:mv 源文件 目标目录
在同一个目录下,可使用mv将文件重命名:mv /root/file1.txt /root/file2.txt
***cp或mv命令,如果目标地址文件不存在,则为改名效果(不适用于多文件)!
6.删除文件:rm
语法:删除 rm -r 递归删除目录 -f force强制 -v 详细过程 *通配符
8.查看文件内容
8.1.查看一个文件的全部内容:cat
参数:
-n 显示行号
-A 包括控制字符(换行符/制表符)
$符号:行尾结束符号
8.2.头部:head(默认查看文件前10行)
8.3.尾部:tail(默认查看文件后10行)
[root@linux-server ~]# tail -20f /var/log/secure //-f 动态查看文件的尾部
8.4.针对文件内容进行过滤:grep
过滤文件中带有root的内容:
[root@linux-server ~]# grep 'root' /etc/passwd
过滤以root开头的行:^ --以什么开头
[root@linux-server ~]# grep '^root' /etc/passwd
过滤以bash结尾的行:$ --以什么结尾
[root@linux-server ~]# grep 'bash$' /etc/passwd
8.5分页显示:less / more
[root@linux-server ~]# less /etc/makedumpfile.conf.sample
1.空格键是翻页 回车键是翻行
2.上下箭头可以来回翻
3. /关键字 #搜索 (n按关键字往下翻 N按关键字往上翻)
4.快捷键:q -quit 退出