df 命令介绍

df 命令的英文全称即 Disk Free,顾名思义功能是用于显示系统上可使用的磁盘空间。默认显示单位为 KB,建议使用 “df -h” 的参数组合,根据磁盘容量自动变换合适的单位,更利于人性化阅读。

日常普遍用该命令可以查看磁盘被占用了多少空间、还剩多少空间等信息。

df 命令常用参数

-a 显示所有系统文件
-h 以容易阅读的方式显示

示例

df 默认选项

1
2
3
4
5
6
7
8
9
[root@paopao ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 347636 0 347636 0% /dev
tmpfs 362780 0 362780 0% /dev/shm
tmpfs 362780 41188 321592 12% /run
tmpfs 362780 0 362780 0% /sys/fs/cgroup
/dev/vda1 20510332 1610056 17835368 9% /
tmpfs 72556 0 72556 0% /run/user/0
[root@paopao ~]#

df -h 便于人性化阅读

1
2
3
4
5
6
7
8
9
[root@paopao ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 340M 0 340M 0% /dev
tmpfs 355M 0 355M 0% /dev/shm
tmpfs 355M 41M 315M 12% /run
tmpfs 355M 0 355M 0% /sys/fs/cgroup
/dev/vda1 20G 1.6G 18G 9% /
tmpfs 71M 0 71M 0% /run/user/0
[root@paopao ~]#

df -ah 显示全部文件系统

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
[root@paopao ~]# df -ah
Filesystem Size Used Avail Use% Mounted on
sysfs 0 0 0 - /sys
proc 0 0 0 - /proc
devtmpfs 340M 0 340M 0% /dev
securityfs 0 0 0 - /sys/kernel/security
tmpfs 355M 0 355M 0% /dev/shm
devpts 0 0 0 - /dev/pts
tmpfs 355M 41M 315M 12% /run
tmpfs 355M 0 355M 0% /sys/fs/cgroup
cgroup 0 0 0 - /sys/fs/cgroup/systemd
pstore 0 0 0 - /sys/fs/pstore
bpf 0 0 0 - /sys/fs/bpf
cgroup 0 0 0 - /sys/fs/cgroup/memory
cgroup 0 0 0 - /sys/fs/cgroup/cpu,cpuacct
cgroup 0 0 0 - /sys/fs/cgroup/net_cls,net_prio
cgroup 0 0 0 - /sys/fs/cgroup/hugetlb
cgroup 0 0 0 - /sys/fs/cgroup/cpuset
cgroup 0 0 0 - /sys/fs/cgroup/freezer
cgroup 0 0 0 - /sys/fs/cgroup/perf_event
cgroup 0 0 0 - /sys/fs/cgroup/devices
cgroup 0 0 0 - /sys/fs/cgroup/pids
cgroup 0 0 0 - /sys/fs/cgroup/blkio
cgroup 0 0 0 - /sys/fs/cgroup/rdma
none 0 0 0 - /sys/kernel/tracing
configfs 0 0 0 - /sys/kernel/config
/dev/vda1 20G 1.6G 18G 9% /
mqueue 0 0 0 - /dev/mqueue
hugetlbfs 0 0 0 - /dev/hugepages
debugfs 0 0 0 - /sys/kernel/debug
systemd-1 - - - - /proc/sys/fs/binfmt_misc
binfmt_misc 0 0 0 - /proc/sys/fs/binfmt_misc
tmpfs 71M 0 71M 0% /run/user/0
[root@paopao ~]#

df 目录 指定目录下的文件’指定文件所在分区的磁盘使用情况

1
2
3
4
5
[root@paopao ~]# df /root/.bashrc 
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 20510332 1610068 17835356 9% /
[root@paopao ~]#
[root@paopao ~]#

yum 命令介绍

yum 命令是在 Fedora 和 RedHat 以及 SUSE 中基于 rpm 的软件包管理器,它可以使系统管理人员交互和自动化地更新与管理 RPM 软件包,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

yum 命令常用参数

-h 显示帮助信息
-y 对所有的提问都回答 “yes”
install 安装 rpm 软件包
update 更新 rpm 软件包
check-update 检查是否有可用的更新 rpm 软件包
remove 删除指定的 rpm 软件包
list 显示软件包的信息
search 检查软件包的信息
info 显示指定的 rpm 软件包的描述信息和概要信息
clean 清理 yum 过期的缓存
resolvedep 显示 rpm 软件包的依赖关系
localinstall 安装本地的 rpm 软件包
localupdate 显示本地 rpm 软件包进行更新
deplist 显示 rpm 软件包的所有依赖关系

国内 yum 源

网易(163)yum 源是国内最好的 yum 源之一 ,无论是速度还是软件版本,都非常的不错。

将 yum 源设置为 163 yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到。

yum 源配置方法

首先备份 /etc/yum.repos.d/CentOS-Base.repo

1
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下载对应版本 repo 文件,放入 /etc/yum.repos.d/ (操作前请做好相应备份)

1
2
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS6-Base-163.repo CentOS-Base.repo

运行以下命令生成缓存

1
2
yum clean all
yum makecache

1. 软件安装

rz/sz 命令用来在 xshell 远程服务器和本地之间传输文件,主要有两种方式安装,yum 安装或者编译安装。

1.1 yum 包安装

root 账号登陆后执行以下命令:

yum install -y lrzsz

2.2 源码编译安装

root 账号登陆后,依次执行以下命令:

cd /tmp
wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz
tar zxvf lrzsz-0.12.20.tar.gz && cd lrzsz-0.12.20
./configure && make && make install

上面安装过程默认把 lsz/lrz 安装到了 /usr/local/bin/ 目录下,现在我们还不能使用 sz/rz 命令,需要手动建立软链接:

cd /usr/bin
ln -s /usr/local/bin/lsz sz
ln -s /usr/local/bin/lrz rz

2. 使用说明

2.1 sz 命令:发送文件到本地目录

sz filename

2.2 rz 命令:将本地文件上传到 linux 服务器

rz

执行此命令后,在弹出框中选择要上传的文件即可。

markdown 学习笔记 1

1、markdown 是什么?

  • Markdown 是一种轻量级标记语言,2004 由约翰・格鲁伯(英语:John Gruber)创建,通过使用易读易写的纯文本格式编写文档,让作者把更多精力放在文章内容,不再为排版浪费时间。Markdown 文档可以导出为 HTML、Word、图像、PDF、Epub 等多种格式。

2、标题、换行、字体

标题

  • 使用 # 号可表示 1-6 级标题,一级标题对应一个 # 号,二级标题对应两个 # 号,以此类推。

#一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

换行

  • 段落的换行是使用两个以上空格再加上回车。
  • 或者使用一个空行来表示新的段落段落。

字体

* 斜体文本 *
** 粗体文本 **
*** 粗斜体文本 ***

斜体文本
粗体文本
粗斜体文本

3、分割线、删除线、下划线

分割线

  • 在一行中用三个以上的星号、减号、底线来建立一个分隔线

    -–
    分割线


分割线

删除线

  • 在文字的两端加上两个波浪线表示删除线

~~ 删除线~~

删除线

下划线

  • 通过 HTML 的 <u> </u > 标签来表示下划线

    <u> 下划线 </u>

下划线

4、有序列表、无序列表、列表嵌套

无序列表

  • 无序列表使用星号 *、加号 + 或是减号 -

- 第一项
- 第二项
- 第三项

  • 第一项
  • 第二项
  • 第三项

有序列表

  • 有序列表使用数字并加上点号 .

    1. 第一项
    2. 第二项
    3. 第三项

  1. 第一项
  2. 第二项
  3. 第三项

列表嵌套

  • 在子列表中的选项前面添加四个空格

1. 第一项:
  - 第一项嵌套的第一个元素
  - 第一项嵌套的第二个元素
2. 第二项:
  - 第二项嵌套的第一个元素
  - 第二项嵌套的第二个元素

  1. 第一项:
    • 第一项嵌套的第一个元素
    • 第一项嵌套的第二个元素
  2. 第二项:
    • 第二项嵌套的第一个元素
    • 第二项嵌套的第二个元素

6、区块显示

普通区块

  • 区块引用是在段落开头使用 > 符号,后跟空格。

    > 第一行
    > 第二行
    > 第三行

第一行
第二行
第三行

嵌套区块

  • 区块可以嵌套,一个 > 符号是最外层,两个 > 符号是第一层嵌套,以此类推。

    > 第一行
    >> 第二行
    >>> 第三行

第一行

第二行

第三行

区块加入列表

区块中使用列表

  1. 第一项
  2. 第二项
  • 第一项
  • 第二项
  • 第三项

列表加入区块

  • 在列表项目内放进区块,那么就需要在 > 前添加四个空格的缩进。
  • 第一项

    第一行
    第二行

  • 第二项

    第一行
    第二行

7、代码显示

  • 代码可以用反引号把它包起来 `

    `printf(“Hello World ! \n”);`

printf("Hello World ! \n");

  • 以用 ``` 包裹一段代码,并指定一种语言(也可以不指定)

```c
printf(“Hello World ! \n”);
```

1
printf("Hello World ! \n");
  • 用区块显示代码,代码区块使用 4 个空格或者一个制表符(Tab 键)

    for(int i=0;i<100;i++)
    {
      printf(“Hello World ! \n”);
    }

8、添加链接

  • [链接名称](链接地址)

[跑跑的小屋](liupaopao.top)

跑跑的小屋

  • <链接地址>

<https://liupaopao.top>

https://liupaopao.top

9、添加图片

  • 要添加图片,首先添加感叹号(!),然后紧跟着是方括号,方括号中可添加替代文本(alt text,即图片显示失败后显示此文本),最后跟着圆括号,圆括号中添加图片资源的路径或 URL。你可以选择在圆括号中的 URL 之后添加标题(即 title 属性)。

![alt 属性文本](图片地址)
![alt 属性文本](图片地址 “可选标题”)

![百度 logo](https://dss2.bdstatic.com/5bVYsj_p_tVS5dKfpU_Y_D3/res/r/image/2021-3-4/hao123%20logo.png “baidu”)

百度logo

10、添加表格

  • 使用三个或更多个连字符(—)来为每个列创建表头,并使用管道符(|)来分隔每个列。

| 表头 | 表头 |
| — | — |
| 单元格 | 单元格 |
| 单元格 | 单元格 |

表头 表头
单元格 单元格
单元格 单元格
  • 可以设置表格的对齐方式:
符号 对齐方式
-: 设置内容和标题栏居右对齐
:- 设置内容和标题栏居左对齐
:-: 设置内容和标题栏居中对齐

1、查看 gcc 默认的内置宏定义

1
gcc -dM -E - < /dev/null

或者

1
gcc -dM -E helloworld.c

helloworld.c 为用户随意编写的 c 测试用例,随意拿个 c 程序就行。

-E 预处理后即停止,不进行编译。预处理后的代码送往标准输出。GCC 忽略任何不需要预处理的输入文件。

-dM 告诉预处理器输出有效的宏定义列表 (预处理结束时仍然有效的宏定义)。该选项需结合 `-E’选项使用。

2、打开用户自行设置的宏定义

1
gcc -DDEBUG helloworld.c

helloworld.c 文件中的宏定义 DEBUG 如下:

1
2
3
4
5
#ifdef DEBUG
printf("DEBUG is defined ! ");
#else
printf("DEBUG is not defined ! ");
#endif

总结:gcc 内部默认的宏定义 + 用户自行设置的宏定义 = 所有的宏定义

陈树义

陈树义

广州唯品会信息科技有限公司 Java 开发工程师

854 人赞同了该文章

写博客、写文章比较多的人都知道 Markdown 是什么。

Markdown 是一种轻量级标记语言,创始人为 John Gruber。它允许人们「使用易读易写的纯文本格式编写文档,然后转换成有效的 XHTML(或者 HTML)文档」。—— 维基百科

简单地说,Markdown 与 HTML 语言一样,使用一些符号就代替样式。但是它比 HTML 语言更加简单。例如我想要实现标题样式,那么我可以这么做:

img

Markdown 的本质

有些朋友会觉得,我用 Word 也可以实现同样的效果,为什么要使用 Markdown 呢?这个问题提得非常好,直戳问题本质。

Word 等其他文本编辑工具虽然也能实现同样的效果,但是其功能太强大了。Word 还能改变字体颜色,还可以调节字体大小。这么强大的功能可以说是 Word 的优点,但也可以说是它的缺点。

当功能多了,我们的注意力就会分散,我们就会去纠结:这个字体大小到底是 14 还是 16 好?我想强调这一句话,是要加粗还是标红?

而 Markdown 的出现让我们不需要去纠结这些问题。Markdown 的本质是让我们回归到内容本身,注重文章本身的结构,而不是样式。

例如我们想要强调一句话,那么我们直接使用两个星号为其加粗,而不需要考虑是加粗还是标红(Markdown 中只有黑色字体,没有其他颜色字体)。

img

你也不需要关心字体大小问题,因为 Markdown 中字体大小都与结构有关,无法手动设置。一级标题字体大一些,二级标题小一些。我们只需要关注哪些是一级标题,哪些是二级标题。而不需要去纠结标题字体到底要设置多大。

Markdown 的本质是让我们回归内容本身。 当你明白这个道理的时候,你会明白为什么许多功能 Markdown 没有。

Markdown 语法

原生的 Markdown 语法只包含了最基础的一些特性,例如:标题、加粗、斜体、段落、引用、超链接、图片、列表、代码块、水平分割线等。而一些自定义实现的编辑器,则有一些自定义的实现,例如:数学公式、TODO 列表等。所以当你看到有一些语法在一个编辑可以用,但到另一个编辑器又用不了的时候,那么这个语法可能就不是通用的 Markdown 原生语法了。

Markdown 语法非常简单,基本上只要多用几次就会了。下面简单介绍一些常用的 Markdown 语法。

段落

Markdown 使用 # 号来表示段落。

img

加粗、斜体、加粗斜体

Markdown 使用一个星号表示斜体,两个星号表示加粗,三个星号表示加粗斜体。

img

无序列表

使用星号或者中横线来表示无序列表,注意后面需要加个空格。

img

有序列表

使用数字+. 来表示有序列表,后面同样需要价格空格。

img

引用

Markdown 使用 > 符号来表示引用。

img

超链接

Markdown 使用 []() 来表示超链接,中括号表示链接文字,小括号表示链接地址。

img

图片

图片的样式与超链接非常相似,只需在前面加个感叹号就可以了,即用 ![]() 表示图片。其中中括号表示图片未加载时的提示文字,小括号表示图片地址。

img

代码块

我们使用 ` 号来表示代码块引用。

img

水平分割线

使用 --- 来表示分割线

img

表格

使用一根竖线来分隔各个单元格,使用冒号来决定单元格的对齐方向。

img

Markdown 使用场景

目前越来越多的站点都支持了 Markdown 语法,例如:Github 等代码托管平台,简书、博客园等写作平台。因此,掌握好 Markdown 语法可以非常方便地在各个主流站点使用。

编辑工具

因为 Markdown 本质上是一个纯文本,所以任何能打开纯文本的东西都可以来编辑 Markdown。但如果你想要有预览功能,那么一款顺手的编辑功能还是有必要的。

在 Windows 上比较不错的编辑器有:MarkdownPad、Typora。在 OSX 上比较不错的编辑器有:Mou、MacDown、MWeb。

而我之前使用 MouDown 和 sublime 做简单的编辑,但是笔记等的就使用印象笔记写,而要发表的文章则使用 MWeb 编写。

兼容神器

使用了 Markdown 可以写出条理非常清晰的文章,文章结构特别清晰。但是对于一些老编辑器而言,例如:ATLASSIAN 的 WIKI 对于 Markdown 的支持就很弱。

那么怎么办呢?

其实很简单,因为老的编辑器基本都支持 HTML,所以我们可以将 Markdown 渲染后的 HTML 复制到老编辑器。

我一般是在本地写好 Markdown 文章,之后直接复制到一个 Markdown 编辑器,然后复制对应的 HTML 文本到老编辑器中。

img

之后点击一下蓝色的复制按钮,就可以复制渲染后的 HTML 文本,最后直接粘贴到老编辑器中就可以了。我用的 Markdown 编辑器是:**https://mdnice.github.io/**,样式非常漂亮。

进阶应用

当你学会使用 Markdown 之后,你会发现 Markdown 还有更多好玩的地方。例如:开源的 gitbook 就可以教你把一个个 Markdown 文件组织起来,弄成一本电子书。

img

具体如何操作,可以参考这里:**https://github.com/chenyurong/g**

前言

之前一直在 Typora 上记录自己的笔记,但是发现 markdown 格式的笔记在插入图片时,仅能采用两种方法:1)在线图床,2)本地路径,即图片并不是像 Word 那样集成在文档内的,因此经过一番研究,发现了最新版的 Typora 已经支持在线图床功能,遂写此篇教程帮助后人构建自己的在线图床 markdown 笔记。

所需软件

typora

https://typora.io/

picgo

https://github.com/Molunerfinn/PicGo/releases

建议选择 2.2.2 正式版本,beta 版本可能会存在不稳定的风险。

img

Gitee

由于国内连接 github 时网络偶尔存在不稳定的情况,于是采用了 gitee 作为 github 图床的替代,但整体教程是一样的

https://gitee.com/

img

具体操作

主要是分为两部分操作,第一部分是 Typora 的配置,第二部分是 Picgo+Gitee 的在线图床配置

Typora 配置

打开 Typora 后,点击菜单栏 - 文件 - 偏好设置

找到其中的 “图像” 设置,将其设置为如下内容

img

1)插入图片时… 下边的选择框内选择上传图片

2)勾选上 “对本地位置的图片应用上述规则

3)上传服务选择 PicGo(app)

4)将 PicGo 路径项设置为本地 PicGo 的安装路径

这样,我们就把 Typora 配置好了,下面我们进行 PicGo+Gitee 的网络图床构建

网络图床配置

首先,安装好 PicGo 之后,我们需要给 PicGo 配置插件以支持 Gitee 图床

注意:你必须安装 Node.js 之后才能安装 PicGo 的插件,因为 PicGo 要使用 npm 来安装插件。

安装好 Nodejs 后,点开左边的插件设置一栏,在输入框内输入 “github plus”,如下

img

点击安装此插件,之后左侧选项栏图床设置会多一个 githubplus

img

接下来我们配置 Gitee 仓库以存储图片

1)进入 https://gitee.com/,没有账号的话,先注册账号,注册以后登录,新建一个公开仓库,名字为 picgo(可以自己起其他名字)

2)点击右上角,进入设置,在左侧的安全设置 - 私人令牌处生成新令牌。(注意:生成的新令牌只会显示一次,一定要保存好!!!)

我们需要做的如下:

1)回到 picgo,按照如下进行设置

img

其中的 repo 为 UserName / 仓库名称 格式

branch 填入 master

Token 为刚才在 Gitee 生成的私人令牌,粘贴到这里就行

path 为仓库下用于存储图片的路径,这个可以自行选择

最下边的 origin 部分选择 gitee(默认是 github)

结束

经过上述操作,我们就把 typora+picgo+gitee 成功配置好了,之后当我们将本地的图片粘贴到 markdown 文档内的时候,typora 会自动将图片上传到刚才我们配置好的 gitee 仓库内,并自动把 markdown 文档内的本地路径转化为 gitee 的图片外链,便于我们以后进行多端访问文档内的图片。

0%