技术分享:linux文件管理一

快捷键

编辑命令:
Ctrl + a :移到命令行首
Ctrl + e :移到命令行尾
Ctrl + xx:在命令行首和光标之间移动
Ctrl + u :从光标处删除至命令行首
Ctrl + k :从光标处删除至命令行尾
Ctrl + w :从光标处删除至字首
Ctrl + d :删除光标处的字符
Ctrl + h :删除光标前的字符

重新执行命令:
Ctrl + r:逆向搜索命令历史
Ctrl + p:历史中的上一条命令
ESC + .:打印之前执行过的命令的最后一部分 以空格为分隔符

控制命令:
Ctrl + l:清屏
Ctrl + c:终止命令

Tab键: 自动补全

1.Linux目录结构

在linux系统中一切皆文件

1.1 WINDOWS/LINUX 对比

 Windows: 以多根的方式组织文件 C:\ D:\ E:\
 Linux: 以单根的方式组织文件"/"

1.2 简介

 /目录结构:
 FSH (Filesystem Hierarchy Standard):标准的目录结构
 [root@linux-server ~]# ls /
 bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
 boot  etc  lib   media  opt  root  sbin  sys  usr

1.3 目录功能

 bin 普通用户使用的命令 /bin/ls, /bin/date
 sbin 管理员使用的命令 /sbin/service 
 案例:
 [root@linux-server ~]# which ls
 [root@linux-server ~]# which useradd
 /usr/sbin/useradd
 ​
 dev 设备文件 /dev/sda,/dev/sda1
 [root@linux-server ~]# ll /dev/sd*
 brw-rw----. 1 root disk 8, 0 Oct 31 14:16 /dev/sda
 brw-rw----. 1 root disk 8, 1 Oct 31 14:16 /dev/sda1
 brw-rw----. 1 root disk 8, 2 Oct 31 14:16 /dev/sda2
 ​
 /root  #root用户的家目录
 /home  #存储普通用户家目录 
 lost+found 这个目录平时是空的,存储系统非正常关机而留下“无家可归”
 的文件
 /usr         #系统文件,相当于C:\Windows
 /usr/local   #软件安装的目录,相当于C:\Program
 /usr/bin    #普通用户使用的应用程序
 /usr/sbin   #管理员使用的应用程序
 /usr/lib       库文件Glibc 32bit
 /usr/lib64    库文件Glibc 64bit
 /boot        存放的系统启动相关的文件,例如kernel
 /etc         #配置文件(系统相关如网络/etc/sysconfig/network)
 /tmp         临时文件(系统:程序产生的临时文件)
 /opt         空目录
 ​
 /var  #存放的是一些变化文件,比如数据库,日志,邮件....
 /proc  虚拟文件系统,系统程序文件所处目录 。虚拟文件系统:只要关机就会没有。
 ==设备(主要指存储设备)挂载目录==
 /mnt   #系统提供这个目录是让用户临时挂载其他的文件系统
 /run 存放进程的PID文件的

路径详解

 所谓路径即目录组成结构
 一个linux路径由"/"和目录(文件)名称两部分组成
 比如:/etc/passwd
     如果"/"出现在路径开头,则其表示根目录,在路径中间出现"/",其含义是某一个目录下,那么上面所示路径的意思就是"根目录下的etc目录下的passwd文件"
     如果路径最后出现"/",则表示这是一个目录

路径分类

 绝对路径:从根开始的路径是绝对路径。案例:/home/alice/file1  /etc/grub.conf
 相对路径:凡是非根开始的路径 比如:etc  var/ftp/pub ./test.sh
 ​
 使用pwd命令查看当前所在的绝对路径:
 比如:
 [root@qfedu etc]# pwd
 /etc

绝对路径实例:

 [root@linux-server ~]# useradd alice  #创建用户
 [root@linux-server ~]# touch /home/alice/file1

相对路径示例

 [root@linux-server ~]# pwd
 /root
 [root@linux-server ~]# mkdir abc  #创建目录
 [root@linux-server ~]# touch abc/file3

查看历史命令

 [root@linux-server ~]# history
 [root@linux-server ~]# clear  #清屏
 快捷键:ctrl+l  #---清屏

2.文件管理

2.1 文件类型(理解即可)

  - 普通文件(文本文件,二进制文件,压缩文件,图片。。。)
  d 目录文件(蓝色)
  b 设备文件  block device 设备文件,如硬盘,U盘;
  c 设备文件 字符设备文件,比如我们的终端tty1,打印机。
  l symbolic link 即符号链接文件,又称软链接文件 (浅蓝色)
  s  socket 即套接字文件,用于实现两个进程进行通信
  p  管道文件

2.2示例1

查看各式各样的文件类型。你能找出几种呢?

 [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

3.文件管理命令

3.1 切换目录---cd

 # .     表示当前目录
 # cd .. 回到上一级目录等同于相对路径
 # cd 或者 cd ~    直接回到家目录
 # cd /home/alice  切换目录=绝对路径
 # cd -  回到原来目录

2.2 创建文件

 [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}  //批量创建
 [root@linux-server ~]# cd /home
 [root@linux-server home]# touch file{1..10}.txt
 echo  加内容   >  加文件名    #覆盖:把之前的内容替换掉
 # echo 123 > a.txt
 echo  加内容  >> 加文件名     #追加:保留之前的内容,在后面添加新内容
 # echo 345345 >> a.txt
 ​
 当使用echo 123 >> a.txt 这个命令的时候在文件不存在的时候会创建该文件并将内容追加到改文件中
 ​
 重定向

2.3 创建目录

语法: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 创建连级目录,一级一级的创建

2.4.复制

 ==复制 cp -r 目录 -v 详细 -f 强制   -n  静默
 Usage: cp [OPTION]... [-T] SOURCE DEST
 # 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
 ​
 -a   在拷贝文件的时候不改变权限、属性

2.5 移动

1.创建一个新文件file1

 [root@linux-server ~]# touch /root/file1

2.把file1文件移动到/tmp目录中。

 [root@linux-server ~]# mv /root/file1 /tmp/
 [root@linux-server ~]# ls /tmp/file1 
 /tmp/file1

3.把file1文件更名为file2

 [root@linux-server ~]# mv /tmp/file1 /tmp/file2

4.观察file1文件已经更名为file2

 [root@linux-server ~]# cd /tmp/
 [root@linux-server tmp]# ls
 file2

2.6 删除

 ==删除 rm   -r 递归删除目录 -f force强制 -v 详细过程     *通配符
 实例1:删除/home/dir1 
 # cd /home/
 # rm -rf dir1/
 ​
 -r 递归,删除目录时
 -f force强制
 -v 详细过程

示例2:

 [root@linux-server ~]# mkdir /home/dir10
 [root@linux-server ~]# touch /home/dir10/{file2,file3,.file4}
 [root@linux-server ~]# rm -rf /home/dir10/*  //不包括隐藏文件
 [root@linux-server ~]# ls /home/dir10/ -a 
 .  ..  .file4

示例3:

 [root@linux-server ~]# touch {1..10}.txt
 [root@linux-server ~]# touch file{1..20}.txt  #创建file1-10的txt文件
 [root@linux-server ~]# rm -rf file1*

2.7 查看文件内容

cat---查看一个文件的全部内容

 [root@linux-server ~]# cat /etc/passwd
 root:x:0:0:root:/root:/bin/bash
 bin:x:1:1:bin:/bin:/sbin/nologin
 daemon:x:2:2:daemon:/sbin:/sbin/nologin
 adm:x:3:4:adm:/var/adm:/sbin/nologin
 ...
 ​
 参数:
 -n 显示行号
 -A 包括控制字符(换行符/制表符)

head头部

 [root@linux-server ~]# head /etc/passwd  //默查看前十行
 [root@linux-server ~]# head -2 /etc/passwd  //默认查看前两行

tail尾部

 [root@linux-server ~]# tail /etc/passwd //默认查看文件的后十行
 [root@linux-server ~]# tail -1 /etc/passwd  //查看文件最后一行
 [root@linux-server ~]# tail /var/log/messages
 [root@linux-server ~]# tail -f /var/log/secure  //-f 动态查看文件的尾部
 [root@linux-server ~]# tailf /var/log/secure  //功能同上

grep过滤关键字 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

less --分页显示

 [root@linux-server ~]# less /etc/makedumpfile.conf.sample
 1.空格键是翻页  回车键是翻行
 2.上下箭头可以来回翻
 3. /关键字     #搜索 (n按关键字往下翻   N按关键字往上翻)
 4.快捷键:q -quit 退出

more --分页显示文件内容

 [root@qfedu.com ~]# more  文件名       
 空格键是翻页  回车键是翻行
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值