@CrazyHenry
2018-05-19T11:27:46.000000Z
字数 2106
阅读 1899
xxxxLinux命令行
- Author:李英民 | Henry
- E-mail: li
_yingmin@outlookdotcom- Home: https://liyingmin.wixsite.com/henry
快速了解我: About Me
转载请保留上述引用内容,谢谢配合!
mkdir 目录名 #创建目录rm -rf file/目录 #-r递归,-f强制rm *log #删除日志,日志都是以log结尾find ./ -name "*log" -exec rm {} \; #与上条等价,注意\和;都不能省略mv file1 fileb #将file1改名为filebmv file1 folder/ #移动到某个foldermv folder1 folder2/ #y移动目录到某个目录下cp 1.cpp 2.cpp #将1.cpp 备份一份叫2.cppcp -r folder folder.back #备份folder为folder.back
find ./ | wc -l #递归搜索当前目录下的文件个数
切换到上一个工作目录: cd -
ls -lrt #按时间排序,以列表的方式显示目录项ls -al #-a表示显示隐藏文件ls | cat -n #每项文件前面增加一个id编号(看上去更加整洁)ls -lh #以human可读的方式显示
alias lsl='ls -lrt' #在.bashrc 中设置命令别名
find ./ -name "*cpp" | xargs file
上述命令会在当前目录下递归搜索*cpp文件,并描述文件的所属类型。

find ./ -name "*.o" #检查目标文件夹是否有 .o文件

find ./ -name "*.o" -exec rm {} \; #检查到.o文件,然后删除
locate是一种通过一个locatedb来静态查找的命令,与find不同,find是一种动态查找的指令,而locate是一种静态查找。
查找系统中某个文件:locate libopenblas

因为整个系统是静态的,所以每次安装了新的软件都要更新才能查找到:
sudo updatedb
cat -n #显示行号cat -n 1.cpp #看1.cpp文件ls -lrth | cat -n

与cat指令不同,more指令会逐页显示一个文件的内容
more 1.cpp# 按空格下一页# 按b上一页ls -lrth | more
head -10 1.cpp #只看前10行head -1 1.cpp #只看前1行tail -10 1.cpp #只看尾10行diff file1 file2 #显示两个文件的区别
egrep 'Hello' 1.cpp #在文件1.cpp里查找 “Hello”egrep 'Hello' 1.cpp > hello.out

chmod -R u+x ./ #给当前目录下的所有文件增加 user级用户的执行权限chmod a+x 1.cpp #给1.cpp文件增加 所有用户增加执行权限
ln -s 1.cpp 2.cpp #给1.cpp创建一个软连接,使用2.cpp就相当于使用1.cpp了!删除源,另一个无法使用。不要给软连接再创建软连接。

ls -lrth && echo suss || echo failed #echo就是输出 ,cat相当于读入后输出

ls -lrth > out.cc #内容重定向到out.cc文件

:> out.cc #清空out.cc文件

echo aa >> a.txt #echo的重定向

启动帐号后自动执行的是 文件为 .profile,然后通过这个文件可设置自己的环境变量;
环境变量的运行机制还不是很懂,echo $PATH可以输出环境变量。 $xxxx就是一些路径的集合,以:分割。
echo 'export PATH="/usr/local/cuda-8.0/bin:$PATH"' >> ~/.bashrcecho 'export LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH"' >> ~/.bashrcecho 'export LIBRARY_PATH="/usr/local/cuda-8.0/lib64:$LIBRARY_PATH"' >> ~/.bashrcsource ~/.bashrcPATH=$APPDIR:/opt/app/soft/bin:$PATH:/usr/local/bin:$TUXDIR/bin:$ORACLE_HOME/bin;export PATH

Ctl-U 删除光标到行首的所有字符,在某些设置下,删除全行Ctl-K 删除光标到行尾的字符Ctl-W 删除当前光标到前边的最近一个空格之间的字符Ctl-R 匹配指令,找到最近的指令!!!!ctr+a:移动光标到命令行开始处(紧接命令提示符号)ctr+e:移动光标到命令行行尾alt+f: 往右跳一个词alt+b: 往左跳一个词
cat -v 1.cpp | grep Hello | grep -v BBB | wc -l#查找1.cpp中包含Hello,但不包含BBB的记录的总数
