6.linux学习(grep、touch 三个时间、locale、date、timedatectl、cp、mv、回收站功能、重定向、basename、dirname)

155 阅读7分钟

目录

1、grep  

1.1、grep——以"x"开头筛选

1.2、grep——以"x"结尾筛选

1.3、grep——以"xxx"为标准精确筛选

2、pstree 

3、touch 

可以用于新建空文件和更新文件的时间​

3.1、touch——新建空文件

3.2、touch——更新文件的时间

4、stat 

4.1、linux里边三个时间(cime、mtime、atime)

5、file

6、find  

7、locale   

7.1、修改语言编码

8、cp   

8.1、单个文件的复制

8.2、多个文件的复制

8.3、为什么复制文件的时候,如果文件在目的地已经存在,会给予提醒?

8.4、文件的复制,粘贴,重命名一步到位

8.5、cp命令和绝对路径的使用

8.6、单个或者多个文件夹的复制,复制时要使用    -r 

8.7、文件夹的复制,粘贴,重命名一步到位

9、mv     

9.1、移动多个文件

10、dirname 或者basename + 路径

11、重定向实现了帮助我们保存命令执行的结果到文件里

12、回收站代码:

12.1、位置变量


内容总览:

***********************************************可爱的分隔符*********************************************

1、 grep

是文本过滤命令,默认情况下符合要求(匹配的),会整行显示出来

1.1、grep——以"x"开头筛选

         ^d    代表一行里以d开头的    ^d旁边加不加“”都可以

1.2、grep——以"x"结尾筛选

         d$    代表一行里以d结尾的   xxx$   可以精准查找xxx这个内容

1.3、grep——以"xxx"为标准精确筛选

 图解:图中文件中有,for.sh和for.sh1。该命令精确的把"for.sh"查找出来了

2、pstree 

查看进程树的结构            加一个  -p 可以得到进程编号

3、touch 

可以用于新建空文件和更新文件的时间

3.1、touch——新建空文件

文件不存在就是新建空文件

[root@fttsaxf rough_book]# ls
[root@fttsaxf rough_book]# touch new
[root@fttsaxf rough_book]# ls
new

3.2、touch——更新文件的时间

[root@fttsaxf linux]# ll
总用量 0
drwxr-xr-x. 2 root root  39 1月   4 21:03 go
drwxr-xr-x. 3 root root  74 1月  31 19:31 pypy3  
drwxr-xr-x. 2 root root  17 2月   8 20:16 rough_book
drwxr-xr-x. 7 root root 188 2月   7 15:50 script
[root@fttsaxf linux]# touch pypy3
[root@fttsaxf linux]# ll
总用量 0
drwxr-xr-x. 2 root root  39 1月   4 21:03 go
drwxr-xr-x. 3 root root  74 2月   8 20:17 pypy3  # 这里很清楚的可以看到pypy3的时间被更新了
drwxr-xr-x. 2 root root  17 2月   8 20:16 rough_book
drwxr-xr-x. 7 root root 188 2月   7 15:50 script

4、stat 

 用于显示指定文件或者文件夹的详细信息

4.1、linux里边三个时间(cime、mtime、atime)

linux 文件里边3个时间(atime、mtime 、ctime)的区别

5、file

注意:在linux里不要被后缀名迷惑了,可以使用file命令查看文件的类型。
eg:如txt结尾不一定是文件,也可能是其他的

6、find

是linux里的查找命令
/  查找的位置,不知道哪里有,就在根目录下,默认所有的文件都在根目录下
-name  查找的条件,是根据文件名

[root@fttsaxf linux]# find / -name "rough_book"
/root/linux/rough_book

7、locale

查看当前linux系统里的语言的编码

7.1、修改语言编码

8、cp

8.1、单个文件的复制

8.2、多个文件的复制


8.3、为什么复制文件的时候,如果文件在目的地已经存在,会给予提醒?

8.4、文件的复制,粘贴,重命名一步到位

 

8.5、cp命令和绝对路径的使用

8.6、单个或者多个文件夹的复制,复制时要使用    -r 

8.7、文件夹的复制,粘贴,重命名一步到位

9、mv

移动(剪切)文件  或者更名名字(重命名)

9.1、移动多个文件

10、dirname 或者basename + 路径

dirname  + 路径   得到绝对路径的文件夹的路径

basename  + 路径  得到最后的文件的名字

11、重定向实现了帮助我们保存命令执行的结果到文件里

>   输出重定向:将本来在屏幕上的输出重定向保存到文件里,如果文件不存在就新建,如果文件存在就覆盖原来文件里的内容
>>   追加输出重定向:将本来在屏幕上的输出重定向保存到文件里,如果文件不存在就新建,如果文件存在就覆盖原来文件里的内容,只是在末尾追加

12、回收站代码:

12.1、位置变量

位置变量的作用就是往脚本里传递参数

$1  第1个位置变量
$2  第2个位置变量编写一个回收站功能的脚本,取代rm命令
1.编写脚本

[root@localhost lianxi]# vim    backup.sh
#!/bin/bash

#新建一个回收站文件夹,用来存放删除的文件
mkdir  -p  /backup

#将第1个位置变量的内容移动到/backup目录
mv  $1  /backup

2.给脚本可执行权限

[root@localhost lianxi]# chmod  +x backup.sh 

3.复制backup.sh脚本到/usr/bin/,目的是可以到任何目录下可以执行脚本

[root@localhost lianxi]# cp backup.sh  /usr/bin/

4.给rm起别名对应backup.sh脚本

[root@localhost /]# alias  rm=backup.sh

5.使用

[root@localhost lianxi]# mkdir sanchuang
[root@localhost lianxi]# ls
backup.sh  sanchuang
[root@localhost lianxi]# rm  sanchuang
[root@localhost lianxi]# ls
backup.sh
[root@localhost lianxi]# ls /backup
all_databases.sql  china  hosts  passwd  players.csv  players.sql  sanchuang  tennis.sql