linux 里 一切皆文件
7种文件类型:

  • 普通文件 f
    d 目录
    b 块设备 /dev/sda /dev/sda1 /dev/sr0
    c 字符设备 /dev/pts/0 /dev/ tty0
    #tty 查看字符设备名称
    l symbolic link 符号链接 软链接(快捷方式)
    s socket 套接字 网络进程通信的一种方式
    p pipe 管道 本地进程间的一种通信方式

shell script 脚本
alt+f2在里面输入gnome-terminal
字体放大缩小:
ctrl+shift加号
ctrl+减号
在已经打开的终端上快捷键 ctrl+shift+n

标签:
在终端内部打开标签:ctrl+shift+t
标签之间的互相切换:alt+数字
退出exit ctrl+d ctrl+shlft+q +w
print work directory 打印当前家目录 pwd

提示符:
[root@wing Desktop]#
root 当前登录账户
wing 短主机名称
Desktop 当前工作目录

表示我们当前使用的是超级账户

$             表示我们当前使用的是普通账户

输入 bash命令注意事项
格式:
#命令 [选项] [参数] [操作符]
所有命令后必须跟空格
#ls空格

ls -a

tab 补全命令

命令没补全两种可能:
命令写错
没有可执行权限
快捷键
ctrl+c 终止命令
ctrl+a 移动到行首 catl+e 行尾
Ctrl + u :从光标处删除至命令行首
Ctrl + k :从光标处删除至命令行尾
Ctrl + y :粘贴至光标后
Alt + .:之前执行过命令的一部分
ctrl+l:清屏
扩展: 硬件时间 hwclock -s 硬件到系统 -w 系统到硬件

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

路径分为两类:绝对路径和相对路径
绝对路径:凡是从根开始的路径
比如: /etc/sysconfig/ /etc/grub.conf
相对路径:凡是非根开始的路径
比如:etc var/ftp/pub ../test.txt ./test.sh

     .. .  开头 都是相对
     usr  用户资源目录

usr/local/src 软件默认安装目录
/usr/src
必知目录作用
根目录下所有一级目录全部因安装软件"filesystem"而生

 /usr   软件默认安装目录,类似于windows系统内的programs目录
          系统内所安装软件的文件会分散存储到其各个子目录下
          /usr/local/src   通常存储下载的源安装文件
          /usr/src            通常存储下载的源安装文件

 /bin     目录/usr/bin的符号链接,用来存储所有人可以使用的命令
 /sbin   目录/usr/sbin的符号链接,用来存储只有root可用的命令

 /proc   虚拟文件系统  映射当前内核状态  系统进程文件所处目录
            cpuinfo    cpu信息
            meminfo  内存信息
 /sys     虚拟文件系统,和proc不同的是如果硬件设备没有插拔操作,其子目 
            录结构不会发生变化

  /root    root账户的家目录
  /home 所有普通账户的家目录

  /etc       存储配置文件

  /var       variable 存储一些经常变化的文件(ftp发布文件的目录,web发布
               网站的目录,日志,邮件,计划任务)        
  /lib
  /lib64     library存储库文件           

  /dev       存储设备文件   
                常用设备文件:/dev/sda,/dev/sda1,/dev/tty1,/dev/tty2,/dev/
                pts/1, /dev/zero, /dev/null, /dev/random       

  /boot      存储启动文件,比如grub和内核文件

  /media   图形自动挂载所使用的目录(rhel7已经没用)
  /run        rhel7新增加目录,是/var/run的硬链接,之前的光驱和u盘自

    查看文件 文件基本操作之一

ls 文件名称
#ls //列出当前目录下的文件
#ls /root/Desktop/a.txt //单独列出文件
#ls /root/Desktop //列出目录下的文件
#ls -d /root/Desktop //显示目录本身
#ls -s //查看大小
#ls -a //all 显示所有文件 (包括隐藏文件)
#ls -R dir1 //递归显示文件
#ls -S //按文件的Size排序
#ls -t //按修改时间排序
#ls -r //逆序排列reverse
#ls -i //显示文件的inode号(索引号)
ls a // 是通配符
#ls -l //长格式显示(显示文件的详细信息)
#ls -lh //-h human 人性化显示
drwxr-xr-x. 2 root root 49 Nov 18 09:15 图片
文件类型\权限 硬链接个数 所有者 所属组 大小 修改时间 名字

短选项:单-开头并且只有一个字符的选项
多个短选项可以写到一起,大部分是没有顺序
比如: ls -ldih
长选项:双-开头并且是一个单词的选项
长选项不能和其他选项写到一起
比如: ls --help
隐藏文件:文件名称前面加“.”

查看文件内容
cat
#cat 文件名
-n
-A 包括控制字符(换行符/制表符)

     file  文件      查看文件类型
     type  文件    查看命令类型

du:
查询目录大小
#du -h 查看目录连带目录下所有文件大小的和(ls办不到)

只显示整体目录大小
#du -sh   目录

tail
#tail 文件名 //默认查看文件后10行
#tail -5 文件名 //查看后5行,这里的数字可以随意改
#tail -f 文件名 //实时查看文件内容,用来查看日志排错
#tailf 文件名 //功能同上
#tail -F 文件名 //实时查看文件内容(文件不存在会retry)

grep
过滤内容
ls | wc -l 查看文件内有多少个

ifconfig | grep eth0

    eth0      Link encap:Ethernet  HWaddr 3C:97:0E:54:C3:57

    # grep 70 file2
    # grep 'root'        /etc/passwd
    # grep '^root'      /etc/passwd
    # grep 'bash$'      /etc/passwd
    # grep 'failure'     /var/log/secure
    # grep hello *        过滤所有包含hello

less 分页显示
#less 文件名
空格键是翻页 回车键是翻行
上下箭头可以来回翻
/关键字 //搜索 n按关键字往下翻 N按关键字往上翻
快捷键:q 退出
head
#head 文件名 //默认查看文件前10行
#head -5 文件名 //查看前5行,这里的数字可以随意改

# head -10  file2 | tail -1  
| 管道符   作用:把前面命令的结果交给后面命令去执行

文件的基本操作
touch 创建文件

touch file{1..100} //file1到file100

   # touch file{12,32,23}       //file12 file32 file23

stat 文件名称 查看文件属性(inode)

       mkdir                 创建目录   可加 多个 
           #mkdir  dir1  dir2  /tmp/dir3      //在指定目录下创建目录
           #mkdir  /root/Desktop/dir1        //在其他目录下创建目录(目录前面写路径)
      -v  verbose                                      // 冗长 的   详细信息 
      -p    #mkdir -p -v a/b/c/d                 //创建连级目录                        

拷贝文件(copy)
cp //文件目标目录

cp file1 dir1

            被拷贝的源文件         目标目录  
   -r                                                     // 拷贝目录使用
   # cp  -r dir1  /root/Desktop             //拷贝目录
   -v                                                    //  显示详细过程
    \                                                     //  跳过别名     

拷贝文件的时候顺便改名

cp file1 文件名

# cp    file1   dir1/file2
# cp  -r dir1   /root/Desktop/dir2

剪切
文件/目录 目标文件/目录
#mv file1 dir1
#mv dir1 /root/Desktop/
给文件改名:剪切到文件所在目录并且改名

删除
#rm 文件
#rm -f 文件 //强制删除
-f force
#rm -rf 目录
-r 删除目录用

编辑器 :
vi vim gedit emacs nano office

windows下的文本编辑器:

vim:
#vim 文件名
三种模式 : 命令模式 编辑模式 尾行模式
命令模式
只能用快捷键
进入编辑模式 : a i o A I O R r
r 修改单个字符
o 当前光标下一行 O 上一行

                 R  覆盖  

gg           定位到开头
G             定位到结尾
3G             进入第三行 

dd            删除(剪切)当前光标所在行
数字+dd    删除多行
p              粘贴
u              undo撤销
ctrl+r       回滚
yy            复制当前光标所在行
数字+yy    复制多行
D               删除当前光标以后的内容
d^             删除当前光标之前的内容
编辑模式ctrl+u   删除当前光标之前的内容 
P               粘贴当前光标所在行上一行

V              可视行模式
                 y 复制
                 d 删除
                 p  粘贴
ctrl+v        可视块模式
                 添加注释:
                     选择需要添加注释行的第一列字符-->I -->写注释符-->ESC两次
v               可视化模式                  
v               取消可视模式

尾行模式
设置vim的功能 查找 替换
查找
/关键字 n N
/^d
/txt$

 :set nu        显示行号
 :set nonu     取消行号
 :set ic         不区分大小写
 :set noic      取消不区分大小写

 :set ts=4     设置tab键长度
 :set sw=4   设置自动缩进的tab键长度

  :set si         自动缩进 
  :set ci         

使vim设置永久生效:
#vim /etc/vimrc 把设置写到这个文件的最后,对所有账户生效
set nu
set ic
set ts=4
set sw=4

加密
:X

 解密             
 :set key=   

替换
s
:s/world/nice/ 替换当前光标所在行
:%s/world/nice/ %表示替换所有行
:%s/world/nice/g 替换行内所有关键字
:3s/world/nice/ 替换指定行
:3,10s/world/nice/ 第3行到第10行
:3,4s/^/#/
:,8s/hello/hi/ 从当前行到第8行
:5,10 s/./#&/ 5-10前加入#字符 (.整行 &引用查找的内容)

:w 保存
:q 退出
:wq 保存退出
:x 保存退出 //快捷键ZZ
:wq! 强制保存退出

 :r   /etc/passwd   读入另一个文件的内容
 :w  /root/Desktop/abc    另存为