目录

配置 bash Shell忽略命令大小写 |按“上“键显示该命令的历史

shell 删除匹配行

shell 获取结果中的第n列,第n行

grep过滤

shell 注释块

Linux反选删除文件

Linuxrm删除指定文件外的其他文件方法汇总

rm删除除去指定文件的剩余所有文件  (rm 反向删除)

linux 删除其他文件

如何反向选择文件并删除

反向显示文件

shell去除重复行

shell按列排序

列column对齐

shell 定义分隔符和遍历行字段|IFS

shell 10进制转16进制

shell 加减乘除

shell 数组

显示历史命令和时间history


配置 bash Shell忽略命令大小写 |按“上“键显示该命令的历史

当按“上键”时,能够显示前一个历史命令。但是,这还 不太方便,下面的这个配置,可以让bash输入的命令头按“上“键显示该命令的历史,比如:输入 vim ,然后按”上“键,此时,可以显示上一次运行vim时

配置 linux 的 bash 忽略命令大小写 和 能根据输入的命令头按“上“键显示该命令的历史_nyist327的专栏-CSDN博客

一般情况下,bash对命令是区分大小写的,当按“上键”时,能够显示前一个历史命令。但是,这还 不太方便,下面的这个配置,可以让bash忽略大小写,而且,能根据输入的命令头按“上“键显示该命令的历史,比如:输入 vim ,然后按”上“键,此时,可以显示上一次运行vim时的那条命令,非常的方便!下面是该配置的内容,放在用户的home目录下面:shibo@iZ94wlxkhx8Z:~$ cat .inputrc
set completion-ignore-case on#For single press Tab results for when a partial or no completion is possible
set show-all-if-ambiguous on#For results when no completion is possible
set show-all-if-unmodified on#History completion bound to arrow keys (down, up)
"\e[A": history-search-backward
"\e[B": history-search-forward#Bash allows to quickly move between words with Ctrl+Left and Ctrl+Right
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word"

shell 删除匹配行

sed -i '/ddd/d' abc.txt

shell 获取结果中的第n列,第n行

grep Version|awk ‘{print $2}’ |sed -n ‘1p’   #获取第2列,第1行

print 后带的是你要获取第几列,sed -n 后带的是指定第几行。

grep Version|awk ‘{print $2 $4 $8}’  #获取第2列、4列、8列

grep过滤

【shell】用 grep 查找包含字符串的文件|grep 过滤|取匹配行的前后n行_bandaoyu的note-CSDN博客_grep查询包含关键字的文件

shell 注释块

方法四

if false ; then 被注释的多行内容 fi

不能如下使用:

if false ; then #被注释的多行内容    不能加#fi

加载配置/定义/文件
将函数或者变量替换定义在一个文件中,如函数可以定义在.fun文件中,然后在.sh脚本中,用“."加载,然后直接调用函数,如果:db.fun。定义函数可带参数,函数中的 $1,$2,$3…… 表示接受的第一个,第二个,第三个……参数。如:create_station_db  20   11   $1就是20  $2就是 11.
脚本中加载文件语句是:
GLOBAL_CFG_FILE = `find ./ |gropbal_config.sh`   #注意 "`"不是单引号
. ${GLOBAL_CFG_FILE}          #加载文件
${} 和$() 的区别
${NAME}和$NAME 都是引用替换变量NAME的替换内容,但是${}的好处就是限定了替换范围,不然${AB}C 用$ABC就容易产生歧义。
$(find ./ |grep global.cfg)和 `find ./ |grep global.cfg` 效果是一样的,但是有些shell上并不支持$()
删除指定范围内的字符串
sed -i ‘/#hwBegin/,/#hwEnd/d'  readme.txt   #就是将#hwBegin和#hwEnd 之间含#hwBegin/和/#hwEnd/

删除掉

覆盖和追究字符串
echo “hello” > readme.txt  #用hello覆盖 readme.txt的内容
echo “hello” 》readme.txt  #在 readme.txt的结尾追加“hello” 字符串
判断文件的后缀名是否是
if[ "$ {sqlfile##*.}" ="sql" ]; then #判断文件的后缀名是否是sql,是就执行
来源:http://bbs.chinaunix.net/thread-624345-1-1.html
shell中的if else 语句
注意if、elif 和“[”之间要有空格
if [ ${SERVER_NAME} == ${HOPE_CLOUD_SERVER_NAME} ]; then
……
elif  [ ${SERVER_NAME} == ${HOPE_VIEW_SERVER_NAME} ]; then
……
else
……
fi

shell脚本带参数
shell 脚本可以跟着参数,在编写脚本的时候,在脚本中用$1表示跟着脚本命令后的第1个参数
$2 表示跟着脚本命令后的第2个参数
#如:执行 $2 指定的文件夹下面的(含子文件夹下面)的所以sql脚本的shell脚本如下:
function run_all_sql_script()
{
for  sqlfile   in `ls  $2`              #$2为第二个参数
do
if [ -d $2'/'${ sqlfile} ]; then   # sqlfile   如果是个子文件夹 则 进入文件夹 递归
run_all_sql_script()  $2'/'${ sqlfile}
else
if[ "$ {sqlfile##*.}" ="sql" ]; then #判断文件的后缀名是否是sql,是就执行
mysql -u${MYSQL_USER}  -p${MYSQL_PASSWORD} $1< $2/${ sqlfile}
fi
fi
done
}
shell 循环输出目录下所有文件  
#!/bin/sh
function scandir(){
        for filename in `ls $1`
                do
                        if [ -d $1'/'$filename ] ; then
                                echo $1'/'$filename
                                scandir $1'/'$filename
                        else
                                echo $filename
                        fi
                done    
}
read file
scandir $file
shell bash判断文件或文件夹是否存在

#如果文件夹不存在,创建文件夹 if [ ! -d " /myfolder " ]; then mkdir / myfolder fi #shell判断文件,目录是否存在或者具有权限 folder= " /var/www/ " file= " /var/www/log " # - x 参数判断 $folder 是否存在并且是否具有可执行权限 if [ ! -x " $folder "]; then mkdir " $folder " fi # - d 参数判断 $folder 是否存在 if [ ! -d " $folder "]; then mkdir " $folder " fi # -f 参数判断 $ file 是否存在 if [ ! -f " $file " ]; then touch " $file " fi # - n 判断一个变量是否有值 if [ ! -n " $var " ]; then echo " $var is empty " exit 0 fi # 判断两个变量是否相等 if [ " $var1 " = " $var2 " ]; then echo ' $var1 eq $var2 ' else echo ' $var1 not eq $var2 ' fi
来源:http://www.cnblogs.com/emanlee/p/3583769.html
shell bash判断程序是否在运行
V1:

#!/bin/bash
ps_out=`ps -ef | grep $1 | grep -v 'grep' | grep -v $0`
result=$(echo $ps_out | grep "$1")
if [[ "$result" != "" ]];then
    echo "Running"
else
    echo "Not Running"
fi
$0 是命令本身 $1是第一个参数。-v 就是忽略到 -v后面含指定的内容行
V2:
processExist=`ps aux|grep processName|grep -v "grep" `
if [ -z $processExist ];then
    exec processName
else
    echo "process is running"
fi
if判断中的参数含义:
-z 是否为空
-d 是否为目录
类似这样的文件操作在shell编程中用处很大:我总结有一些一些经常使用
-d :判断制定的是否为目录
-z:判断制定的变量是否存在值
-f:判断制定的是否为文件
-L:判断制定的是否为符号链接
-r:判断制定的是否可读
-s:判断存在的对象长度是否为0
-w:判断制定的是否可写
-x:判断存在的对象是否可以执行
!:测试条件的否定符号
这些文件操作很多时候给脚本编程带来方便,尤其是用在if条件语句中
shell 查找并删除找到的文件/文件夹
删除指定目录下指定文件

find  要查找的目录名 -name .svn |xargs rm -rf

删除指定名称的文件或文件夹: find -type d | grep .svn$ | xargs rm -r

分析:

find -type d | grep .svn$ 通过此命令查找文件夹 过滤正则表达式中的目录

| xargs rm -r 执行删除指令

删除目录下所有exe文件

find  .  -name  '*.exe'  -type  f  -print  -exec  rm  -rf  {} ;
(1) "."    表示从当前目录开始递归查找

(2) “ -name '*.exe' "根据名称来查找,要查找所有以.exe结尾的文件夹或者文件

(3) " -type f "查找的类型为文件

(4) "-print" 输出查找的文件目录名

(5) 最主要的是是-exec了,-exec选项后边跟着一个所要执行的命令,表示将find出来的文件或目录执行该命令。

exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个,最后是一个分号

find语句,每天运行以删除某个目录下7天以前的文件或目录
/bin/find /enterprisedb_backup/postgresql/ -mtime +7 -exec /bin/rm -rf '{}' \;
以上命令可能报错No such file or directory,需改成如下:
/bin/find /enterprisedb_backup/postgresql/ -mtime +7 -maxdepth 1 -exec /bin/rm -rf {} \;
详细解释见:http://m.blog.csdn.net/article/details?id=32151167
  1. 通过以上操作我们可以看到,find命令不单查询了/enterprisedb_backup/postgresql/目录,并且遍历了所有子目录,而此时子目录已经随着上一步母文件夹的删除而删除,所以找不到了。

解决方案:

  1. 整理思路后,可以确认,如果find只找出所需操作目录的第1层文件及目录即可解决此问题
  2. 通过伟大的 man 命令我们得到以下信息
  3. 测试操作确认修改为: 这里意思是说:-mtime找到的信息可能会操过-maxdepth的范围,在find操作中建议-maxdepth放在所有其他参数的前面
shell 删除某个文件外的其他文件全部删除的命令

Linux反选删除文件

最简单的方法是

# shopt -s extglob      (打开extglob模式)
# rm -fr !(file1)

如果是多个要排除的,可以这样:

# rm -rf !(file1|file2) 

Linuxrm删除指定文件外的其他文件方法汇总

一、Linux下删除文件和文件夹常用命令如下: 删除文件: rm file
删除文件夹: rm -rf dir
需要注意的是, rmdir 只能够删除 空文件夹。 二、删除制定文件(夹)之外的所有文件呢?
1、方法1,比较麻烦的做法是:
复制需要保留的文件到其他文件夹,然后将该目录删除, 然后将需要保留的移动 回来。 mv keep ../ #保留文件(夹) keep
rm -rf * #删除当前文件夹里的所有文件 mv ../keep ./ #将原来的东西移动回来
2、方法2,需要在当前文件夹中进行:
rm -rf !(keep) #删除keep文件之外的所有文件
rm -rf !(keep1 | keep2) #删除keep1和keep2文件之外的所有文件
3、方法3,当前文件夹中结合使用grep和xargs来处理文件名: ls | grep -v keep | xargs rm #删除keep文件之外的所有文件
说明: ls先得到当前的所有文件和文件夹的名字, grep -v keep,进行grep正则匹配查找keep,-v参数决定了结果为匹配之外的结果,也就是的到了keep之外的所有文件名,然后 xargs用于从 标准输入获得参数 并且传递给后面的命令,这里使用的命令是 rm,然后由rm删除前面选择的文件。
好处:使用了grep来正则表达式来匹配文件名字,可以一次保留多个文件,从而进行更加准确的处理。
4、方法4,使用find命令代替ls,改进方法3从而能够处理制定文件夹的文件:
find ./test/ | grep -v keep | xargs rm #删除当前test文件夹中keep文件之外的所有文件
说明,用grep而不用find -name选取名字,因为find选取名字时比较麻烦,对正则表达式支持不够,无法排除指定文件名。
5、方法5,直接使用find命令删除其他文件:
find ./ -name '[^k][^e][^e][^p]*'  -exec rm -rf {} \; #删除keep以外的其他文件。 find ./ -name '[^k][^e][^e][^p]*'  | xargs rm -rf  #删除keep以外的其他文件。推荐!
说明:上面第二行的代码效率高些,原因在于删除多个文件时 -exec会启动多个进程来处理,而xargs会启动一个rm进程来处理。
关于find 执行命令的效率和借用xargs启动的命令效率的比较,详情请参考:http://www.linuxsir.org/main/?q=node/137
Linux文件查找命令find,xargs详述  http://www.linuxsir.org/main/?q=node/137 本文转载自:http://blog.sina.com.cn/s/blog_70ffb5c501011rrk.html

rm删除除去指定文件的剩余所有文件  (rm 反向删除)

zhou@zhou:~/LinuxC/file/test$ ls
1  23sdfwe 88888888  aabb ag   ghdda    mmm
2 3       aaaaaaaa abc  asdg  llllllll wwwww
zhou@zhou:~/LinuxC/file/test$
然后我想删除除了包含字符串aa外所有的文件,也就是想留下aabb,aaaaaaaa,这两个文件, 其他的全部删除
下面是我的命令:
zhou@zhou:~/LinuxC/file/test$ rm `ls | grep -v"aa"`
zhou@zhou:~/LinuxC/file/test$ ls
aaaaaaaa  aabb
zhou@zhou:~/LinuxC/file/test$
所以了,成功了。
简单的解释一下那条命令吧:rm 删除后面指定的文件
`ls | grep -v "aa" ` 记得外面是反引号( 反引号的位置就在标准键盘的数字1的左边)

ls:查看当前目录下所有的文件,使用grep命令过滤一下grep -v "aa" 就是找出字符串中不带“aa”的。
整体再顺一下:列出文件名不带“aa”串的文件,然后删除他们。OK。
其实说起来简单,当时我也做了好长时间,因为以前没怎么接触grep,因此一开始我想到的办法是使用 正则表 达式,但是在做的过程中突然发现了grep使个不错的东西,因此就使用了。
上面的命令使删除带有“aa”串的文件,那如果我只想留下文件aa呢?很简单
zhou@zhou:~/LinuxC/file/test$ rm `ls | grep -v"^aa$" ` 在aa前面加上^,后面加上$表示结束符的意思,这个就是完全匹配了。
好了,就这么多。但愿以后能用到这个有用的命令

转自:http://blog.sina.com.cn/s/blog_67e34ceb01014930.html

linux 删除其他文件

http://zhidao.baidu.com/link?url=uvHfrb3kSnM_8p5ILhZyc39U0h3md-Ncrm3iaygeYTLU-zjthNBlqO674VulVGTnPiNcl2nj7wo5vn08N4481_

求教 linux centos我想删除某目录中文件名不符合"*20100330*"这样规则的文件应该怎么删除?

假设目录名为myTest且为当前目录的下一级目录,使用如下命令即可:

cd ./myTest && rm `ls | grep -v '20100330'` && cd ..进入myTest目录,删除文件后返回当前目录。grep的-v参数表示反向选择。一般使用rm删除文件的时候会有确认提示,如果不要确认,直接强制删除,可以使用rm的-f参数。

其他1条回答

find ./ -type f \! -name "*20100330*" -exec rm -rf {} \;

如何反向选择文件并删除

http://bbs.csdn.net/topics/390077765

案例:一个文件夹下我想删除 除了abc文件 之外的所有文件,命令怎么写(linux下)

find . -maxdepth 1 -type f -not -name 'abc' -exec rm '{}' ';'

ls | grep -v abc | xargs -i rm -rf {}

rm -f `ls | grep -v abc`
如果文件很多的情况下,不要用这种方法……
要用2楼的方法……

mv abc /tmp
rm *
mv /tmp/abc .

反向显示文件

使用ls命令仅仅显示当前目录不包括.的文件.
ls加grep过滤的方式:ls -al | grep -v '\.'(ls --ignore=.* -al也可实现)。
在打开extglob模式下(缺省是打开的),ls也可以实现,而且更加灵活.
shopt -u extglob #关闭
shopt -s extglob #打开
ls -al !(*.*)
ls -al -d !(*.*)

删除文件时排除特定文件

删除当前目录下所有 *.txt文件,除了test.txt

1
2
3
4
5
6
7
8
rm ` ls *.txt| egrep - v test .txt`
#或者
rm ` ls *.txt| awk '{if($0 != "test.txt") print $0}' `
#排除多个文件
rm ` ls *.txt| egrep - v '(test.txt|fff.txt|ppp.txt)' `
rm -f ` ls *.log.1| egrep - v '(access-2010-09-06.log|error-2010-09-06.log)' `
rm -f ` ls *.log| egrep - v '(access-2010-09-06.log|error-2010-09-06.log)' `
rm -f ` ls *.log| egrep - v '(20100906.log)' `

注意:上面所用的符号是‘`’,而不是单引号

这里是用ls得到原始数据,也可以用find命令

rm `find . -name *.txt | egrep -v ‘(test.txt|fff.txt|ppp.txt)'`

==========================================

egrep是grep的扩展, egrep除了具备grep的基本功能外还可以使用附加的正则表示式元字符, 如

[a-z]+A

[a-z]?A

[a-z]|[a-z]

abc(d|e)

等, 另外egrep不允许使用\(\)和\{\}(摘自:http://www.pythontab.com/html/2013/linuxkaiyuan_0205/214.html)

《Shell while read命令完成用户的交互输入》

Shell while read命令完成用户的交互输入_Harvey-CSDN博客_shell while 输入

shell去除重复行

注:uniq只对相邻行做比较,所以要先sort先排序下以使重复行相邻,才能完成去重复

sort -n aa.txt | uniq   > bb.txt

grep -nR " handle_osd_ping"  ceph-osd.3.log|sort |uniq

对指定列去重复

Linux sort 排序命令&&uniq去重复;https://www.jianshu.com/p/c9f79d7caa66

sort -t $'\t' -k 3,3 -u filename #​-t 指定分隔符为‘\t’
sort -t ' ' -k 3,3 -u filename #​-t 指定分隔符为' '

sort -t ',' -k 1,1 -u

其中 -t 指定列之间的分隔符, -k 指定从第几列到第几列作为去重标准

linux sort 按列去重:https://blog.csdn.net/wqfhenanxc/article/details/81937584

shell按列排序

sort 排序命令
-t 指定分隔符
-k 指定第三列排序
-u 去重

sort的其他一些选项:
-r 降序排列

-n 看为数字来比较  (如果按字符比较10 比2小,因为第一个字符比2小)

列column对齐

可以将文本结果转换为整齐的表格,上下对齐

命令: Column

使用的参数:
-t :表格,默认以空格间隔
-s:需要配合-t使用,指定分隔符

实例:

未对齐:

[oracle@db ogg]$ (echo info all;echo exit)|./ggsci|grep -E "EXTRACT|REPLICAT" |awk 'BEGIN {FS=" +"} {print $3,$2,$4,$5}'

DP_XNJC RUNNING 00:00:00 00:00:04
XNJC RUNNING 00:00:00 00:00:07

对齐
[oracle@db ogg]$ (echo info all;echo exit)|./ggsci|grep -E "EXTRACT|REPLICAT" |awk 'BEGIN {FS=" +"} {print $3,$2,$4,$5}' |column -t

DP_XNJC   RUNNING  00:00:00  00:00:06
XNJC          RUNNING  00:00:00  00:00:09

shell 定义分隔符和遍历行字段|IFS

例如将IP 192.169.31.166转十六进制,IFS="."  以“.”为分隔符

ip_to_hex2.sh

function ip4_to_hex()
{

hexip=""
IFS="."  
num=0

for str in $1
do
ip[num]=${str}
((num++))
done

hexip=`printf "%x%x:%x%x" ${ip[0]} ${ip[1]} ${ip[2]} ${ip[3]}`

}

./ip_to_hex2.sh 192.169.31.166

shell 10进制转16进制

dec2hex(){printf "0x%x" $1
}a=$(dec2hex 2131165531)
echo $a

shell 加减乘除

#!/bin/bash
a=$1
b=$2
echo a+b=$(($a+$b))
echo a-b=$(($a-$b))
echo a*b=$(($a*$b))
echo a/b=$(($a/$b))
echo a%b=$(($a%$b))
echo a**b=$(($a**$b))上面优化版#!/bin/bash
echo $1=(($1))
echo $((3==4)) 不相等结果为0 相等结果为1
#/bin/basha=1
while [ $a -le 100 ] #((a<=100))dolet sum=sum+a #((sum+=a))let a++             #((a++))
done
echo $sum

浮点数

shell计算中使用除法,基本默认上都是整除。
比如:
num1=2
num2=3
num3=`expr $num1 / $num2`
这个时候num3=0 ,是因为是因为expr不支持浮点除法
解决的方法:
num3=`echo "sclae=2; $num1/$num2" | bc`
使用bc工具,sclae控制小数点后保留几位
还有一种方法
awk 'BEGIN{printf "%.2f\n",’$num1‘/’$num2‘}'
如果用百分比表示
awk 'BEGIN{printf "%.2f%\n",(’$num1‘/’$num2‘)*100}'

shell 数组

Shell 数组 | 菜鸟教程

显示历史命令和时间history

history 显示历史命令

让 history 命令显示日期和时间

echo 'HISTTIMEFORMAT="%F %T "' >> /etc/profile

source /etc/profile

【shell】笔记|去重复行|删除匹配行|反选删除|反向显示|加减乘除相关推荐

  1. sed删除匹配行的上一行和下一行

    1.删除匹配行的上一行和下一行: sed -i -e '/string/{n;d}' -e '$!N;/\n.*string/!P;D' file 2.sed中使用变量,删除匹配行的上一行和下一行: ...

  2. 使用sed删除匹配行的上一行和下一行

    1.删除匹配行的上一行和下一行: sed -i -e '/string/{n;d}' -e '$!N;/\n.*string/!P;D' file 2.sed中使用变量,删除匹配行的上一行和下一行: ...

  3. sed 删除匹配行的前后行

    2019独角兽企业重金招聘Python工程师标准>>> 删除匹配行的前后行 删除匹配行的下一行 sed -ne 'p;/niyaopipeideneirong/n' nidewenj ...

  4. linux 命令sed命令指定行或匹配行插入行

    sed -i "231s:.*:hello:g" file #将第231行的所有字符替换为hellosed -i '$d' file #将文件file的最后一行删除sed -i & ...

  5. Sed 删除匹配行,匹配的字符用Shell变量替换,且变量里含有斜杠“/”时,无法删除 解决办法

    原文链接: https://zhidao.baidu.com/question/2138070399877009148.html 修改语法,用#代替",这个只能用在sed的s替换命令中,如: ...

  6. sed打印、删除匹配行

    删除以a开头的行 sed -i '/^a.*/d' tmp.txt 反向删除: sed -i '/green/!d' colors 删除不包含green的行. 多pattern或匹配: sed '/o ...

  7. sed常见用法,删除匹配行的上2行,下3行

    删除匹配的下一行到最后一行 [root@test200 ~]# cat test a b c d e f [root@test200 ~]# sed '/c/{p;:a;N;$!ba;d}' test ...

  8. linux bash shell sed 删除匹配行

    [yeqiang@harbor tmp]$ cat a.txt aaa bbb ccc [yeqiang@harbor tmp]$ sed -i '/aaa/d' a.txt [yeqiang@har ...

  9. sed 删除匹配行的指定字符串

    这里以nginx配置文件为例,修改日志格式. log_format main '$remote_addr - $remote_user [$time_local] "$request&quo ...

最新文章

  1. python vs javascript_Python“是”vs JavaScript===
  2. python pip安装提示Consider using the `--user` option or check the permissions.
  3. vscode设置成中文完整步骤
  4. matlab raw函数,用matlab处理Raw格式的图像文件的方法
  5. POJ 1562深搜判断连体油田个数
  6. InputStreamReader和 OutputStreamWriter
  7. 数据结构之队列的定义与简单实现
  8. 朴素贝叶斯常见面试题
  9. 全网首发:使用命令行编译VS工程为Win32/x64
  10. 全面剖析《自己动手写操作系统》第五章---makefile文件
  11. 核磁共振成像基本原理——杨正汉(1)
  12. 如何禁止Chrome浏览器版本自动更新的方法
  13. jQuery手动触发事件
  14. css linux 等宽字体,css 等宽字体有哪些
  15. 关于IE上embed自动播放
  16. 免杀横向移动工具WMIHACKER
  17. ubuntu安装以太方mist
  18. Python数据分析入门书籍推荐!!!强烈推荐,新手必看
  19. NOIP2016——蚯蚓
  20. 那些好用的iOS开发工具

热门文章

  1. 用Python 做成语接龙,超简单,有语音,过年和孩子玩
  2. 槐香拂过,你如期而至
  3. 元宇宙是什么?解密扎克伯格的“元宇宙梦”
  4. 解决使用layui上传文件时提示“请求上传接口出现异常”
  5. 技术宅记录下看过的番
  6. 为什么要找一个不提倡加班的工作?是我我们太懒,不求上进吗?
  7. sqlserver 人名_SQLserver运维必备:T-SQL语句练习
  8. java阿拉伯转大写_java 中大写数字与阿拉伯数之间的相互转换 | 学步园
  9. 为什么量化交易中盈利的稳定性比利润率重要
  10. MT4客户端通讯分析(一)——登录部分分析