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 清屏

绝对路径和相对路径

绝对路径:以“/”开头

相对路径 :

  1. .        当前路径
  2. ..       上一级路径
  3.       文件/文件名

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

    

                                           

linux菜鸟笔记的更多相关文章

  1. Nginx快速入门菜鸟笔记

    Nginx快速入门-菜鸟笔记   1.编译安装nginx 编译安装nginx 必须先安装pcre库. (1)uname -a 确定环境 Linux localhost.localdomain 2.6. ...

  2. linux学习笔记---未完待续,缓慢更新

    做为linux菜鸟,由于work的需要,慢慢的开始接触学习linux. <鸟哥的linux私房菜>学习笔记. 一.基础命令操作 1.显示日期的命令 date 执行date命令后,显示结果为 ...

  3. Linux 学习笔记 5 文件的下载、压缩、解压、初步认识yum

    写在前面 上节我们通过简单的几组命令,已经完全的实现了文件的移动.删除.更名.以及复制,我们最常用的基本玩法,本节将带着大家学习压缩.解压的相关步骤. Linux 学习笔记 4 创建.复制.移动.文件 ...

  4. Linux内核笔记--内存管理之用户态进程内存分配

    内核版本:linux-2.6.11 Linux在加载一个可执行程序的时候做了种种复杂的工作,内存分配是其中非常重要的一环,作为一个linux程序员必然会想要知道这个过程到底是怎么样的,内核源码会告诉你 ...

  5. Linux 学习笔记

    Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...

  6. Linux学习笔记(5)-hello world

    经过三天的熟悉,我已经将教程中那些常用命令都使用了一遍,所以,从今天起,我已经从一直Linux菜鸟蜕变成了大雕-- Linux的命令无穷多,要想背下来那肯定是不可能的,所以我的目标便是混个手熟,那些常 ...

  7. linux学习笔记2-linux的常用命令

    第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的终端命令 ======== ...

  8. Linux学习笔记(一)2015.4.13

    研究生由单片机转Linux学习 首先安装VMware虚拟机,用的是VMware 10.0 在VMware 10.0上安装视频上推荐的Red Hat Linux 5 安装后正式进入Linux学习 笔记1 ...

  9. 跟着鸟哥学Linux系列笔记3-第11章BASH学习

    跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 跟着鸟哥学Linux系列笔记2-第10章VIM学习 认识与学习bash 1. ...

随机推荐

  1. 设计模式之Strategy模式

    策略模式属于对象的行为模式.其用意是针对一组算法,将每一个算法封装到具体的共同接口的独立类中,从而使得他们可以互相替换. 策略模式使得算法可以在不影响客户端的情况下发生变化. all in one “ ...

  2. Linux网卡别名

    网卡别名是什么 IP别名就是一张物理网卡上配置多个IP,实现类似子接口之类的功能.从网络协议的角度来讲,下层总是为上层提供服务,一块网卡的MAC地址只要一一对应上层的一个IP地址,并且这个逻辑关系是合 ...

  3. [LuoguP1363]幻想迷宫

    [LuoguP1363]幻想迷宫(Link) 现在有一个迷宫,从迷宫边界的任意一点可以走到对面,即:若都是路面,则可以从\((1, i)\)走到\((N, i)\).其余情况依旧.问是否可以从指定的起 ...

  4. Boost noncopyable实现禁止拷贝的类

    在C++中定义一个类,如果不明确定义拷贝构造函数和拷贝赋值操作符,编译期会为我们自动生成这两个函数.但是我们有时又希望禁止拷贝类的实例,这时可以私有化拷贝构造函数和拷贝赋值操作符即可. class d ...

  5. java alibaba fastJson 遍历数组json

    import java.util.*; import com.alibaba.fastjson.*; public class Test { public static void main(Strin ...

  6. 系统构架篇之基于SSDB的二级缓存

    1.什么是ssdb 你可以把ssdb理解成redis.不同之处在于redis缓存的数据是在内存中的,所能缓存的数据大小受内存大小的限制,一般不适合缓存大量的数据.而ssdb将数据保存在磁盘中,数据量大 ...

  7. JAVA 8 新特性 __ Optional 类

    Optional 类是一个可以作为null容器的对象,若值存在调用isPresent()就返回 true,调用get()会返回该对象. Optional是一个容器,可以保存类型T的值,或者仅仅保存nu ...

  8. Eclipse部署Web项目,常用操作和常见错误的解决方案

    部署Web项目到tomcat 在eclipse中找到Servers项,打开服务器(F3)(建议直接删除服务器,重新建立再设置比较好)1.Servers Locations 中选择Use Tomcat ...

  9. 基于 HTML5 Canvas 的机房温度云图展示

    前言 在物联网的大趋势下,机房的设备信息以及一些环境信息变成了数据摆在了人们面前.在这个大数据的时代,数据的可视化不仅体现在数据值本身,更应该通过数据的变化来获取一些信息.我们今天的主题,机房温度云图 ...

  10. MongoDB 数据类型查询 — $type使用

    MongoDB 使用过程中经常需要根据字段的类型来查询数据, 而MongoDB中查询字段类型是通过$type操作符来实现. $type使用法语: db.集合名.find({$type:类型值}); / ...