1.文件路径定位
# /bin, /sbin, /lib, /lib64都以软链接的形式链接到/usr/目录下
/bin –> /usr/bin
/sbin –> /usr/sbin
lib -> usr/lib
lib64 -> usr/lib64# 路径非常重要,名字一样,单不一定是一个文件# 相对路径: 相对于当前文件,目录的路径
# 绝对路径:从根路径下开始找win:c dlinxu /# . 和 ... 表示当前路径.. 表示上一层# 以后看到 . .. 都是用相对,看到 / 都是绝对./ 相对../ 相对
2.cd操作
cd #切换目录,例: cd /etc
cd - #切换回上一次所在的目录
cd ~ #切换回当前用户的家目录,注意:root和普通用户是否有所不同吗?
cd . #代表当前目录,一般在拷贝、移动等情况下使用 cp /etc/hostname ./
cd .. #切换回当前目录的上级目录
2.系统文件管理:创建/复制/移动/删除
2.1 文件创建
touch file #无则创建,有则修改时间rm -rf fil* 把fil开头的全删除
2.2 创建目录
# 目录创建命令mkdir# 选项:-v 显示详细信息 -p 递归创建目录
mkdir dir1
mkdir /home/od/dir1 /home/od/dir2
mkdir -v /home/od/{dir3,dir4}
mkdir -pv /home/od/dir5/dir6
mkdir -pv /home/{od/{diu,but},boy}
2.3 以树状显示目录结构命令tree
yum install -y tree #需要下载第三方tree 路径目录
oo
└── aa└── bb
2.4 cp 复制
#选项: -v:详细显示命令执行的操作 -r: 递归处理目录与子目录 -p: 保留源文件或目录的属性cp file /tmp/file_copy
cp name /tmp/name #不修改名称
cp file /tmp/ #不修改名称
cp -p file /tmp/file_p #-p保持原文件或目录的属性
cp -r /etc/ /tmp/ #复制目录需要使用-r参数, 递归复制
cp -rv /etc/hosts /etc/hostname /tmp #拷贝多个文件至一个目录
cp -rv /etc/{hosts,hosts.bak}
cp -rv /etc/hosts{,-org}
2.5 mv移动
mv file file1 #原地移动算改名
mv file1 /tmp/ #移动文件至tmp目录
mv /tmp/file1 ./ #移动tmp目录的文件至当前目录
mv dir/ /tmp/ #移动目录至/tmp目录下touch file{1..3}
mv file1 file2 file3 /opt/ #移动多个文件或至同一个目录mkdir dir{1..3}
mv dir1/ dir2/ dir3/ /opt #移动多个目录至同一个目录
2.6 rm删除
#选项:-r: 递归 -f: 强制删除 -v: 详细过程
rm file.txt #删除文件, 默认rm存在alias别名,rm -i所以会提醒是否删除文件
rm -f file.txt #删除文件, 不提醒rm -r dir/ #递归删除目录,会提示
rm -rf dir/ #强制删除目录,不提醒(慎用)#1.rm删除示例
mkdir /home/dir10
touch /home/dir10/{file2,file3,.file4}
rm -f /home/dir10/ //不包括隐藏文件
ls /home/dir10/ -a
. .. .file4#2.rm删除示例2
touch file{1..10}
touch {1..10}.pdf
rm -rf file
rm -rf .pdf
3.系统文件管理:查看文件内容
(cat less more head tail grep )
3.1 cat,tac
#------cat
cp /etc/passwd ./pass
cat pass #正常查看文件方式
cat -n pass #-n显示文件有多少行
cat -A pass #查看文件的特殊符号,比如文件中存在tab键
tac pass cat >> 文件名 <<EOF
内容
EOF
3.2 less more
#------less、more ,查看一部分文件内容,less可以上下翻,more只能向下翻
less /etc/services #使用光标上下翻动,空格进行翻页,q退出
more /etc/services #使用回车上下翻动,空格进行翻页,q退出(有百分比)
3.3 head
#------head
head pass #查看头部内容,默认前十行
head -n5 pass #查看头部5行,使用-n指定
ps aux | head -5 # 只看头部5个进程
ls -al | head -3 # 查看ls结果的头三个
3.4 tail
#------tail
tail pass # 查看文件尾部,默认10行
tail -20 /var/log/secure # 查看文件尾部20行
tail -f /var/log/messages #-f动态查看文件尾部的变化
tailf /var/log/messages #查看文件尾部的变化
ps aux | tail -2
3.5 grep --------过滤文
# /etc/passwd 存放用户的文件#------grep过滤文件内容
grep "^root" pass #匹配以root开头的行
grep "bash$" pass #匹配以bash结尾的行
grep -i "ftp" pass #忽略大小写匹配
grep -Ei "sync$|ftp" pass #匹配文件中包含sync结尾或ftp字符串
4.文件管理之:文件或命令查找(locate、which、whereis、find)
# 命令查找
whereis 命令名
which 命令名# 找文件
find / -name lqz.txt # 从根路径下开始找 名字叫lqz.txt的文件
5 文件管理之:字符处理命令(wc)
# wc统计行号
#选项:-l显示文件行数 -c显示文件字节 -w显示文件单词# wc -l /etc/fstab #统计/etc/fstab文件有多少行
# wc -l /etc/services #统计/etc/services 文件行号
# ls |wc -l
#cat /etc/fstab | wc -l #统计/etc/fstab文件有多少行
6 系统文件属性
#-rw-r--r--. 1 root root 35 7月 27 10:33 lqz.txt# -rw-r--r--. # 第一个- 表示文件类型(一会讲),后面的rwx,表示权限,后面会说
# 1 # 硬链接次数
# root #文件属于哪个用户
# root # 文件属于哪个组
# 87811 #文件大小
# 7月 27 10:33 :最新修改的时间与日期
# a.jpeg ⑨:文件或目录名称ll -d /etc/hosts /tmp /bin/ls /dev/sda /dev/tty1 /etc/grub2.cfg /dev/log /run/dmeventd-client
# 文件类型:
- #普通文件(文本, 二进制, 压缩, 图片, 日志等)
d #目录文件
b #设备文件(块设备)存储设备硬盘 /dev/sda1, /dev/sda2
c #设备文件(字符设备),终端 /dev/tty1, /dev/zero
s #套接字文件, 进程间通信(socket)
p #管道文件
l #链接文件