echo ${path##/*:}
删掉path中/*:最远的部分 ;
类似的是echo ${path#/*:} 删掉最近的部分
# 符合取代文字最短的那一个;
##符合取代文字最长的那一个
echo ${path%:*bin}
从后往前删除
从 : 到 bin 的字符
echo ${path%%:*bin}
最长的从 : 到 bin的字符
sudo vi /etc/motd
修改ssh登录时显示的字符
motd是message of the day的缩写,意思是“当天的提示信息”,
通常在用户成功登录到Linux后出现,该信息可以从/etc/motd文本文件中找到。
ls -d ???
有几个?就代表查找有几个字母的数据
ls ./*[0-9]*
找出当前目录下包含数字的文件名
ls ./[^a-z]*
找出当前目录下档名为非小写字母开头的文件名
重定向
在linux命令行中,重定向使用>和>>来表示。
>将命令输出重定向到文件,替换该文件上的所有现有内容。
>>重定向将命令输出添加到文件现有内容(如果有)的末尾
prctl()
该函数的功能网上资料很多,不过多介绍,只说一下用这个函数困扰我一两周的bug。
prctl(PR_SET_NAME,"EcatReadAllAxisPDO");
我主要用于打印线程的名字,方便在top中查看线程的占用率,
然后一个新项目,我将所有的函数接口第一行都放了这个prctl,然后用在ECAT上,
导致整个主从站一直运行不稳定,各种找不到原因。
最终一点一点摸索,回到各种初始化demo中,各种屏蔽函数,最后发现是这个
地方出现了问题,运行PDO的回调函数用了这个prctl,导致非常快速地调用prctl这个函数
,最终出现各种奇葩的错误。
这也给了我一个警醒:不要乱加各种东西到函数中!!!