itwiki:linux-command-practice

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

后一修订版
前一修订版
itwiki:linux-command-practice [2021/09/16 01:03] – 创建 ovwx@live.ioitwiki:linux-command-practice [2021/09/20 09:27] (当前版本) – [内存&SWAP管理] ovwx@live.io
行 67: 行 67:
  
 ==== 内存&SWAP管理 ==== ==== 内存&SWAP管理 ====
 +
 +=== 创建SWAP文件 ===
 +<code>
 +mkdir /swap
 +dd if=/dev/zero of=/swap/swap01 bs=1M count=512 #创建一个512M的文件
 +chmod 0600 /swap/swap01 #将权限设置为0600,否则系统会告警
 +mkswap /swap/swap01 #创建swap文件
 +swapon /swap/swap01 #启用swap文件
 +free -h #查看可用的内存
 +</code>
 +注:有些云虚机未开启swap文件,虚拟机内存小,开启swap后对性能提升还是有用的。
 === 清理SWAP空间 === === 清理SWAP空间 ===
 <code> <code>
 swapoff -a swapoff -a
 swapon -a swapon -a
-<code>+</code> 
 === 清除CACHE空间 === === 清除CACHE空间 ===
 <code> <code>
行 220: 行 232:
   - 在文件尾添加内容: '$a new'   - 在文件尾添加内容: '$a new'
   - 搜索内容并将搜索到的内容替换为新的内容: 's/old/new/g' g代表全局替换   - 搜索内容并将搜索到的内容替换为新的内容: 's/old/new/g' g代表全局替换
-  - 删除空行: '/^[[:space:]]*$/d' +  - 删除空行: %%'/^[[:space:]]*$/d'%% 
-  - 正则替换及子匹配: echo "Hello,12345" | sed -e 's/Hello,\(.*\)/\1/', 这个指令的意思是:搜索模式Hello,(.*),并将搜索到的模式替换成匹配的第一组子串(即用第一个括号括起的内容,本处为12345)+  - 正则替换及子匹配: %%echo "Hello,12345" | sed -e 's/Hello,\(.*\)/\1/'%%, 这个指令的意思是:搜索模式Hello,(.*),并将搜索到的模式替换成匹配的第一组子串(即用第一个括号括起的内容,本处为12345) 
 > 注:2)与7)的不同之处是2)是将指定行修改为新的内容,7)是只将搜索到的内容替换为新的内容 > 注:2)与7)的不同之处是2)是将指定行修改为新的内容,7)是只将搜索到的内容替换为新的内容
  
 === 大小写转换 ===  === 大小写转换 === 
-  * echo 'Asdf' | tr [:lower:] [:upper:] +  * %%echo 'Asdf' | tr [:lower:] [:upper:]%% 
-  * echo 'Asdf' | tr a-z A-Z +  * %%echo 'Asdf' | tr a-z A-Z%% 
-  * echo 'Asdf' | sed 's/[a-z]/\U&/g' 转大写,注使用大写的U表示转全文,小写的u转首字 +  * %%echo 'Asdf' | sed 's/[a-z]/\U&/g' 转大写,注使用大写的U表示转全文,小写的u转首字%% 
-  * echo 'ASDF' | sed 's/[A-Z]/\L&/g' 转换小写+  * %%echo 'ASDF' | sed 's/[A-Z]/\L&/g' 转换小写%%
  
 ==== 关于Shell里面的正则表达式 ==== ==== 关于Shell里面的正则表达式 ====
-ERE(扩展正则): +  - ERE(扩展正则): 
-BRE(基本正则): 七个元字符{}()|?+需要转义才代表特殊含义,而扩展正则不需要转义就代表特殊含义,BRE没有诸如\d,\s这样的字符集,取而代之的是:[:space:]-空白字符,[:alnum:]-字母+数字,[:alpha:]-字符,[:blank:]-空白+制表符,[:lower:][:upper:]小写、大写,[:punct:]标点符号,[:digit:]-数字+  BRE(基本正则): %%七个元字符{}()|?+需要转义才代表特殊含义,而扩展正则不需要转义就代表特殊含义,BRE没有诸如\d,\s这样的字符集,取而代之的是:[:space:]-空白字符,[:alnum:]-字母+数字,[:alpha:]-字符,[:blank:]-空白+制表符,[:lower:][:upper:]小写、大写,[:punct:]标点符号,[:digit:]-数字 %% 
 vi,sed,grep 使用BRE正则 vi,sed,grep 使用BRE正则
 +
 awk,egrep 使用扩展正则 awk,egrep 使用扩展正则
-ref: http://www.4e00.com/blog/linux/2016/01/21/posix-bre-and-ere-regular-expression.html 
  
 +ref: http://www.4e00.com/blog/linux/2016/01/21/posix-bre-and-ere-regular-expression.html
 ===== 防火墙 ==== ===== 防火墙 ====
 <code> <code>
行 283: 行 298:
 # 关于符号链接,第一个参数为要链接的文件或者目录,第二个参数为链接名称(经常搞反) # 关于符号链接,第一个参数为要链接的文件或者目录,第二个参数为链接名称(经常搞反)
 <code>ln -s work_dir name</code> <code>ln -s work_dir name</code>
 +
 +==== 一个简单的 Web Terminal, Webshell ====
 +
 +[[https://github.com/tsl0922/ttyd/releases/tag/1.6.3|ttyd--一个简单的Web Shell终端]]
 +
 +<code>
 +wget https://github.com/tsl0922/ttyd/releases/download/1.6.3/ttyd.x86_64
 +chmod +x ttyd.x86_64
 +ln -s /path/to/ttyd.x86_64 /usr/bin/ttyd
 +ttyd -p32768 bash #在端口32768上启用一个WebShell
 +注:该程序既可用于黑客等非法用途,也可自己用于合法用途,还是看自己用法吧。
 +</code>
 +
 +注意:
 +  * **!!!请不要在root权限下运行该程序**
 +  * **使用NGINX之类的代理系统转发时做好认证工作** See also: [[itwiki:nginx-practice|NGINX 实践]]
  
  
  
  • itwiki/linux-command-practice.1631747006.txt.gz
  • 最后更改: 2021/09/16 01:03
  • ovwx@live.io