linux目录的子目录复制
cp -r 要复制的目录+新的目录
cp -r a test 意思就是将a的子目录及文件复制到新的目录test下面
zt@ubuntu:~/Desktop$ mkdir -p a/b/c/readme.txt
zt@ubuntu:~/Desktop$ cp -r a test
zt@ubuntu:~/Desktop$ tree
.
├── a
│ └── b
│ └── c
│ └── readme.txt
├── readme.txt
├── readme.txt~
└── test
└── b
└── c
└── readme.txt
rm -r 目录A:表示移除目录A
mv 源目录A +目标目录B :表示将A移动到B
zt@ubuntu:~$ mkdir c
zt@ubuntu:~$ mv ~/c ~/Desktop/a
zt@ubuntu:~$ cd
zt@ubuntu:~$ cd Desktop/
zt@ubuntu:~/Desktop$ tree
.
├── a
│ ├── b
│ │ └── c
│ │ └── readme.txt
│ └── c
├── readme.txt
└── readme.txt~
5 directories, 2 files
mv 源文件 目标文件 : 源文件覆盖文件,内容也跟随源文件覆盖
mv 源目录 目标目录:源文件目录直接放置目标目录的下一级目录
zt@ubuntu:~/Desktop$ ls
123.txt~ a b readme.txt~
zt@ubuntu:~/Desktop$ mv b a
zt@ubuntu:~/Desktop$ ls
123.txt~ a readme.txt~
zt@ubuntu:~/Desktop$ tree
.
├── 123.txt~
├── a
│ └── b
│ └── a
│ ├── b
│ │ └── c
│ │ └── readme.txt
│ └── c
└── readme.txt~
7 directories, 2 files
cat + 文件名 :显示文件里面的内容
more + 文件名:文件内容多时,显示从开始到当前屏幕的内容,底端以百分数形式显示还剩多少,可用enter键和空格键查看下页内容,b下一页,f上一页,q退出
______________________________________
fsfasdf
fasdfas
fas
dfdsa
fasd
f
sa
fas
fad
sf
asfsdf
++++++++++++++++++++++++++++++++++++++++++
dsfasfdsfsfas
fsdafadsfasfd
afsadfdas
fads
fa
sfas
fdsadfdas
==============================================
fs
--更多--(83%)
grep +字符A+文件B :表示在B中查询字符A
-i 忽略大小写
-n 显示行数
-v 反向查询
以上可以组合使用
查询多个单词时,需要加引号“Hello Python”
如下图,在123.txt中查询字符as
zt@ubuntu:~/Desktop$ grep as 123.txt
fsfasdf
fasdfas
fas
fasd
fas
asfsdf
dsfasfdsfsfas
fsdafadsfasfd
afsadfdas
sfas
fdsadfdas
fasfshla
在123.txt中查询字符as并带显示行数
zt@ubuntu:~/Desktop$ grep -n as 123.txt
2:fsfasdf
3:fasdfas
4:fas
6:fasd
9:fas
12:asfsdf
14:dsfasfdsfsfas
15:fsdafadsfasfd
16:afsadfdas
19:sfas
20:fdsadfdas
37:fasfshla
反向查询不包含as的内容并自带显示行数
zt@ubuntu:~/Desktop$ grep -vn as 123.txt
1:______________________________________
5:dfdsa
7:f
8:sa
10:fad
11:sf
13:++++++++++++++++++++++++++++++++++++++++++
17:fads
18:fa
21:==============================================
22:fs
23:
24:fsd
25:fsdf
26:
27:
28:
29:fsdf
30:sfd
31:
32:sfs
33:sfds
34:
35:
36:sdfd
-i 忽略大小写查询AS
zt@ubuntu:~/Desktop$ grep -i AS 123.txt
fsfasdf
fasdfas
fas
As
AS
fasd
fas
asfsdf
dsfasfdsfsfas
fsdafadsfasfd
afsadfdas
sfas
fdsadfdas
fasfshla
引号查询多个字符串
zt@ubuntu:~/Desktop$ grep -ni "hello python" 123.txt
4:hello Python
grep两种模式查找
- ^a 表示以字母a开头
- ke$表示以ke结尾
以f开头
zt@ubuntu:~/Desktop$ grep -n ^f 123.txt
2:fsfasdf
3:fasdfas
5:fas
9:fasd
10:f
12:fas
13:fad
18:fsdafadsfasfd
20:fads
21:fa
23:fdsadfdas
25:fs
27:fsd
28:fsdf
32:fsdf
40:fasfshla
以f结尾
zt@ubuntu:~/Desktop$ grep -n f$ 123.txt
2:fsfasdf
10:f
14:sf
15:asfsdf
28:fsdf
32:fsdf
echo重定向和追加内容
- >覆盖内容
- >>追加内容
把I love you 覆盖到文件c中,然后把工作目录(即当前桌面目录的树状图)的树状图追加到文件c中
zt@ubuntu:~/Desktop$ ls
123.txt 123.txt~ a b readme.txt~
zt@ubuntu:~/Desktop$ touch c
zt@ubuntu:~/Desktop$ echo I love you >c
zt@ubuntu:~/Desktop$ cat c
I love you
zt@ubuntu:~/Desktop$ tree
.
├── 123.txt~
├── c
└── readme.txt~
0 directories, 3 files
zt@ubuntu:~/Desktop$ tree >>c
zt@ubuntu:~/Desktop$ cat c
I love you
.
├── 123.txt~
├── c
└── readme.txt~
0 directories, 3 files
zt@ubuntu:~/Desktop$ echo c++ >>c
zt@ubuntu:~/Desktop$ cat c
I love you
.
├── 123.txt~
├── c
└── readme.txt~
0 directories, 3 files
c++
|管道(竖杠)
输入命令+‘|’+输出命令
- | more 分屏显示
- grep 显示内容
从列出的家目录~的文件中查找含有Do开头的文件
zt@ubuntu:~/Desktop$ ls -lha ~|grep Do
drwxr-xr-x 2 zt zt 4.0K Mar 3 23:12 Documents
drwxr-xr-x 2 zt zt 4.0K Jan 1 15:28 Downloads
从列出的家目录~中分屏显示
zt@ubuntu:~/Desktop$ ls -lha ~|more
总用量 1.8M
drwxr-xr-x 20 zt zt 4.0K Mar 4 18:23 .
drwxr-xr-x 3 root root 4.0K Jan 1 15:23 ..
-rw------- 1 zt zt 3.3K Mar 4 04:03 .bash_history
-rw-r--r-- 1 zt zt 220 Jan 1 15:23 .bash_logout
-rw-r--r-- 1 zt zt 3.6K Jan 1 15:23 .bashrc
drwx------ 19 zt zt 4.0K Jan 7 04:30 .cache
drwx------ 3 zt zt 4.0K Jan 1 18:31 .compiz
drwx------ 18 zt zt 4.0K Mar 3 23:26 .config
drwxr-xr-x 2 zt zt 4.0K Mar 4 21:04 Desktop
drwxrwxr-x 3 zt zt 4.0K Jan 7 04:27 .distlib
-rw-r--r-- 1 zt zt 25 Jan 1 15:28 .dmrc
drwxr-xr-x 2 zt zt 4.0K Mar 3 23:12 Documents
drwxr-xr-x 2 zt zt 4.0K Jan 1 15:28 Downloads
-rw-r--r-- 1 zt zt 8.8K Jan 1 15:23 examples.desktop
drwxrwxr-x 2 zt zt 4.0K Jan 1 19:39 exercise
drwx------ 3 zt zt 4.0K Mar 4 17:23 .gconf
-rw-rw-r-- 1 zt zt 1.6M Oct 8 09:45 get-pip.py
-rw------- 1 zt zt 5.6K Mar 4 17:22 .ICEauthority
drwxrwxr-x 2 zt zt 4.0K Jan 1 19:34 .idlerc
drwx------ 5 zt zt 4.0K Jan 7 04:09 .local
drwx------ 5 zt zt 4.0K Jan 3 04:12 .mozilla
drwxr-xr-x 2 zt zt 4.0K Jan 1 15:28 Music
config 查看ip地址
ping 查看网络连接是否正常及网速
linux绝大多数退出终端命令用ctril+c
vmware快捷键
ctril + alt + enter 全屏切换
Linux终端命令
exit()
ctril + d 推出终端窗口
ls -l 列表显示文件及文件夹
ctril + L 清屏
绝对路径和相对路径
绝对路径:以“/”开头
相对路径 :
- . 当前路径
- .. 上一级路径
- 文件/文件名
mkdir创建文件夹
mkdir a b c d e 创建多个文件夹
mkdir -p a/b/c/d/e 创建递归文件目录
创建文件和删除文件
- touch 创建文件和更新文件时间
- rm 删除文件 : r [选项] 文件名/目录
rm a.txt b.txt
rm c.txt
rm *.txt
rm -r a
-r 递归删除 rm -r a
-i 文件为非空时,询问是否删除
-f 强制删除
rm -r -i a
zt@ubuntu:~/Desktop$ tree
.
└── linux
├── 1.txt
├── 2.txt
├── 3.txt
├── day1
│ └── 464.txt
└── day2
3 directories, 4 files
zt@ubuntu:~/Desktop$ rm -r -i linux
rm: descend into directory 'linux'? y
rm: descend into directory 'linux/day1'? n
rm: remove regular empty file 'linux/1.txt'? y
rm: remove regular empty file 'linux/3.txt'? y
rm: remove regular empty file 'linux/2.txt'? n
rm: remove directory 'linux/day2'? y
zt@ubuntu:~/Desktop$ tree
.
└── linux
├── 2.txt
└── day1
└── 464.txt
2 directories, 2 files
带特殊符号的路径用双引号括起来
zt@ubuntu:~/Desktop$ mkdir "a b"
zt@ubuntu:~/Desktop$ rm "a b"
rm: cannot remove 'a b': Is a directory
zt@ubuntu:~/Desktop$ rmdir "a b"
zt@ubuntu:~/Desktop$ mkdir "a b"
zt@ubuntu:~/Desktop$ rm -r "a b"
rmdir 目录和 rm -r 目录 都可以删除目录
命令+ --help 查看命令帮助信息
rm --help
mkdir --help
man + Linux命令 查看命令手册
man rm
man mkdir
练习
zt@ubuntu:~/Desktop$ mkdir -p aid1805/linux/day02
zt@ubuntu:~/Desktop$ cd aid1805/linux/day02
zt@ubuntu:~/Desktop/aid1805/linux/day02$ touch day01.txt day02.txt day03.txt
zt@ubuntu:~/Desktop/aid1805/linux/day02$ cd ../../..
zt@ubuntu:~/Desktop$ mkdir -p aid1805/pbase/day00
zt@ubuntu:~/Desktop$ mkdir -p aid1805/pbase/day01
zt@ubuntu:~/Desktop$ mkdir -p aid1805/pbase/day02
zt@ubuntu:~/Desktop$ touch aid1805/pbase/day00/day00.txt
zt@ubuntu:~/Desktop$ tree
.
├── aid1805
│ ├── linux
│ │ └── day02
│ │ ├── day01.txt
│ │ ├── day02.txt
│ │ └── day03.txt
│ └── pbase
│ ├── day00
│ │ └── day00.txt
│ ├── day01
│ └── day02
├── day00.txt
└── linux
└── day.txt