本文用来记录linux学习笔记

作业:只显示隐藏文件和目录;

ll -d  /etc/.*

只显示指定目录下的子目录;

ll -d  /etc/*/

 

linux应用程序组成部分:

1 二进制程序::/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin 

2 库文件::/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64 

3 配置文件:/etc, /etc/DIRECTORY, /usr/local/etc 

4 帮助文件:/usr/share/man, /usr/share/doc, /usr/local/share/man, /usr/local/share/doc

 

文件类型:-:普通文件 vd: 目录文件 vb: 块设备 vc: 字符设备 vl: 符号链接文件 vp: 管道文件pipe vs: 套接字文件socket

 

显示当前工作目录:pwd

 

绝对路径和相对路径

绝对路径:以 “/” 开始,需要输入完整的路径,随时可以切换进去。

相对路径:不以“/”开始,只需要输入简短路径,从当前目录开始。

下面是二者区别:

这是绝对路径

linux基础3_tree

这是相对路径

 linux基础3_mkdir_02

家目录下直接输入 cd /etc会进入/etc目录中而非/usr/etc。

路径变量:$PWD 当前目录,$OLDPWD 上一次的目录

 

cd:切换目录

cd .. 到上一级目录

cd . 当前工作目录

cd 到主目录

cd  - 到以前的工作目录。

cd ~切换到家目录

. ~/文件 可以直接执行文件

 

ls命令:列出当前目录内容或指定目录内容。

用法:ls [option] [files_or dirs]

ls -a 包含隐藏文件

ls -l 显示额外的信息

ls -R 目录递归通过

ls -ld 目录和符号链接信息

ls -1  文件分行显示 

ls –S  按从大到小排序 

ls –u   配合-t选项,显示并按atime从新到旧排序 

ls –U  不排序按目录存放顺序显示

linux基础3_tree_03

linux基础3_mkdir_04

 

 

文件通配符:

*匹配零个或多个字符 v

? 匹配任何单个字符 v

~ 当前用户家目录 v

~username 用户家目录 v

~+ 当前工作目录 v

~- 前一个工作目录 v

[0-9] 匹配一个数字范围 v

[a-z]:大写和小写字母 v

[A-Z]:大写字母

[abc]:a,b,c中的任意一个

[^abc]:匹配列表中以外的所有字符

[:digit:]: 任意数字,相当于0-9

[:lower:]: 任意小写字母

[:upper:]: 任意大写字母

[:alpha:]: 任意大小写字母

[:alnum:]: 任意数字或字母

[:space:]: 空格

[:punct:]: 任意标点符号

 

1、显示/var目录下所有以l开头,以一个小写字母结尾,且中 间出现至少一位数字的文件或目录 v                    

                   ll  /var/l*[[:digit:]]*[[:lower:]]

2、显示/etc目录下以任意一位数字开头,且以非数字结尾的 文件或目录 

                 vll  /etc/[[:digit:]]*[^[:digit:]]

3、显示/etc/目录下以非字母开头,后面跟了一个字母及其 它任意长度任意字符的文件或目录 v

   ll  /etc/[^[alpha]][[:alpha:]]*

4、显示/etc目录下所有以m开头以非数字结尾的文件或目录

        ll /etc/m*[^[:digit:]] v

5、显示/etc目录下,所有以.d结尾的文件或目录

        ll /etc/*.d v

6、显示/etc目录下,所有.conf结尾,且以m,n,r,p开头的文 件或目录

        ll /etc/[mnrp]*.conf

 

touch命令:用来改变时间戳,或者创建空文件。

格式:touch +[options]+file

touch file:如果file已经存在,则会将时间改为当前时间,如果不存在,则会创建空文件。

touch -a file:只修改访问时间和状态修改时间(change time),不改变修改时间(modified time)

touch -m file:只修改修改时间和状态修改时间,不改变访问时间。

touch -t +time :自定义修改时间。

 

cp命令:复制文件和目录

cp [options] src dest:

当源是文件时:

如果dest是目录且存在,则会在dest目录下创建一个文件。

如果dest是文件且存在,则会将源的文件中的内容写到dest中,不改变dest的文件名。

如果dest不存在,则会创建一个空文件,以desk为名。(不能创建目录)

 

当源是目录时: 

当dest是目录且存在时,可以成功复制。

当dest是文件,则失败。

 

cp选项:

-i:交互式 v

-r, -R: 递归复制目录及内部的所有内容; v 

-a: 归档,相当于-dR --preserv=all v 

-d:--no-dereference --preserv=links 不复制原文件,只复制链接名 v --preserv[=ATTR_LIST] 

mode: 权限 

ownership: 属主属组 

timestamp: 

links 

xattr 

context 

all v 

-p: 等同--preserv=mode,ownership,timestamp v

-v: --verbose v描述复制过程

-f: --force     强制性覆盖

alias别名;

alias:查看所有别名定义

alias xx= xx  定义别名

在命令行中定义的别名,仅对当前shell进程有效 v

如果想永久有效,要定义在配置文件中 

仅对当前用户:~/.bashrc 对所有用户有效:/etc/bashrc

source ~/.bashrc  生效

 

mv命令   移动文件位置

mv [OPTION]... [-T] SOURCE DEST v

mv [OPTION]... SOURCE... DIRECTORY v

mv [OPTION]... -t DIRECTORY SOURCE... 

常用选项: -i: 交互式 -f: 强制

 

rm 命令    删除文件

rm [OPTION]... FILE... 

常用选项: -i: 交互式 -f: 强制删除 -r: 递归 --no-preserve-root  

例: #rm -rf /

 

 tree 显示目录树 

-d: 只显示目录 

-L level:指定显示的层级数目

-P pattern: 只显示由指定pattern匹配到的路径 

   mkdir 创建目录 

-p: 存在于不报错,且可自动创建所需的各目录;

-v: 显示详细信息 

-m MODE: 创建目录时直接指定权限; v

  rmdir 删除空目录 

  -p: 递归删除父空目录 

  -v: 显示详细信息 v

  rm -r 递归删除目录树