最近老是需要在linux做一些文本处理类工作,发现之前的命令都忘得差不多了。
博闻强识,还是记录下,方便以后查阅。
提取文件某些列
用cut:1
cut -d' ' -f2-26 det.result #提取文件中的第2列到第26列,文件分隔符为空格
提取文件某些行
用head+tail配合(貌似用sed也可以,目前用不习惯)1
head -n100 [filename] | tail -n50 #提取文件第51行到第100行
转换图片的颜色空间
问题场景是用matlab的imread读取Imagenet的图片时候出现这个问题:1
JPEG images with CMYK colorspace are not currently supported.
最后也没有找到在matlab中转换的函数,于是还是从外部解决吧,用convert命令可以转换图片的颜色空间:1
convert ***.jpg -colorspace RGB ***.jpg
批量对图片进行缩放,翻转等操作
用的是imagemagick这个工具,apt-get后,用convert命令即可。(上面那个转换图片颜色空间的也是用这个命令)
比如,将目录下的所有jpg图片水平翻转,可以用:1
2
3for img in `ls *.jpg`;do
convert -flop $img $img
done
小作记录:
- 缩放用类似
-resize 227x227
- 水平翻转
-flop
垂直翻转-flip
- 更多功能参考:http://www.imagemagick.org/script/convert.php
修改分区的卷标名字
对于ext分区,用:1
e2label /dev/sd** [new name]
对于NTFS分区,用:1
ntfslabel /dev/sd** [new name]
解决类似:xxx.so: cannot open shared object file: No such file or directory
so是linux的动态库,首先确认机器有没有这个动态库:1
locate xxx.so
如果没有找到,那么搜索一下怎么获得这个动态库,一般都是用类似apt-get install libxxx类似的就能够下载到对应的库。
如果是有xxx.so,但是版本不对(比如要求xxx.so.4,但是机器上只有xxx.so.5),那么建立个软链接:1
ln -s [path to xxx.so.5] [path to xxx.so.4]
最后如果还是链接不上,设置LD_LIBRARY_PATH,具体操作:
vim ~/.bash.rc
或者gedit ~/.bashrc
- 在bashrc添加
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:[the path to xxx.so]
- 保存修改之后,
sudo ldconfig
- 关闭terminal后重新开启,
echo $LD_LIBRARY_PATH
,确认刚才的修改生效
用find搜索某目录下的文件
比如要删除所有svn文件夹,那么用:1
find . -type d -name ".svn"|xargs rm -rf
安装网卡驱动
问题场景是更换了主板,然后上不了网了。查阅后知道需要重装网卡驱动。
参考了,http://blog.sina.com.cn/s/blog_c0468c8f0101ld2x.html
大致过程是:
lspci
查到自己的网卡是 intel i217-v rev 05- 然后搜索,发现还是应该用e1000e驱动。
- 去上文作者提供的网址下载驱动
安装驱动,流程跟上文基本一致:
1
2
3
4
5tar -xvf e1000e-1.6.2.tar.gz # 解压 (唯一不同是我下载的驱动版本比较新,已经是ver4了)
cd e1000e-1.6.2/src/ # 找到程序所在目录
sudo make install # 安装
sudo modprobe e1000e # 载入
sudo dhclient eth0 # dhclient 是直接控制 eth 来进行网络操作自动获取 IP(这一步没有做,因为实验室用的是固定IP)由于之前的网卡驱动没有删除,所以这里显示是eth2。貌似看过如何去卸载原来的驱动,让新驱动从eth0开始,但目前没有必要,暂时跳过。
命令下下发送邮件
安装和配置看这里:http://zhanxw.com/blog/2011/03/%E5%9C%A8%E5%91%BD%E4%BB%A4%E8%A1%8C%E9%87%8C%E5%8F%91%E9%82%AE%E4%BB%B6ubuntu/
之后发邮件的格式很简单:echo content|mail -s title xxx@xxx.com
在ubuntu下用360wifi当无线网卡
参考这个帖子即可:http://www.freemindworld.com/blog/2013/131010_360_wifi_in_linux.shtml