forked from qiubaiying/qiubaiying.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
314 lines (243 loc) · 40.7 KB
/
index.html
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
<!DOCTYPE html><html lang="zh-CN" data-theme="light"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><title>JeckFS - 面朝大海,春暖花开</title><meta name="keywords" content="IT"><meta name="author" content="YFS"><meta name="copyright" content="YFS"><meta name="format-detection" content="telephone=no"><meta name="theme-color" content="#ffffff"><meta name="description" content="快乐每一天">
<meta property="og:type" content="website">
<meta property="og:title" content="JeckFS">
<meta property="og:url" content="http://jeckfs.gitee.io/JeckFS/index.html">
<meta property="og:site_name" content="JeckFS">
<meta property="og:description" content="快乐每一天">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="https://i.loli.net/2021/02/24/5O1day2nriDzjSu.png">
<meta property="article:author" content="YFS">
<meta property="article:tag" content="IT">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="https://i.loli.net/2021/02/24/5O1day2nriDzjSu.png"><link rel="shortcut icon" href="/JeckFS/img/favicon.png"><link rel="canonical" href="http://jeckfs.gitee.io/JeckFS/"><link rel="preconnect" href="//cdn.jsdelivr.net"/><link rel="preconnect" href="//busuanzi.ibruce.info"/><link rel="stylesheet" href="/JeckFS/css/index.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6/css/all.min.css" media="print" onload="this.media='all'"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.css" media="print" onload="this.media='all'"><script>const GLOBAL_CONFIG = {
root: '/JeckFS/',
algolia: undefined,
localSearch: {"path":"/JeckFS/search.xml","preload":false,"languages":{"hits_empty":"找不到您查询的内容:${query}"}},
translate: undefined,
noticeOutdate: undefined,
highlight: {"plugin":"highlighjs","highlightCopy":true,"highlightLang":true,"highlightHeightLimit":false},
copy: {
success: '复制成功',
error: '复制错误',
noSupport: '浏览器不支持'
},
relativeDate: {
homepage: false,
post: false
},
runtime: '',
date_suffix: {
just: '刚刚',
min: '分钟前',
hour: '小时前',
day: '天前',
month: '个月前'
},
copyright: undefined,
lightbox: 'fancybox',
Snackbar: undefined,
source: {
justifiedGallery: {
js: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery@2/dist/fjGallery.min.js',
css: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery@2/dist/fjGallery.min.css'
}
},
isPhotoFigcaption: false,
islazyload: false,
isAnchor: false
}</script><script id="config-diff">var GLOBAL_CONFIG_SITE = {
title: 'JeckFS',
isPost: false,
isHome: true,
isHighlightShrink: false,
isToc: false,
postUpdate: '2023-02-03 16:17:35'
}</script><noscript><style type="text/css">
#nav {
opacity: 1
}
.justified-gallery img {
opacity: 1
}
#recent-posts time,
#post-meta time {
display: inline !important
}
</style></noscript><script>(win=>{
win.saveToLocal = {
set: function setWithExpiry(key, value, ttl) {
if (ttl === 0) return
const now = new Date()
const expiryDay = ttl * 86400000
const item = {
value: value,
expiry: now.getTime() + expiryDay,
}
localStorage.setItem(key, JSON.stringify(item))
},
get: function getWithExpiry(key) {
const itemStr = localStorage.getItem(key)
if (!itemStr) {
return undefined
}
const item = JSON.parse(itemStr)
const now = new Date()
if (now.getTime() > item.expiry) {
localStorage.removeItem(key)
return undefined
}
return item.value
}
}
win.getScript = url => new Promise((resolve, reject) => {
const script = document.createElement('script')
script.src = url
script.async = true
script.onerror = reject
script.onload = script.onreadystatechange = function() {
const loadState = this.readyState
if (loadState && loadState !== 'loaded' && loadState !== 'complete') return
script.onload = script.onreadystatechange = null
resolve()
}
document.head.appendChild(script)
})
win.activateDarkMode = function () {
document.documentElement.setAttribute('data-theme', 'dark')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#0d0d0d')
}
}
win.activateLightMode = function () {
document.documentElement.setAttribute('data-theme', 'light')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#ffffff')
}
}
const t = saveToLocal.get('theme')
if (t === 'dark') activateDarkMode()
else if (t === 'light') activateLightMode()
const asideStatus = saveToLocal.get('aside-status')
if (asideStatus !== undefined) {
if (asideStatus === 'hide') {
document.documentElement.classList.add('hide-aside')
} else {
document.documentElement.classList.remove('hide-aside')
}
}
const detectApple = () => {
if(/iPad|iPhone|iPod|Macintosh/.test(navigator.userAgent)){
document.documentElement.classList.add('apple')
}
}
detectApple()
})(window)</script><meta name="generator" content="Hexo 6.2.0"></head><body><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img is-center"><img src="https://i.loli.net/2021/02/24/5O1day2nriDzjSu.png" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="sidebar-site-data site-data is-center"><a href="/JeckFS/archives/"><div class="headline">文章</div><div class="length-num">256</div></a><a href="/JeckFS/tags/"><div class="headline">标签</div><div class="length-num">72</div></a><a href="/JeckFS/categories/"><div class="headline">分类</div><div class="length-num">67</div></a></div><hr/></div></div><div class="page" id="body-wrap"><header class="full_page" id="page-header" style="background-image: url('https://img2.baidu.com/it/u=341242123,757592285&fm=253&fmt=auto&app=120&f=JPEG?w=1280&h=800')"><nav id="nav"><span id="blog_name"><a id="site-name" href="/JeckFS/">JeckFS</a></span><div id="menus"><div id="search-button"><a class="site-page social-icon search"><i class="fas fa-search fa-fw"></i><span> 搜索</span></a></div><div id="toggle-menu"><a class="site-page"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="site-info"><h1 id="site-title">JeckFS</h1></div><div id="scroll-down"><i class="fas fa-angle-down scroll-down-effects"></i></div></header><main class="layout" id="content-inner"><div class="recent-posts" id="recent-posts"><div class="recent-post-item"><div class="post_cover left"><a href="/JeckFS/2023/02/03/Unix-%E6%A0%87%E5%87%86IO%E5%BA%93/" title="Unix-标准IO库"><img class="post_bg" src="https://img0.baidu.com/it/u=297071526,3870034878&fm=253&fmt=auto&app=138&f=JPEG?w=499&h=332" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="Unix-标准IO库"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2023/02/03/Unix-%E6%A0%87%E5%87%86IO%E5%BA%93/" title="Unix-标准IO库">Unix-标准IO库</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-02-03T02:48:44.000Z" title="发表于 2023-02-03 10:48:44">2023-02-03</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/Unix/">Unix</a></span></div><div class="content">流以前提到的 IO 函数都是围绕文件描述符的。对文件的读写等操作都是基于文件描述符的。而标准 IO 库的操作是围绕流的。当使用标准 IO 库打开或创建一个文件时,流与该文件就相互关联了起来。
流的定向
不同字符集,单个字符可能占用一个字节也可能占用两个字节(宽字符集)。流的定向决定了所读写的字符是单字节还是多字节的。
刚创建的流是没有定向的。
在未定向的流上使用多字节 IO 函数(见 wchar.h),则流的定向就被设置为宽定向的;
在为定向的流上使用单字节 IO 函数,则流的定向为字节定向。
流定向的改变:freopen() 清除一个流定向;fwide() 设置流定向。
参数说明:
参数说明
mode 参数
函数作用
为负
设置流定向为字节定向
为正
设置流定向为宽定向
为 0
不设置流定向,但返回标识该流定向的值
函数说明:
fwide 不能改变已定向流的定向 ...</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/JeckFS/2023/02/01/hexo-hexo%E5%8D%9A%E5%AE%A2%E8%BF%81%E7%A7%BB/" title="hexo-hexo博客迁移"><img class="post_bg" src="https://img2.baidu.com/it/u=2566230917,2808117782&fm=253&fmt=auto&app=120&f=JPEG?w=889&h=500" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="hexo-hexo博客迁移"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2023/02/01/hexo-hexo%E5%8D%9A%E5%AE%A2%E8%BF%81%E7%A7%BB/" title="hexo-hexo博客迁移">hexo-hexo博客迁移</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-02-01T02:06:15.000Z" title="发表于 2023-02-01 10:06:15">2023-02-01</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA/">环境搭建</a></span></div><div class="content">准备
安装 Git。教程参见:本博客===环境搭建===git-git安装与升级
安装 nvm 及 nodejs。教程参见:本博客===环境搭建===nvm-nvm安装nodejs 版本与本地 nodejs 版本(写博客的主机)一致。
在【远端hexo目录下】执行 npm install hexo-cli -g
迁移123456789101112131415# 从仓库克隆原始 hexo git clone https://gitee.com/JeckFS/JeckFS.git -b hexo# 更新 [远端hexo目录]/_config.yml、[远端hexo目录]/package.json、[远端hexo目录]/package-lock.jsonscp [本地hexo目录]/_config.yml [email protected]:[远端hexo目录]scp [本地hexo目录]/package.json [email protected]:[远端hexo目录]scp [本地hexo目录]/package-lock.json [email protected]:[远端hexo目录]# ...</div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/JeckFS/2023/01/31/nvm-nvm%E5%AE%89%E8%A3%85/" title="nvm-nvm安装"><img class="post_bg" src="https://img0.baidu.com/it/u=3927742728,83245337&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="nvm-nvm安装"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2023/01/31/nvm-nvm%E5%AE%89%E8%A3%85/" title="nvm-nvm安装">nvm-nvm安装</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-01-31T10:47:29.000Z" title="发表于 2023-01-31 18:47:29">2023-01-31</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA/">环境搭建</a></span></div><div class="content">准备
nvm github仓库地址
安装
执行 cd ~; git clone https://github.com/nvm-sh/nvm.git .nvm;
cd ~/.nvm; git checkout v0.39.2;
在 .zshrc 中添加如下内容:
123export NVM_DIR="$HOME/.nvm"[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/JeckFS/2023/01/31/git-git%E5%AE%89%E8%A3%85%E4%B8%8E%E5%8D%87%E7%BA%A7/" title="git-git安装与升级"><img class="post_bg" src="https://img2.baidu.com/it/u=48958987,1702342987&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=281" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="git-git安装与升级"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2023/01/31/git-git%E5%AE%89%E8%A3%85%E4%B8%8E%E5%8D%87%E7%BA%A7/" title="git-git安装与升级">git-git安装与升级</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-01-31T09:46:43.000Z" title="发表于 2023-01-31 17:46:43">2023-01-31</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA/">环境搭建</a></span></div><div class="content">Git 安装准备安装依赖包yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel gcc perl-ExtUtils-MakeMaker package
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install -y gcc-c++ perl-ExtUtils-MakeMaker make
编译安装
github仓库地址
执行 mkdir /usr/local/git 创建 git 安装目录。
进入 github 仓库地址下载源码。解压后,进入解压目录后执行 make prefix=/usr/local/git install
在 .zshrc 中添加 export PATH=$PATH:/usr/local/git/bin,然后执行 cd ~; source .zshrc;
</div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/JeckFS/2023/01/17/Unix-ioctl%E5%87%BD%E6%95%B0/" title="Unix-ioctl函数"><img class="post_bg" src="https://img2.baidu.com/it/u=1787475710,2159333383&fm=253&fmt=auto&app=120&f=JPEG?w=1280&h=800" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="Unix-ioctl函数"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2023/01/17/Unix-ioctl%E5%87%BD%E6%95%B0/" title="Unix-ioctl函数">Unix-ioctl函数</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-01-17T06:25:45.000Z" title="发表于 2023-01-17 14:25:45">2023-01-17</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/Unix/">Unix</a></span></div><div class="content">概念ioctl 是设备驱动程序中设备控制接口函数,一个字符设备驱动通常会实现设备打开、关闭、读、写等功能,在一些需要细分的情境下,如果需要扩展新的功能,通常以增设 ioctl() 命令的方式实现。
在文件 I/O 中,ioctl 扮演着重要角色,本文将以驱动开发为侧重点,从用户空间到内核空间纵向分析 ioctl 函数。
用户空间 ioctl函数123#include <sys/ioctl.h> int ioctl(int fd, int cmd, ...) ;
ioctl() 函数执行成功时返回 0,失败则返回 -1 并设置全局变量 errorno 值,因此在用户空间使用 ioctl 时,可以做如下的出错判断以及处理:
123456int ret;ret = ioctl(fd, MYCMD);if (ret == -1) { printf("ioctl: %s\n", strerror(errno));}
在实际应用中,ioctl 最常见的 errorno 值为 ENOTTY(error not a typewrit ...</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/JeckFS/2023/01/17/finance-%E9%93%B6%E8%A1%8C%E4%B8%9A%E5%8A%A1/" title="finance-银行业务"><img class="post_bg" src="https://img1.baidu.com/it/u=2656997690,163773951&fm=253&fmt=auto&app=120&f=JPEG?w=889&h=500" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="finance-银行业务"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2023/01/17/finance-%E9%93%B6%E8%A1%8C%E4%B8%9A%E5%8A%A1/" title="finance-银行业务">finance-银行业务</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-01-17T01:09:10.000Z" title="发表于 2023-01-17 09:09:10">2023-01-17</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/Finance/">Finance</a></span></div><div class="content">银行基本业务传统业务:“包括一般贷款、简单外汇买卖、贸易融资等”。特点是依靠 大量分行网络、业务量 支持。
复杂业务:“如衍生产品、结构性融资、租赁、引进战略投资者、收购兼并上市等” 特点是“高技术含量、高利润”。
基本业务按照资产负债表分为三类:
负债业务利润来源。包括存款业务、借款业务、同业业务。
资产业务
储备资产:银行应对存款提取而准备的资金。包括:“库存现金、交存中央银行的存款准备金、存放在同业的存款、托收未达款项和托收中现金以及坏账准备金等”
信贷资产:由发放的各种贷款所形成的资产。
银行使用资金投资以赚取利润的活动。包括以下 4 个方面:
贷款(放款)
贴现
证券投资
国内证券投资
政府债券投资
地方政府债券投资
公司债券投资
政府发型的债券包括:
国库券:短期债券,期限在 1 年以下
中长期债券:用于基建投资,利率较高,期限较长。商业银行较好的投资对象。
国际证券投资
金融租赁
中间业务商业银行代理客户收付款以及客户委托的其他事项以赚取手续费。银行不需要动用自己的资金。
中间业务按功能与性质的划分:
支付结算类:商业银行为客户因债权债务关 ...</div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/JeckFS/2023/01/13/finance-%E6%8E%88%E4%BF%A1/" title="finance-授信"><img class="post_bg" src="https://img1.baidu.com/it/u=2709423071,2700494803&fm=253&fmt=auto&app=120&f=JPEG?w=500&h=281" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="finance-授信"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2023/01/13/finance-%E6%8E%88%E4%BF%A1/" title="finance-授信">finance-授信</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2023-01-13T03:09:09.000Z" title="发表于 2023-01-13 11:09:09">2023-01-13</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/Finance/">Finance</a></span></div><div class="content">
授信所经过的阶段:
公司授信业务授信用途类流动资金贷款
营运资金贷款
举例:企业为了扩大再生产,需要更多的资金(资金周转),这部分资金通过营运资金贷款的方式向银行获取资金,同时企业将自己的设备或其他资产做抵押。企业将赚取的利润还贷款。
循环贷款
从贷款合同签订起,连续三个月没有提款,那么该循环贷款额度将会取消。
周转限额贷款
临时贷款
</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/JeckFS/2022/12/29/gdb-%E8%B0%83%E8%AF%95/" title="gdb-调试"><img class="post_bg" src="https://img1.baidu.com/it/u=2860717797,2343059675&fm=253&fmt=auto&app=138&f=JPEG?w=889&h=500" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="gdb-调试"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2022/12/29/gdb-%E8%B0%83%E8%AF%95/" title="gdb-调试">gdb-调试</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2022-12-29T03:33:44.000Z" title="发表于 2022-12-29 11:33:44">2022-12-29</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/Unix/">Unix</a></span></div><div class="content">基本调试命令用 gcc 编译源程序的时候,编译后的可执行文件不会包含源程序代码,如果您打算编译后的程序可以被调试,编译的时候要加 -g 的参数,例如:
1gcc -g -o book113 book113.c
在命令提示符下输入 gdb book113 就可以调试 book113 程序了。
1gdb book113
基本调试命令
命令
命令缩写
命令说明
set args
设置主程序的参数。 例如:./book119 /oracle/c/book1.c /tmp/book1.c 设置参数的方法是: gdb book119 (gdb) set args /oracle/c/book1.c /tmp/book1.c
break
b
设置断点,b 20 表示在第20行设置断点,可以设置多个断点。
run
r
开始运行程序, 程序运行到断点的位置会停下来,如果没有遇 ...</div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/JeckFS/2022/12/23/vim-%E4%BD%BF%E7%94%A8%E6%8A%80%E5%B7%A7/" title="vim-使用技巧"><img class="post_bg" src="https://img2.baidu.com/it/u=2566230917,2808117782&fm=253&fmt=auto&app=120&f=JPEG?w=889&h=500" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="vim-使用技巧"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2022/12/23/vim-%E4%BD%BF%E7%94%A8%E6%8A%80%E5%B7%A7/" title="vim-使用技巧">vim-使用技巧</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2022-12-23T04:09:28.000Z" title="发表于 2022-12-23 12:09:28">2022-12-23</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/Vim/">Vim</a></span></div><div class="content">删除技巧参考教程
:%s/[Ctrl-v][Enter]//g 删除DOS方式的回车^M:%s= *$== 删除行尾空白:%!sort -u 删除重复行:%s/^.{-}pdf/new.pdf/ 只是删除第一个pdf:%s/// 删除多行注释:g/^$/d 删除所有空行:g!/^dd/d 删除不含字符串’dd’的行:v/^dd/d 删除不含字符串’dd’的行:g/str1/,/str2/d 删除所有第一个含str1到第一个含str2之间的行:v/./.,/./-1join 压缩空行:g/^$/,/./-j 压缩空行ndw 或 ndW 删除光标处开始及其后的 n-1 个字符。d0 删至行首。d$ 删至行尾。ndd 删除当前行及其后 n-1 行。x 或 X 删除一个字符。Ctrl+u 删除输入方式下所输入的文本。D 删除到行尾x,y 删除与复制包含高亮区dl 删除当前字符(与x命令功能相同)d0 删除到某一行的开始位置d^ 删除到某一行的第一个字符位置(不包括空格或TAB字符)dw 删除到某个单词的结尾位置d3w 删除到第三个单词的结尾位置db 删除到某个单词的开始位置 ...</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/JeckFS/2022/12/12/NAS-SAN%E5%BC%82%E5%90%8C%E7%82%B9/" title="NAS-SAN异同点"><img class="post_bg" src="https://img2.baidu.com/it/u=341242123,757592285&fm=253&fmt=auto&app=120&f=JPEG?w=1280&h=800" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="NAS-SAN异同点"></a></div><div class="recent-post-info"><a class="article-title" href="/JeckFS/2022/12/12/NAS-SAN%E5%BC%82%E5%90%8C%E7%82%B9/" title="NAS-SAN异同点">NAS-SAN异同点</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2022-12-12T02:06:26.000Z" title="发表于 2022-12-12 10:06:26">2022-12-12</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/JeckFS/categories/Linux/">Linux</a></span></div><div class="content">NAS 是基于网络的单个存储设备,相对比较便宜且容易安装。SAN 是一个多种设备相互耦合的网络,更加昂会且安装和管理也更复杂。对用户来说,最大的不同点是:NAS 设备以网络挂载卷的方式提供共享存储服务,通常使用 SMB/CIFS/NFS 协议。SAN 对用户来说更像是本地磁盘一样。
NAS 以 RAID 数组的方式组织排列共享文件。NAS 会存在多份冗余的数据(通常是 RAID 冗余)以提高可用性,且会自动备份到其他设备或者云上。NAS 设备本身是一个网络节点,就像其他 TCP/IP 设备或主机一样。
NAS 的局限性:
伸缩性和性能较弱。随着用户的增加,只能升级硬件和网络带宽。
容易出现网络拥堵的情况。所有的 packets 都必须接收成功,文件才可用。
SAN 优点:
高性能,低延迟。客户端与存储卷之间通过光纤连接。服务器与客户端使用专有网络进行通信。
允许多用户同时访问共享存储。如上百的视频编辑者能够同时使用 10 GB/s 的带宽。因此适用于多人视频创作环境。
操作系统级别的文件访问
支持上百用户的同时共享访问
SAN 的缺点:
花费高,需要管理员维护专有的网络及光 ...</div></div></div><nav id="pagination"><div class="pagination"><span class="page-number current">1</span><a class="page-number" href="/JeckFS/page/2/#content-inner">2</a><span class="space">…</span><a class="page-number" href="/JeckFS/page/26/#content-inner">26</a><a class="extend next" rel="next" href="/JeckFS/page/2/#content-inner"><i class="fas fa-chevron-right fa-fw"></i></a></div></nav></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="is-center"><div class="avatar-img"><img src="https://i.loli.net/2021/02/24/5O1day2nriDzjSu.png" onerror="this.onerror=null;this.src='/JeckFS/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__name">YFS</div><div class="author-info__description">快乐每一天</div></div><div class="card-info-data site-data is-center"><a href="/JeckFS/archives/"><div class="headline">文章</div><div class="length-num">256</div></a><a href="/JeckFS/tags/"><div class="headline">标签</div><div class="length-num">72</div></a><a href="/JeckFS/categories/"><div class="headline">分类</div><div class="length-num">67</div></a></div><a id="card-info-btn" target="_blank" rel="noopener" href="https://github.com/xxxxxx"><i class="fab fa-github"></i><span>Follow Me</span></a></div><div class="card-widget card-announcement"><div class="item-headline"><i class="fas fa-bullhorn fa-shake"></i><span>公告</span></div><div class="announcement_content">This is my Blog</div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item"><a class="thumbnail" href="/JeckFS/2023/02/03/Unix-%E6%A0%87%E5%87%86IO%E5%BA%93/" title="Unix-标准IO库"><img src="https://img0.baidu.com/it/u=297071526,3870034878&fm=253&fmt=auto&app=138&f=JPEG?w=499&h=332" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="Unix-标准IO库"/></a><div class="content"><a class="title" href="/JeckFS/2023/02/03/Unix-%E6%A0%87%E5%87%86IO%E5%BA%93/" title="Unix-标准IO库">Unix-标准IO库</a><time datetime="2023-02-03T02:48:44.000Z" title="发表于 2023-02-03 10:48:44">2023-02-03</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/JeckFS/2023/02/01/hexo-hexo%E5%8D%9A%E5%AE%A2%E8%BF%81%E7%A7%BB/" title="hexo-hexo博客迁移"><img src="https://img2.baidu.com/it/u=2566230917,2808117782&fm=253&fmt=auto&app=120&f=JPEG?w=889&h=500" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="hexo-hexo博客迁移"/></a><div class="content"><a class="title" href="/JeckFS/2023/02/01/hexo-hexo%E5%8D%9A%E5%AE%A2%E8%BF%81%E7%A7%BB/" title="hexo-hexo博客迁移">hexo-hexo博客迁移</a><time datetime="2023-02-01T02:06:15.000Z" title="发表于 2023-02-01 10:06:15">2023-02-01</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/JeckFS/2023/01/31/nvm-nvm%E5%AE%89%E8%A3%85/" title="nvm-nvm安装"><img src="https://img0.baidu.com/it/u=3927742728,83245337&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="nvm-nvm安装"/></a><div class="content"><a class="title" href="/JeckFS/2023/01/31/nvm-nvm%E5%AE%89%E8%A3%85/" title="nvm-nvm安装">nvm-nvm安装</a><time datetime="2023-01-31T10:47:29.000Z" title="发表于 2023-01-31 18:47:29">2023-01-31</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/JeckFS/2023/01/31/git-git%E5%AE%89%E8%A3%85%E4%B8%8E%E5%8D%87%E7%BA%A7/" title="git-git安装与升级"><img src="https://img2.baidu.com/it/u=48958987,1702342987&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=281" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="git-git安装与升级"/></a><div class="content"><a class="title" href="/JeckFS/2023/01/31/git-git%E5%AE%89%E8%A3%85%E4%B8%8E%E5%8D%87%E7%BA%A7/" title="git-git安装与升级">git-git安装与升级</a><time datetime="2023-01-31T09:46:43.000Z" title="发表于 2023-01-31 17:46:43">2023-01-31</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/JeckFS/2023/01/17/Unix-ioctl%E5%87%BD%E6%95%B0/" title="Unix-ioctl函数"><img src="https://img2.baidu.com/it/u=1787475710,2159333383&fm=253&fmt=auto&app=120&f=JPEG?w=1280&h=800" onerror="this.onerror=null;this.src='/JeckFS/img/404.jpg'" alt="Unix-ioctl函数"/></a><div class="content"><a class="title" href="/JeckFS/2023/01/17/Unix-ioctl%E5%87%BD%E6%95%B0/" title="Unix-ioctl函数">Unix-ioctl函数</a><time datetime="2023-01-17T06:25:45.000Z" title="发表于 2023-01-17 14:25:45">2023-01-17</time></div></div></div></div><div class="card-widget card-categories"><div class="item-headline">
<i class="fas fa-folder-open"></i>
<span>分类</span>
<a class="card-more-btn" href="/JeckFS/categories/" title="查看更多">
<i class="fas fa-angle-right"></i></a>
</div>
<ul class="card-category-list" id="aside-cat-list">
<li class="card-category-list-item "><a class="card-category-list-link" href="/JeckFS/categories/Docker/"><span class="card-category-list-name">Docker</span><span class="card-category-list-count">4</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/JeckFS/categories/Electron/"><span class="card-category-list-name">Electron</span><span class="card-category-list-count">3</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/JeckFS/categories/Finance/"><span class="card-category-list-name">Finance</span><span class="card-category-list-count">2</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/JeckFS/categories/Go/"><span class="card-category-list-name">Go</span><span class="card-category-list-count">1</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/JeckFS/categories/Gradle/"><span class="card-category-list-name">Gradle</span><span class="card-category-list-count">1</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/JeckFS/categories/HashMap/"><span class="card-category-list-name">HashMap</span><span class="card-category-list-count">2</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/JeckFS/categories/Intellij-Idea/"><span class="card-category-list-name">Intellij Idea</span><span class="card-category-list-count">1</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/JeckFS/categories/Java/"><span class="card-category-list-name">Java</span><span class="card-category-list-count">3</span></a></li>
</ul></div><div class="card-widget card-tags"><div class="item-headline"><i class="fas fa-tags"></i><span>标签</span></div><div class="card-tag-cloud"><a href="/JeckFS/tags/Android/" style="font-size: 1.1em; color: #999">Android</a> <a href="/JeckFS/tags/Docker/" style="font-size: 1.23em; color: #999ea6">Docker</a> <a href="/JeckFS/tags/Electron/" style="font-size: 1.23em; color: #999ea6">Electron</a> <a href="/JeckFS/tags/Go/" style="font-size: 1.1em; color: #999">Go</a> <a href="/JeckFS/tags/Gradle/" style="font-size: 1.1em; color: #999">Gradle</a> <a href="/JeckFS/tags/HashMap/" style="font-size: 1.14em; color: #999b9d">HashMap</a> <a href="/JeckFS/tags/Intellij-Idea/" style="font-size: 1.1em; color: #999">Intellij Idea</a> <a href="/JeckFS/tags/Java/" style="font-size: 1.19em; color: #999da1">Java</a> <a href="/JeckFS/tags/JavaScript/" style="font-size: 1.32em; color: #99a2ae">JavaScript</a> <a href="/JeckFS/tags/Linux/" style="font-size: 1.41em; color: #99a5b7">Linux</a> <a href="/JeckFS/tags/MySQL/" style="font-size: 1.14em; color: #999b9d">MySQL</a> <a href="/JeckFS/tags/NetLogo/" style="font-size: 1.1em; color: #999">NetLogo</a> <a href="/JeckFS/tags/Redis/" style="font-size: 1.37em; color: #99a4b2">Redis</a> <a href="/JeckFS/tags/Spring/" style="font-size: 1.19em; color: #999da1">Spring</a> <a href="/JeckFS/tags/SpringBoot/" style="font-size: 1.14em; color: #999b9d">SpringBoot</a> <a href="/JeckFS/tags/SpringCloud/" style="font-size: 1.28em; color: #99a0aa">SpringCloud</a> <a href="/JeckFS/tags/Spring%E6%BA%90%E7%A0%81%E9%98%85%E8%AF%BB/" style="font-size: 1.1em; color: #999">Spring源码阅读</a> <a href="/JeckFS/tags/TreeMap/" style="font-size: 1.1em; color: #999">TreeMap</a> <a href="/JeckFS/tags/Unix/" style="font-size: 1.46em; color: #99a7bb">Unix</a> <a href="/JeckFS/tags/Vim/" style="font-size: 1.1em; color: #999">Vim</a> <a href="/JeckFS/tags/git/" style="font-size: 1.1em; color: #999">git</a> <a href="/JeckFS/tags/java%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B%E7%9A%84%E8%89%BA%E6%9C%AF/" style="font-size: 1.23em; color: #999ea6">java并发编程的艺术</a> <a href="/JeckFS/tags/kubernetes/" style="font-size: 1.19em; color: #999da1">kubernetes</a> <a href="/JeckFS/tags/leetcode/" style="font-size: 1.23em; color: #999ea6">leetcode</a> <a href="/JeckFS/tags/leetcode%E5%85%B6%E4%BB%96/" style="font-size: 1.32em; color: #99a2ae">leetcode其他</a> <a href="/JeckFS/tags/maven/" style="font-size: 1.1em; color: #999">maven</a> <a href="/JeckFS/tags/mysql/" style="font-size: 1.19em; color: #999da1">mysql</a> <a href="/JeckFS/tags/openGauss/" style="font-size: 1.1em; color: #999">openGauss</a> <a href="/JeckFS/tags/other/" style="font-size: 1.1em; color: #999">other</a> <a href="/JeckFS/tags/others/" style="font-size: 1.19em; color: #999da1">others</a> <a href="/JeckFS/tags/python/" style="font-size: 1.1em; color: #999">python</a> <a href="/JeckFS/tags/spring-security/" style="font-size: 1.1em; color: #999">spring-security</a> <a href="/JeckFS/tags/vim/" style="font-size: 1.1em; color: #999">vim</a> <a href="/JeckFS/tags/%E5%85%B6%E4%BB%96/" style="font-size: 1.14em; color: #999b9d">其他</a> <a href="/JeckFS/tags/%E5%88%86%E5%B8%83%E5%BC%8F/" style="font-size: 1.1em; color: #999">分布式</a> <a href="/JeckFS/tags/%E5%89%8D%E7%AB%AF/" style="font-size: 1.19em; color: #999da1">前端</a> <a href="/JeckFS/tags/%E5%89%91%E6%8C%87offer/" style="font-size: 1.23em; color: #999ea6">剑指offer</a> <a href="/JeckFS/tags/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92/" style="font-size: 1.5em; color: #99a9bf">动态规划</a> <a href="/JeckFS/tags/%E5%8D%95%E8%B0%83%E6%A0%88/" style="font-size: 1.14em; color: #999b9d">单调栈</a> <a href="/JeckFS/tags/%E5%9B%BE-%E5%B9%BF%E5%BA%A6%E4%BC%98%E5%85%88%E9%81%8D%E5%8E%86/" style="font-size: 1.14em; color: #999b9d">图; 广度优先遍历</a></div></div><div class="card-widget card-archives"><div class="item-headline"><i class="fas fa-archive"></i><span>归档</span><a class="card-more-btn" href="/JeckFS/archives/" title="查看更多">
<i class="fas fa-angle-right"></i></a></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/JeckFS/archives/2023/02/"><span class="card-archive-list-date">二月 2023</span><span class="card-archive-list-count">2</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/JeckFS/archives/2023/01/"><span class="card-archive-list-date">一月 2023</span><span class="card-archive-list-count">5</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/JeckFS/archives/2022/12/"><span class="card-archive-list-date">十二月 2022</span><span class="card-archive-list-count">8</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/JeckFS/archives/2022/11/"><span class="card-archive-list-date">十一月 2022</span><span class="card-archive-list-count">7</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/JeckFS/archives/2022/10/"><span class="card-archive-list-date">十月 2022</span><span class="card-archive-list-count">1</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/JeckFS/archives/2022/09/"><span class="card-archive-list-date">九月 2022</span><span class="card-archive-list-count">5</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/JeckFS/archives/2022/08/"><span class="card-archive-list-date">八月 2022</span><span class="card-archive-list-count">2</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/JeckFS/archives/2022/07/"><span class="card-archive-list-date">七月 2022</span><span class="card-archive-list-count">16</span></a></li></ul></div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>网站资讯</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">文章数目 :</div><div class="item-count">256</div></div><div class="webinfo-item"><div class="item-name">本站访客数 :</div><div class="item-count" id="busuanzi_value_site_uv"></div></div><div class="webinfo-item"><div class="item-name">本站总访问量 :</div><div class="item-count" id="busuanzi_value_site_pv"></div></div><div class="webinfo-item"><div class="item-name">最后更新时间 :</div><div class="item-count" id="last-push-date" data-lastPushDate="2023-02-03T08:17:34.449Z"></div></div></div></div></div></div></main><footer id="footer"><div id="footer-wrap"><div class="copyright">©2020 - 2023 By YFS</div><div class="framework-info"><span>框架 </span><a target="_blank" rel="noopener" href="https://hexo.io">Hexo</a><span class="footer-separator">|</span><span>主题 </span><a target="_blank" rel="noopener" href="https://github.com/jerryc127/hexo-theme-butterfly">Butterfly</a></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="浅色和深色模式转换"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="单栏和双栏切换"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside_config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到顶部"><i class="fas fa-arrow-up"></i></button></div></div><div id="local-search"><div class="search-dialog"><nav class="search-nav"><span class="search-dialog-title">搜索</span><span id="loading-status"></span><button class="search-close-button"><i class="fas fa-times"></i></button></nav><div class="is-center" id="loading-database"><i class="fas fa-spinner fa-pulse"></i><span> 数据库加载中</span></div><div class="search-wrap"><div id="local-search-input"><div class="local-search-box"><input class="local-search-box--input" placeholder="搜索文章" type="text"/></div></div><hr/><div id="local-search-results"></div></div></div><div id="search-mask"></div></div><div><script src="/JeckFS/js/utils.js"></script><script src="/JeckFS/js/main.js"></script><script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.umd.js"></script><script src="/JeckFS/js/search/local-search.js"></script><div class="js-pjax"></div><script async data-pjax src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script></div></body></html>