您的位置:首页 > 运维架构 > Linux

linux基础(二)系统结构、文件管理、正则表达式

2017-11-06 07:23 786 查看
linux系统结构

linux是一个倒树结构

linux中所有的东西都是文件

这些文件都在系统顶级目录“/” /就是根目录

/目录以下为二级目录这些目录都是系统装机时系统自动建立的

二级目录的作用

/bin    ##二进制可执行文件也就是系统命令

/sbin   ##系统管理命令存放位置

/boot   ##启动分区,负责系统启动

/dev    ##设备管理文件

/etc    ##大多数系统管理文件

/home   ##普通用户的家目录

/lib    ##32位系统库文件存放位置

/lib64  ##64位系统库文件存放位置

/media  ##系统临时设备挂载点                                                                                 

/mnt    ##系统临时设备挂载点

/run    ##系统临时设备挂载点

/opt    ##第三方软件安装位置

/proc   ##系统信息

/root   ##超级用户家目录

/srv,/var      ##系统数据

/sys    ##系统管理,主要是关于内核的

/tmp    ##系统临时文件存放位置

/usr    ##系统用户相关信息数据及用户自定义软件存放位置
文件的寻址

绝对路径

文件在系统的真实位置,文件名字以“/”开头

相对路径

文件相对与当前所在位置的一个名字的简写,这个名字不会以/开头,而且名字会自动添加pwd显示的值

文件的管理

 一、touch 建立文件或修改文件时间戳 ####

touch file        ##创建文件

[root@shell ~]# stat anaconda-ks.cfg

  File: ‘anaconda-ks.cfg’

  Size: 998           Blocks: 8          IO Block: 4096   regular file

Device: 803h/2051d    Inode: 17664362    Links: 1

Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)

Context: system_u:object_r:admin_home_t:s0

Access: 2017-12-15 18:57:00.849000000 +0800

Modify: 2017-12-15 18:57:00.850000000 +0800

Change: 2017-12-15 18:57:00.850000000 +0800

 Birth: -

#access、modify、change分别是访问时间、修改时间、改变时间,这就是文件的时间戳

touch修改时间戳可参考:http://blog.csdn.net/lsbhjshyn/article/details/51443304
二、mkdir 建立目录 ####

mkdir directory     ##创建目录

    -p        ##上级目录不存在自动建立



三、rm 删除目录或文件 ####

rm    -f        ##强行删除不提示

         -r        ##删除目录,删除文件不用加参数





四、cat|head|tail 查看文件内容 ####

cat|head|tail        ##文件内容查看命令,上一篇有详细介绍

五、vim 文本方式编辑文件 ####

vim filename 进入到命令模式

命令模式不能编辑文件,如果要编辑文件要进入插入模式

按"i"进入插入模式

如果完成编辑,按”esc“推出插入模式,输入”:wq“ 保存退出

vim filename 如果文件名字不存在,会自动创建

vim 没有操作对象直接打开,编辑文件后要 :wq filename

注意:当文内容被错误更改,不想保存用 " :q! "  这表示强制退出不保存
六、cd 切换工作目录 ############

cd directory    ##切换工作目录到指定目录

cd -        ##切换工作目录到之前所在目录

cd ~        ##切换到自己的家目录

cd ~usernmae    ##切换到指定用户家目录

cd ..        ##进入到当前目录的上级目录



七、ls 列出目录或文件信息 ######

ls                ##如果后面没有目标那么默认目标为当前目录

ls direcory|filename        ##列出文件或目录内容

ls -d direcotry            ##列出目录本身

ls -l filename|dorectory    ##列出文件或目录里面内容的属性

ls -ld directory        ##列出目录本身属性

ls -a                ##显示目录中的所有内容,包括以"."开头的隐藏文件

ls -R                ##第归显示目录中的内容



八、cp 文件复制 ####

cp是新建文件的过程

cp file file1 file2 ...    directory    ###把file  file1 file2 复制到 directory中

cp file test                ###建立test文件模板为file

cp -r directory    direcotry1        ###复制目录



九、mv 移动或重命名 ####

相同磁盘的mv是重命名,不同磁盘的mv是复制删除过程

mv file file1    direcotry        ##移动file file1到directory中

mv 存在文件    不存在文件        ##重命名文件

mv westos/linux .            ##把westos中的linux移动到当前目录 .代表当前目录



tip:复制目录是需要加-r的,mv一个目录是不用加-r的

正则表达式

*        ###匹配0到任意字符

?        ###匹配单个字符

[[:alpha:]]    ###匹配单个字母

[[:lower:]]    ###匹配单个小写字母

[[:upper:]]    ###匹配单个大写字母

[[:digit:]]    ###匹配单个数字

[[:alnum:]]    ###匹配单个数字或字母

[[:punct:]]    ###匹配单个符号

[[:space:]]    ###匹配单个空格

{}表示不存在的或者存在的

{1..9}        ###1-9

{a..f}        ###a-f

{1,3,5}        ###135

{a,c,e}        ###a c e

{1..3}{a..c}    ###1a 2a 3a 2a 2b 2c 3a 3b 3c

[]表示存在的

[a-C]        ###aA bB cC

[a-c]        ###aA或者bB或者c

[1-3]        ###1或者2或者3(1到3)

[145]        ###1或者4或者5

[^abc]|[!abc]    ###除了a并且除了b并且除了c

测试:

[root@shell ~]# cat 1

aaaaa

bbbbb

ccccc

ddddd

[root@shell ~]# cat 1 | grep [a-c] -v

ddddd

[root@shell ~]# cat 1 | grep [ac] -v

bbbbb

ddddd

~        ###当前用户家目录

~username    ###指定的用户家目录

~+        ###当前目录

~-        ###当前目录之前所在目录

.        ###当前目录

..        ###当前目录的上一级

测试:

[root@server1 mnt]rm -fr *         ##删除当前目录全部文件

[root@server1 mnt]rm -fr
file?      ##删除总长度为5,并且前四个字母是file的 文件

后面篇章的find命令还会用到这些表达式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: